From 1b0cf14ef7522c4bd122a081b7f9f5f5b69276df Mon Sep 17 00:00:00 2001 From: Marius Stanciu Date: Sat, 15 Jun 2019 17:20:38 +0300 Subject: [PATCH 01/15] - fixed bug in Gerber parser that made the Gerber files generated by Altium Designer 18 not to be loaded --- FlatCAMApp.py | 4 ++-- README.md | 4 ++++ camlib.py | 3 +-- flatcamGUI/GUIElements.py | 10 +++++----- 4 files changed, 12 insertions(+), 9 deletions(-) diff --git a/FlatCAMApp.py b/FlatCAMApp.py index 6849e678..07d37350 100644 --- a/FlatCAMApp.py +++ b/FlatCAMApp.py @@ -94,8 +94,8 @@ class App(QtCore.QObject): log.addHandler(handler) # Version - version = 8.918 - version_date = "2019/06/11" + version = 8.919 + version_date = "2019/06/21" beta = True # current date now diff --git a/README.md b/README.md index 2d4940f3..e465a555 100644 --- a/README.md +++ b/README.md @@ -9,6 +9,10 @@ CAD program, and create G-Code for Isolation routing. ================================================= +15.06.2019 + +- fixed bug in Gerber parser that made the Gerber files generated by Altium Designer 18 not to be loaded + 11.06.2019 - fixed the Edit -> Conversion -> Join ... functions (merge() functions) diff --git a/camlib.py b/camlib.py index 33c80b7d..957aee0e 100644 --- a/camlib.py +++ b/camlib.py @@ -2452,7 +2452,6 @@ class Gerber (Geometry): # --- Buffered --- try: log.debug("Bare op-code %d." % current_operation_code) - geo_dict = dict() flash = self.create_flash_geometry( Point(current_x, current_y), self.apertures[current_aperture], @@ -2467,7 +2466,7 @@ class Gerber (Geometry): else: geo_dict['solid'] = flash - if last_path_aperture not in self.apertures: + if current_aperture not in self.apertures: self.apertures[current_aperture] = dict() if 'geometry' not in self.apertures[current_aperture]: self.apertures[current_aperture]['geometry'] = [] diff --git a/flatcamGUI/GUIElements.py b/flatcamGUI/GUIElements.py index 89a24ace..780c165d 100644 --- a/flatcamGUI/GUIElements.py +++ b/flatcamGUI/GUIElements.py @@ -1059,7 +1059,6 @@ class FCDetachableTab(QtWidgets.QTabWidget): # Re-attach the tab at the given index self.attachTab(contentWidget, name, icon, index) - # If the drop did not occur on an existing tab, determine if the drop # occurred in the tab bar area (the area to the side of the QTabBar) else: @@ -1227,14 +1226,17 @@ class FCDetachableTab(QtWidgets.QTabWidget): :return: """ # Determine if the current movement is detected as a drag - if not self.dragStartPos.isNull() and ((event.pos() - self.dragStartPos).manhattanLength() < QtWidgets.QApplication.startDragDistance()): + if not self.dragStartPos.isNull() and \ + ((event.pos() - self.dragStartPos).manhattanLength() < QtWidgets.QApplication.startDragDistance()): self.dragInitiated = True # If the current movement is a drag initiated by the left button if (((event.buttons() & QtCore.Qt.LeftButton)) and self.dragInitiated): # Stop the move event - finishMoveEvent = QtGui.QMouseEvent(QtCore.QEvent.MouseMove, event.pos(), QtCore.Qt.NoButton, QtCore.Qt.NoButton, QtCore.Qt.NoModifier) + finishMoveEvent = QtGui.QMouseEvent( + QtCore.QEvent.MouseMove, event.pos(), QtCore.Qt.NoButton, QtCore.Qt.NoButton, QtCore.Qt.NoModifier + ) QtWidgets.QTabBar.mouseMoveEvent(self, finishMoveEvent) # Convert the move event into a drag @@ -1261,13 +1263,11 @@ class FCDetachableTab(QtWidgets.QTabWidget): # Initiate the drag dropAction = drag.exec_(QtCore.Qt.MoveAction | QtCore.Qt.CopyAction) - # For Linux: Here, drag.exec_() will not return MoveAction on Linux. So it # must be set manually if self.dragDropedPos.x() != 0 and self.dragDropedPos.y() != 0: dropAction = QtCore.Qt.MoveAction - # If the drag completed outside of the tab bar, detach the tab and move # the content to the current cursor position if dropAction == QtCore.Qt.IgnoreAction: From f5cc8d773f06829dc88e0c5bb56ace3f185dcf2b Mon Sep 17 00:00:00 2001 From: Marius Stanciu Date: Sat, 15 Jun 2019 20:22:17 +0300 Subject: [PATCH 02/15] - fixed bug in Gerber editor - on multiple edits on the same object, the aperture size and dims were continuously multiplied due of the file units not being updated --- README.md | 1 + flatcamEditors/FlatCAMGrbEditor.py | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index e465a555..3f980808 100644 --- a/README.md +++ b/README.md @@ -12,6 +12,7 @@ CAD program, and create G-Code for Isolation routing. 15.06.2019 - fixed bug in Gerber parser that made the Gerber files generated by Altium Designer 18 not to be loaded +- fixed bug in Gerber editor - on multiple edits on the same object, the aperture size and dims were continuously multiplied due of the file units not being updated 11.06.2019 diff --git a/flatcamEditors/FlatCAMGrbEditor.py b/flatcamEditors/FlatCAMGrbEditor.py index 53f454e8..5d4e6615 100644 --- a/flatcamEditors/FlatCAMGrbEditor.py +++ b/flatcamEditors/FlatCAMGrbEditor.py @@ -3445,7 +3445,6 @@ class FlatCAMGrbEditor(QtCore.QObject): file_units = self.gerber_obj.gerber_units if self.gerber_obj.gerber_units else 'IN' app_units = self.app.defaults['units'] - self.conversion_factor = 25.4 if file_units == 'IN' else (1 / 25.4) if file_units != app_units else 1 # Hide original geometry @@ -3478,6 +3477,7 @@ class FlatCAMGrbEditor(QtCore.QObject): conv_apertures[apid][key] = self.gerber_obj.apertures[apid][key] self.gerber_obj.apertures = conv_apertures + self.gerber_obj.gerber_units = app_units # ############################################################# ## # APPLY CLEAR_GEOMETRY on the SOLID_GEOMETRY @@ -3575,7 +3575,6 @@ class FlatCAMGrbEditor(QtCore.QObject): :return: None """ - new_grb_name = self.edited_obj_name # if the 'delayed plot' malfunctioned stop the QTimer @@ -3710,6 +3709,7 @@ class FlatCAMGrbEditor(QtCore.QObject): grb_obj.source_file = [] grb_obj.multigeo = False grb_obj.follow = False + grb_obj.gerber_units = app_obj.defaults['units'] try: grb_obj.create_geometry() From 0244c76605ce2d50ece9170f7d344cdae945718b Mon Sep 17 00:00:00 2001 From: Marius Stanciu Date: Sun, 16 Jun 2019 02:34:41 +0300 Subject: [PATCH 03/15] - restored the FlatCAMObj.visible() to a non-threaded default --- FlatCAMApp.py | 5 ++++- FlatCAMObj.py | 8 ++++++-- README.md | 1 + camlib.py | 10 +++++++--- 4 files changed, 18 insertions(+), 6 deletions(-) diff --git a/FlatCAMApp.py b/FlatCAMApp.py index 07d37350..f85ef465 100644 --- a/FlatCAMApp.py +++ b/FlatCAMApp.py @@ -8252,7 +8252,10 @@ The normal flow when working in FlatCAM is the following:

""" FlatCAMObj.app = self ObjectCollection.app = self - + Gerber.app = self + Excellon.app = self + Geometry.app = self + CNCjob.app = self FCProcess.app = self FCProcessContainer.app = self diff --git a/FlatCAMObj.py b/FlatCAMObj.py index 4b3a278e..3f0ebf9f 100644 --- a/FlatCAMObj.py +++ b/FlatCAMObj.py @@ -199,6 +199,7 @@ class FlatCAMObj(QtCore.QObject): log.debug("on_name_activate() --> Could not remove the old object name from auto-completer model list") self.options["name"] = self.ui.name_entry.get_value() + self.app.collection.update_view() self.app.inform.emit(_("[success] Name changed from {old} to {new}").format(old=old_name, new=new_name)) def on_offset_button_click(self): @@ -338,7 +339,7 @@ class FlatCAMObj(QtCore.QObject): return self.shapes.visible @visible.setter - def visible(self, value): + def visible(self, value, threaded=False): log.debug("FlatCAMObj.visible()") def worker_task(app_obj): @@ -350,7 +351,10 @@ class FlatCAMObj(QtCore.QObject): except Exception as e: pass - self.app.worker_task.emit({'fcn': worker_task, 'params': [self]}) + if threaded is False: + worker_task(self) + else: + self.app.worker_task.emit({'fcn': worker_task, 'params': [self]}) @property def drawing_tolerance(self): diff --git a/README.md b/README.md index 3f980808..4576fc2f 100644 --- a/README.md +++ b/README.md @@ -13,6 +13,7 @@ CAD program, and create G-Code for Isolation routing. - fixed bug in Gerber parser that made the Gerber files generated by Altium Designer 18 not to be loaded - fixed bug in Gerber editor - on multiple edits on the same object, the aperture size and dims were continuously multiplied due of the file units not being updated +- restored the FlatCAMObj.visible() to a non-threaded default 11.06.2019 diff --git a/camlib.py b/camlib.py index 957aee0e..698f2da8 100644 --- a/camlib.py +++ b/camlib.py @@ -112,9 +112,9 @@ class Geometry(object): self.geo_steps_per_circle = geo_steps_per_circle - if geo_steps_per_circle is None: - geo_steps_per_circle = int(Geometry.defaults["geo_steps_per_circle"]) - self.geo_steps_per_circle = geo_steps_per_circle + # if geo_steps_per_circle is None: + # geo_steps_per_circle = int(Geometry.defaults["geo_steps_per_circle"]) + # self.geo_steps_per_circle = geo_steps_per_circle def make_index(self): self.flatten() @@ -1849,6 +1849,8 @@ class ApertureMacro: class Gerber (Geometry): """ + Here it is done all the Gerber parsing. + **ATTRIBUTES** * ``apertures`` (dict): The keys are names/identifiers of each aperture. @@ -3597,6 +3599,8 @@ class Gerber (Geometry): class Excellon(Geometry): """ + Here it is done all the Excellon parsing. + *ATTRIBUTES* * ``tools`` (dict): The key is the tool name and the value is From ffa92524f02bb75ede3f8d61e33b4603acb567ec Mon Sep 17 00:00:00 2001 From: Marius Stanciu Date: Mon, 17 Jun 2019 17:01:27 +0300 Subject: [PATCH 04/15] - fixed bug where for Geometry objects after a successful object rename done in the Object collection view (Project tab), deselect the object and reselect it and then in the Selected tab the name is not the new one but the old one - for Geometry objects, adding a new tool to the Tools table after a successful rename will now store the new name in the tool data --- FlatCAMApp.py | 1 + FlatCAMObj.py | 51 ++++++++++++++++++++++++--------------------- ObjectCollection.py | 8 +++---- README.md | 5 +++++ 4 files changed, 37 insertions(+), 28 deletions(-) diff --git a/FlatCAMApp.py b/FlatCAMApp.py index f85ef465..71d91468 100644 --- a/FlatCAMApp.py +++ b/FlatCAMApp.py @@ -5249,6 +5249,7 @@ class App(QtCore.QObject): if index.isValid(): if index.internalPointer().parent_item != self.collection.root_item: self.ui.notebook.setCurrentWidget(self.ui.selected_tab) + self.collection.on_item_activated(index) def grid_status(self): if self.ui.grid_snap_btn.isChecked(): diff --git a/FlatCAMObj.py b/FlatCAMObj.py index 3f0ebf9f..2291e951 100644 --- a/FlatCAMObj.py +++ b/FlatCAMObj.py @@ -68,6 +68,9 @@ class FlatCAMObj(QtCore.QObject): self.form_fields = {} + # store here the default data for Geometry Data + self.default_data = {} + self.kind = None # Override with proper name # self.shapes = ShapeCollection(parent=self.app.plotcanvas.vispy_canvas.view.scene) @@ -137,7 +140,7 @@ class FlatCAMObj(QtCore.QObject): if key == 'plot': self.visible = self.options['plot'] - # self.optionChanged.emit(key) + self.optionChanged.emit(key) def set_ui(self, ui): self.ui = ui @@ -199,6 +202,7 @@ class FlatCAMObj(QtCore.QObject): log.debug("on_name_activate() --> Could not remove the old object name from auto-completer model list") self.options["name"] = self.ui.name_entry.get_value() + self.default_data["name"] = self.ui.name_entry.get_value() self.app.collection.update_view() self.app.inform.emit(_("[success] Name changed from {old} to {new}").format(old=old_name, new=new_name)) @@ -1938,10 +1942,6 @@ class FlatCAMExcellon(FlatCAMObj, Excellon): self.ui.tools_table.setColumnWidth(5, 17) # horizontal_header.setStretchLastSection(True) - - - - # horizontal_header.setColumnWidth(2, QtWidgets.QHeaderView.ResizeToContents) # horizontal_header.setStretchLastSection(True) @@ -3002,9 +3002,6 @@ class FlatCAMGeometry(FlatCAMObj, Geometry): self.old_pp_state = '' self.old_toolchangeg_state = '' - # store here the default data for Geometry Data - self.default_data = {} - # Attributes to be included in serialization # Always append to it because it carries contents # from predecessors. @@ -3013,7 +3010,6 @@ class FlatCAMGeometry(FlatCAMObj, Geometry): def build_ui(self): self.ui_disconnect() - FlatCAMObj.build_ui(self) offset = 0 @@ -3151,6 +3147,10 @@ class FlatCAMGeometry(FlatCAMObj, Geometry): self.set_tool_offset_visibility(selected_row) self.ui_connect() + # HACK: for whatever reasons the name in Selected tab is reverted to the original one after a successful rename + # done in the collection view but only for Geometry objects. Perhaps some references remains. Should be fixed. + self.ui.name_entry.set_value(self.options['name']) + def set_ui(self, ui): FlatCAMObj.set_ui(self, ui) @@ -3225,7 +3225,7 @@ class FlatCAMGeometry(FlatCAMObj, Geometry): for def_key in self.default_data: for opt_key, opt_val in self.options.items(): if def_key == opt_key: - self.default_data[def_key] = opt_val + self.default_data[def_key] = deepcopy(opt_val) self.tooluid += 1 if not self.tools: @@ -3325,10 +3325,11 @@ class FlatCAMGeometry(FlatCAMObj, Geometry): return def on_offset_value_edited(self): - ''' - This will save the offset_value into self.tools storage whenever the oofset value is edited + """ + This will save the offset_value into self.tools storage whenever the offset value is edited :return: - ''' + """ + for current_row in self.ui.geo_tools_table.selectedItems(): # sometime the header get selected and it has row number -1 # we don't want to do anything with the header :) @@ -3371,7 +3372,7 @@ class FlatCAMGeometry(FlatCAMObj, Geometry): # works for Entry try: self.ui.grid3.itemAt(i).widget().editingFinished.connect(self.gui_form_to_storage) - except: + except Exception as e3: pass for row in range(self.ui.geo_tools_table.rowCount()): @@ -3409,56 +3410,56 @@ class FlatCAMGeometry(FlatCAMObj, Geometry): isinstance(self.ui.grid3.itemAt(i).widget(), IntEntry) or \ isinstance(self.ui.grid3.itemAt(i).widget(), FCEntry): self.ui.grid3.itemAt(i).widget().editingFinished.disconnect() - except: + except Exception as e: pass try: for row in range(self.ui.geo_tools_table.rowCount()): for col in [2, 3, 4]: self.ui.geo_tools_table.cellWidget(row, col).currentIndexChanged.disconnect() - except: + except Exception as e: pass # I use lambda's because the connected functions have parameters that could be used in certain scenarios try: self.ui.addtool_btn.clicked.disconnect() - except: + except Exception as e: pass try: self.ui.copytool_btn.clicked.disconnect() - except: + except Exception as e: pass try: self.ui.deltool_btn.clicked.disconnect() - except: + except Exception as e: pass try: self.ui.geo_tools_table.currentItemChanged.disconnect() - except: + except Exception as e: pass try: self.ui.geo_tools_table.itemChanged.disconnect() - except: + except Exception as e: pass try: self.ui.tool_offset_entry.editingFinished.disconnect() - except: + except Exception as e: pass for row in range(self.ui.geo_tools_table.rowCount()): try: self.ui.geo_tools_table.cellWidget(row, 6).clicked.disconnect() - except: + except Exception as e: pass try: self.ui.plot_cb.stateChanged.disconnect() - except: + except Exception as e: pass def on_tool_add(self, dia=None): @@ -3545,6 +3546,8 @@ class FlatCAMGeometry(FlatCAMObj, Geometry): } }) + self.tools[self.tooluid]['data']['name'] = self.options['name'] + self.ui.tool_offset_entry.hide() self.ui.tool_offset_lbl.hide() diff --git a/ObjectCollection.py b/ObjectCollection.py index 9e23279d..fddc19a4 100644 --- a/ObjectCollection.py +++ b/ObjectCollection.py @@ -263,10 +263,9 @@ class ObjectCollection(QtCore.QAbstractItemModel): # ## GUI Events self.view.selectionModel().selectionChanged.connect(self.on_list_selection_change) - self.view.activated.connect(self.on_item_activated) - # self.view.keyPressed.connect(self.on_key) + # self.view.activated.connect(self.on_item_activated) self.view.keyPressed.connect(self.app.ui.keyPressEvent) - self.view.clicked.connect(self.on_mouse_down) + # self.view.clicked.connect(self.on_mouse_down) self.view.customContextMenuRequested.connect(self.on_menu_request) self.click_modifier = None @@ -398,8 +397,9 @@ class ObjectCollection(QtCore.QAbstractItemModel): def setData(self, index, data, role=None): if index.isValid(): obj = index.internalPointer().obj + if obj: - old_name = obj.options['name'] + old_name = deepcopy(obj.options['name']) new_name = str(data) if old_name != new_name and new_name != '': # rename the object diff --git a/README.md b/README.md index 4576fc2f..3c1b5141 100644 --- a/README.md +++ b/README.md @@ -9,6 +9,11 @@ CAD program, and create G-Code for Isolation routing. ================================================= +17.06.2019 + +- fixed bug where for Geometry objects after a successful object rename done in the Object collection view (Project tab), deselect the object and reselect it and then in the Selected tab the name is not the new one but the old one +- for Geometry objects, adding a new tool to the Tools table after a successful rename will now store the new name in the tool data + 15.06.2019 - fixed bug in Gerber parser that made the Gerber files generated by Altium Designer 18 not to be loaded From fe3acc93f43f7345f55f9d588f59c01a7e393341 Mon Sep 17 00:00:00 2001 From: Marius Stanciu Date: Wed, 19 Jun 2019 11:55:45 +0300 Subject: [PATCH 05/15] - milling an Excellon file (holes and/or slots) will now transfer the chosen milling bit diameter to the resulting Geometry object --- FlatCAMObj.py | 2 ++ README.md | 4 ++++ 2 files changed, 6 insertions(+) diff --git a/FlatCAMObj.py b/FlatCAMObj.py index 2291e951..9ad52429 100644 --- a/FlatCAMObj.py +++ b/FlatCAMObj.py @@ -2353,6 +2353,7 @@ class FlatCAMExcellon(FlatCAMObj, Excellon): geo_obj.options['Tools_in_use'] = tool_table_items geo_obj.options['type'] = 'Excellon Geometry' + geo_obj.options["cnctooldia"] = float(tooldia) geo_obj.solid_geometry = [] @@ -2447,6 +2448,7 @@ class FlatCAMExcellon(FlatCAMObj, Excellon): geo_obj.options['Tools_in_use'] = tool_table_items geo_obj.options['type'] = 'Excellon Geometry' + geo_obj.options["cnctooldia"] = float(tooldia) geo_obj.solid_geometry = [] diff --git a/README.md b/README.md index 3c1b5141..b1953abc 100644 --- a/README.md +++ b/README.md @@ -9,6 +9,10 @@ CAD program, and create G-Code for Isolation routing. ================================================= +19.06.2019 + +- milling an Excellon file (holes and/or slots) will now transfer the chosen milling bit diameter to the resulting Geometry object + 17.06.2019 - fixed bug where for Geometry objects after a successful object rename done in the Object collection view (Project tab), deselect the object and reselect it and then in the Selected tab the name is not the new one but the old one From 8091355915dd3f433f351ae93491bc1ef7ff9623 Mon Sep 17 00:00:00 2001 From: Marius Stanciu Date: Thu, 20 Jun 2019 16:51:18 +0300 Subject: [PATCH 06/15] - working in fixing a bug in FlatCAMGrbEditor() --- flatcamEditors/FlatCAMGrbEditor.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/flatcamEditors/FlatCAMGrbEditor.py b/flatcamEditors/FlatCAMGrbEditor.py index 5d4e6615..cfe66bcd 100644 --- a/flatcamEditors/FlatCAMGrbEditor.py +++ b/flatcamEditors/FlatCAMGrbEditor.py @@ -4435,9 +4435,10 @@ class FlatCAMGrbEditor(QtCore.QObject): temp_storage = deepcopy(buffer_recursion(self.storage_dict[apid]['geometry'], self.selected)) self.storage_dict[apid]['geometry'] = [] self.storage_dict[apid]['geometry'] = temp_storage - except Exception as e: - log.debug("FlatCAMGrbEditor.buffer() --> %s" % str(e)) + log.debug("FlatCAMGrbEditor.buffer() --> %s\n%s" % str(e)) + self.app.inform.emit(_("[ERROR_NOTCL] Failed.\n%s") % str(traceback.print_exc())) + return self.plot_all() self.app.inform.emit(_("[success] Done. Buffer Tool completed.")) From 32f1c4f8fe20548788a08d25e139680b86fef4ac Mon Sep 17 00:00:00 2001 From: Marius Stanciu Date: Thu, 20 Jun 2019 19:40:06 +0300 Subject: [PATCH 07/15] - fixed Editor Transform Tool in Gerber Editor - added a message in the status bar when copying coordinates to clipboard with SHIFT + LMB click combo - languages update --- FlatCAMApp.py | 5 + README.md | 6 + flatcamEditors/FlatCAMGrbEditor.py | 138 +++--- locale/de/LC_MESSAGES/strings.mo | Bin 305211 -> 305418 bytes locale/de/LC_MESSAGES/strings.po | 696 +++++++++++++------------- locale/en/LC_MESSAGES/strings.mo | Bin 284569 -> 284761 bytes locale/en/LC_MESSAGES/strings.po | 699 +++++++++++++------------- locale/ro/LC_MESSAGES/strings.mo | Bin 303498 -> 303751 bytes locale/ro/LC_MESSAGES/strings.po | 766 +++++++++++++++-------------- locale_template/strings.pot | 691 +++++++++++++------------- 10 files changed, 1540 insertions(+), 1461 deletions(-) diff --git a/FlatCAMApp.py b/FlatCAMApp.py index 71d91468..bccbd244 100644 --- a/FlatCAMApp.py +++ b/FlatCAMApp.py @@ -5424,6 +5424,7 @@ class App(QtCore.QObject): self.click_noproject = True self.clipboard.setText(self.defaults["global_point_clipboard_format"] % (self.pos[0], self.pos[1])) + self.inform.emit(_("[success] Coordinates copied to clipboard.")) return self.on_mouse_move_over_plot(event, origin_click=True) @@ -5580,6 +5581,10 @@ class App(QtCore.QObject): if self.command_active is None: self.select_objects(key='CTRL') self.delete_hover_shape() + elif modifiers == QtCore.Qt.ShiftModifier: + # if SHIFT was pressed and LMB is clicked then we have a coordinates copy to clipboard + # therefore things should stay as they are + pass else: # If there is no active command (self.command_active is None) then we check if we clicked # on a object by checking the bounding limits against mouse click position diff --git a/README.md b/README.md index b1953abc..c181d969 100644 --- a/README.md +++ b/README.md @@ -9,6 +9,12 @@ CAD program, and create G-Code for Isolation routing. ================================================= +20.06.2019 + +- fixed Editor Transform Tool in Gerber Editor +- added a message in the status bar when copying coordinates to clipboard with SHIFT + LMB click combo +- languages update + 19.06.2019 - milling an Excellon file (holes and/or slots) will now transfer the chosen milling bit diameter to the resulting Geometry object diff --git a/flatcamEditors/FlatCAMGrbEditor.py b/flatcamEditors/FlatCAMGrbEditor.py index cfe66bcd..43c84084 100644 --- a/flatcamEditors/FlatCAMGrbEditor.py +++ b/flatcamEditors/FlatCAMGrbEditor.py @@ -3890,7 +3890,17 @@ class FlatCAMGrbEditor(QtCore.QObject): "%.4f    " % (0, 0)) # Selection with left mouse button - if self.active_tool is not None and event.button is 1: + if self.active_tool is not None: + modifiers = QtWidgets.QApplication.keyboardModifiers() + + # If the SHIFT key is pressed when LMB is clicked then the coordinates are copied to clipboard + if modifiers == QtCore.Qt.ShiftModifier: + self.app.clipboard.setText( + self.app.defaults["global_point_clipboard_format"] % (self.pos[0], self.pos[1]) + ) + self.app.inform.emit(_("[success] Coordinates copied to clipboard.")) + return + # Dispatch event to active_tool self.active_tool.click(self.app.geo_editor.snap(self.pos[0], self.pos[1])) @@ -4406,19 +4416,13 @@ class FlatCAMGrbEditor(QtCore.QObject): if geom_el in selection: geometric_data = geom_el.geo buffered_geom_el = dict() - if 'solid' in geom_el: - buffered_geom_el['solid'] = DrawToolShape( - geometric_data['solid'].buffer(buff_value, join_style=join_style) - ) - if 'follow' in geom_el: - buffered_geom_el['follow'] = DrawToolShape( - geometric_data['follow'].buffer(buff_value, join_style=join_style) - ) - if 'clear' in geom_el: - buffered_geom_el['clear'] = DrawToolShape( - geometric_data['clear'].buffer(buff_value, join_style=join_style) - ) - return buffered_geom_el + if 'solid' in geometric_data: + buffered_geom_el['solid'] = geometric_data['solid'].buffer(buff_value, join_style=join_style) + if 'follow' in geometric_data: + buffered_geom_el['follow'] = geometric_data['follow'].buffer(buff_value, join_style=join_style) + if 'clear' in geometric_data: + buffered_geom_el['clear'] = geometric_data['clear'].buffer(buff_value, join_style=join_style) + return DrawToolShape(buffered_geom_el) else: return geom_el @@ -4468,17 +4472,20 @@ class FlatCAMGrbEditor(QtCore.QObject): if geom_el in selection: geometric_data = geom_el.geo scaled_geom_el = dict() - if 'solid' in geom_el: - scaled_geom_el['solid'] = DrawToolShape( - affinity.scale(geometric_data['solid'], scale_factor, scale_factor, origin='center')) - if 'follow' in geom_el: - scaled_geom_el['follow'] = DrawToolShape( - affinity.scale(geometric_data['follow'], scale_factor, scale_factor, origin='center')) - if 'clear' in geom_el: - scaled_geom_el['clear'] = DrawToolShape( - affinity.scale(geometric_data['clear'], scale_factor, scale_factor, origin='center')) + if 'solid' in geometric_data: + scaled_geom_el['solid'] = affinity.scale( + geometric_data['solid'], scale_factor, scale_factor, origin='center' + ) + if 'follow' in geometric_data: + scaled_geom_el['follow'] = affinity.scale( + geometric_data['follow'], scale_factor, scale_factor, origin='center' + ) + if 'clear' in geometric_data: + scaled_geom_el['clear'] = affinity.scale( + geometric_data['clear'], scale_factor, scale_factor, origin='center' + ) - return scaled_geom_el + return DrawToolShape(scaled_geom_el) else: return geom_el @@ -5230,9 +5237,10 @@ class TransformEditorTool(FlatCAMTool): try: # first get a bounding box to fit all; we use only the 'solids' as those should provide the biggest # bounding box - for el in elem_list: + for el_shape in elem_list: + el = el_shape.geo if 'solid' in el: - xmin, ymin, xmax, ymax = el['solid'].bounds() + xmin, ymin, xmax, ymax = el['solid'].bounds xminlist.append(xmin) yminlist.append(ymin) xmaxlist.append(xmax) @@ -5248,13 +5256,14 @@ class TransformEditorTool(FlatCAMTool): px = 0.5 * (xminimal + xmaximal) py = 0.5 * (yminimal + ymaximal) - for sel_el in elem_list: + for sel_el_shape in elem_list: + sel_el = sel_el_shape.geo if 'solid' in sel_el: - sel_el['solid'].rotate(-num, point=(px, py)) + sel_el['solid'] = affinity.rotate(sel_el['solid'], angle=-num, origin=(px, py)) if 'follow' in sel_el: - sel_el['follow'].rotate(-num, point=(px, py)) + sel_el['follow'] = affinity.rotate(sel_el['follow'], angle=-num, origin=(px, py)) if 'clear' in sel_el: - sel_el['clear'].rotate(-num, point=(px, py)) + sel_el['clear'] = affinity.rotate(sel_el['clear'], angle=-num, origin=(px, py)) self.draw_app.plot_all() self.app.inform.emit(_("[success] Done. Rotate completed.")) @@ -5288,9 +5297,10 @@ class TransformEditorTool(FlatCAMTool): else: # first get a bounding box to fit all; we use only the 'solids' as those should provide the biggest # bounding box - for el in elem_list: + for el_shape in elem_list: + el = el_shape.geo if 'solid' in el: - xmin, ymin, xmax, ymax = el['solid'].bounds() + xmin, ymin, xmax, ymax = el['solid'].bounds xminlist.append(xmin) yminlist.append(ymin) xmaxlist.append(xmax) @@ -5308,22 +5318,23 @@ class TransformEditorTool(FlatCAMTool): self.app.progress.emit(20) # execute mirroring - for sel_el in elem_list: + for sel_el_shape in elem_list: + sel_el = sel_el_shape.geo if axis is 'X': if 'solid' in sel_el: - sel_el['solid'].mirror('X', (px, py)) + sel_el['solid'] = affinity.scale(sel_el['solid'], xfact=1, yfact=-1, origin=(px, py)) if 'follow' in sel_el: - sel_el['follow'].mirror('X', (px, py)) + sel_el['follow'] = affinity.scale(sel_el['follow'], xfact=1, yfact=-1, origin=(px, py)) if 'clear' in sel_el: - sel_el['clear'].mirror('X', (px, py)) + sel_el['clear'] = affinity.scale(sel_el['clear'], xfact=1, yfact=-1, origin=(px, py)) self.app.inform.emit(_('[success] Flip on the Y axis done ...')) elif axis is 'Y': if 'solid' in sel_el: - sel_el['solid'].mirror('Y', (px, py)) + sel_el['solid'] = affinity.scale(sel_el['solid'], xfact=-1, yfact=1, origin=(px, py)) if 'follow' in sel_el: - sel_el['follow'].mirror('Y', (px, py)) + sel_el['follow'] = affinity.scale(sel_el['follow'], xfact=-1, yfact=1, origin=(px, py)) if 'clear' in sel_el: - sel_el['clear'].mirror('Y', (px, py)) + sel_el['clear'] = affinity.scale(sel_el['clear'], xfact=-1, yfact=1, origin=(px, py)) self.app.inform.emit(_('[success] Flip on the X axis done ...')) self.draw_app.plot_all() self.app.progress.emit(100) @@ -5351,9 +5362,10 @@ class TransformEditorTool(FlatCAMTool): try: # first get a bounding box to fit all; we use only the 'solids' as those should provide the biggest # bounding box - for el in elem_list: + for el_shape in elem_list: + el = el_shape.geo if 'solid' in el: - xmin, ymin, xmax, ymax = el['solid'].bounds() + xmin, ymin, xmax, ymax = el['solid'].bounds xminlist.append(xmin) yminlist.append(ymin) @@ -5363,21 +5375,22 @@ class TransformEditorTool(FlatCAMTool): self.app.progress.emit(20) - for sel_el in elem_list: + for sel_el_shape in elem_list: + sel_el = sel_el_shape.geo if axis is 'X': if 'solid' in sel_el: - sel_el['solid'].skew(num, 0, point=(xminimal, yminimal)) + sel_el['solid'] = affinity.skew(sel_el['solid'], num, 0, origin=(xminimal, yminimal)) if 'follow' in sel_el: - sel_el['follow'].skew(num, 0, point=(xminimal, yminimal)) + sel_el['follow'] = affinity.skew(sel_el['follow'], num, 0, origin=(xminimal, yminimal)) if 'clear' in sel_el: - sel_el['clear'].skew(num, 0, point=(xminimal, yminimal)) + sel_el['clear'] = affinity.skew(sel_el['clear'], num, 0, origin=(xminimal, yminimal)) elif axis is 'Y': if 'solid' in sel_el: - sel_el['solid'].skew(0, num, point=(xminimal, yminimal)) + sel_el['solid'] = affinity.skew(sel_el['solid'], 0, num, origin=(xminimal, yminimal)) if 'follow' in sel_el: - sel_el['follow'].skew(0, num, point=(xminimal, yminimal)) + sel_el['follow'] = affinity.skew(sel_el['follow'], 0, num, origin=(xminimal, yminimal)) if 'clear' in sel_el: - sel_el['clear'].skew(0, num, point=(xminimal, yminimal)) + sel_el['clear'] = affinity.skew(sel_el['clear'], 0, num, origin=(xminimal, yminimal)) self.draw_app.plot_all() self.app.inform.emit(_('[success] Skew on the %s axis done ...') % str(axis)) @@ -5410,9 +5423,10 @@ class TransformEditorTool(FlatCAMTool): try: # first get a bounding box to fit all; we use only the 'solids' as those should provide the biggest # bounding box - for el in elem_list: + for el_shape in elem_list: + el = el_shape.geo if 'solid' in el: - xmin, ymin, xmax, ymax = el['solid'].bounds() + xmin, ymin, xmax, ymax = el['solid'].bounds xminlist.append(xmin) yminlist.append(ymin) xmaxlist.append(xmax) @@ -5433,13 +5447,14 @@ class TransformEditorTool(FlatCAMTool): px = 0 py = 0 - for sel_el in elem_list: + for sel_el_shape in elem_list: + sel_el = sel_el_shape.geo if 'solid' in sel_el: - sel_el['solid'].scale(xfactor, yfactor, point=(px, py)) + sel_el['solid'] = affinity.scale(sel_el['solid'], xfactor, yfactor, origin=(px, py)) if 'follow' in sel_el: - sel_el['follow'].scale(xfactor, yfactor, point=(px, py)) + sel_el['follow'] = affinity.scale(sel_el['follow'], xfactor, yfactor, origin=(px, py)) if 'clear' in sel_el: - sel_el['clear'].scale(xfactor, yfactor, point=(px, py)) + sel_el['clear'] = affinity.scale(sel_el['clear'], xfactor, yfactor, origin=(px, py)) self.draw_app.plot_all() self.app.inform.emit(_('[success] Scale on the %s axis done ...') % str(axis)) @@ -5465,21 +5480,22 @@ class TransformEditorTool(FlatCAMTool): try: self.app.progress.emit(20) - for sel_el in elem_list: + for sel_el_shape in elem_list: + sel_el = sel_el_shape.geo if axis is 'X': if 'solid' in sel_el: - sel_el['solid'].offset((num, 0)) + sel_el['solid'] = affinity.translate(sel_el['solid'], num, 0) if 'follow' in sel_el: - sel_el['follow'].offset((num, 0)) + sel_el['follow'] = affinity.translate(sel_el['follow'], num, 0) if 'clear' in sel_el: - sel_el['clear'].offset((num, 0)) + sel_el['clear'] = affinity.translate(sel_el['clear'], num, 0) elif axis is 'Y': if 'solid' in sel_el: - sel_el['solid'].offset((0, num)) + sel_el['solid'] = affinity.translate(sel_el['solid'], 0, num) if 'follow' in sel_el: - sel_el['follow'].offset((0, num)) + sel_el['follow'] = affinity.translate(sel_el['follow'], 0, num) if 'clear' in sel_el: - sel_el['clear'].offset((0, num)) + sel_el['clear'] = affinity.translate(sel_el['clear'], 0, num) self.draw_app.plot_all() self.app.inform.emit(_('[success] Offset on the %s axis done ...') % str(axis)) diff --git a/locale/de/LC_MESSAGES/strings.mo b/locale/de/LC_MESSAGES/strings.mo index 2984db7c9893bd60f97c178862b44faf181b792d..c1c748afb1edaca87a26db90adab5ee80c8647f0 100644 GIT binary patch delta 39470 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 IUxvj02Z$PS{r~^~ delta 39324 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 z zZT17(V7(BtJWrtBehu=PxzPpF6Ca9NJsVI%y%$6A57eWLoX?bxjjEp#^$0?+jMjfq z0-7Y_Q9Iru8{deU3rA3Qc+cv~Z(hI23z!R4#lz%J!fIG8)Z_l_XcdMLuU^nxa5`!O zT7-IJYcPS<|8W9(+1$l+=q+UCKxWjWDS*1e;;1{UVr_z&D_u~lWuT2uw(*6Sk@U@| zxpWW5VuLWV3}0Xn*LSKEHVt({y&MLkmf0w*i_=gW%p0tUaf_JA*A6w*6H)o+aD&RB z_K!tH%?MmW?FR{qd7MUA1yz0vxaqApYsHD?-OYwU!oe-pKT{Np3AfW)gIo^4&5KM32hK}|wk@Ove*r$?-8-T^_V8ws(NLw6)> zyc2RgpEHyI9|W9PsF%ln)MUDX+8176GW>z+VA3jP=(C~XrBMwxKt1ygHh(nsCcYT8 z)h4ZK%5_228;r5F{%6>X)u?s88}%$tSpT%%!V086!JL@0nz1!zAU@xE8Z~!5qDJrs z>JbK1HzQdRH8Qm^q1JzUn=u^qjAo+lXd7xIj$u)}h4nCb4YQ8>VR7PjP_sEjP4ft{ zqc*0psQR^0bE6|_=j)4l{Z2=pp6vz#x`RWgg0E1M=L>2?{A-yZi-Af{iMn7WRQUqf z6-%KmxYy=iwD}KEBlZflDuQbpbJS-2Yw{E$K~}_$OsYCqjri$09;XxW0wMP zNIVGL*^3&HPN>P*ADiPuj7LX5Vn*Uo8<{OOFKSZOL#_8-sLy_LQFGvukAP2IVcd`aGS$Em=Bd8A?=TYVVLam;+s0+qyV)l!as2lQC zA)p~@f|`8YP9OQuv))4}1W50e{E7x)`BPR~i_c;Rzs3+r5J)e)|a69Tkp5|uu7eGClfv5&1pw{sco4(V=PuTcv)EszW)8C>- zE6N+Wgr)%?FG%sQkLU%zAH&sy_&oJ{jlZVl0J)dwbj;?~O*yshg+~$k2!NuRG7y z$Mh&4GKfw^48p3Y+1nk}@D$XtTY?2}JL*o~+4QfdhNJg2k1#H(UJ}&EWI#>M5LEj$ z`?CH^66j5Ww!}lI4&B6b_z1Q9qV+Q$r9x24tv6=IA*lS#sMqox8~64%vp);=Aw3i| z8F!*q%>mSoc-lu`B!Qne3P%p`xZjS8O~Y3L-&7FFvji?doLVZxnbpop0MK*o28)yBUAfQQg9kms|KsDe$+^#~_f=UA7a+TDP93GKFC#s0+KqOUK3PGilp zd1?KMY-CR4appqNPa`?^Wm!4qK8=x-S0hQk$ zwbh@V!1B_a{2)OWj5*Qc@aUWrsCX)C2?X0yg%xKBT@Bc zpl)!5O+SFT?m3?=a359iUmO358rmq6%w$Z6>xgGZmAj9P@deJn@{`T?51ycQ%;Hnb zhSU_bk;1gah14Fa0=kFhR(#fn&Ss;RgFgNPr;6!KSs6p4mEeYv(4KtIjVjRH_o~$Z4>IF8tRIwIM~LgpgOo1HBuW< z&+-K75#6)-FH!aXLtP-!9J6|oqspg2wOa`F8m@%Vw62>GP=zk2jb|ik(kw=87@JY6 zWDjbuKY_aQ^QfV}imDfLuIW&ERQWupju%CZKxI_B?NB4t4}H4uB%81TRd6pB$7`rn zkZhjmNLI{FJTIyP?NE=ZE9%Y%-~b$ly)f#0vs#9s%8x>IU?OS~E}YN$*BxypL9=r= zYPMcSO_EQj3nW-z47O&nhM<;VQB?Wzs1CPBb!Z@_#tEo>WV=njjd}zx7WmB8_>%>o?l|VT^DYtu_+!R{SdapA>wH=-uVZtQ~RQM0|sO4IX-)`qB6(GgXDII7%KREHO# zX8l&wqdsOmi&^ykze1o88R1r$kJH7m0`WOE{v7iW4_j@%9_Wjs*cZ0qK++4YHA8;@ zwb3M9=W%~kvoF>lei_qXhV^FXtD-vE5F_fn+TLdLKuwCls0!1uJMPC&%(=mIpbJhR zz6K9sp^ZjollcU62rH8AzuDYS71T0aiTUv%4(0{|ws@R8T;Ex=)x4E%SW|EFI5$Y| zidV7xc8~j?V5Hn(UaRj>LmO?UnS_C;N01$Zurz9@+u{=JiW->&yUe5QVI7D*eJ~hJ zKrTm3#=|%s|HQG_Xt%l0E9+0x*NUYe=W+k$$<2f2+wcnyd7P7EG(T*1TDPBynMtNd)EB$ z>G%bY^M?Fff12;{q`7E*95)Atke>RI*-%zvH{$Uxd)(ic9)o&x{#VRu+K*b+Pf^#) zb=58BbA}N}OTstIfvK*U&v>;l8}Wsxm(fK`hY7D6i(ppb?Jxt*!+m%PTjPiurkyuf zj5`gvX?Do|x6DsOZebIx|J=7t!Yph@#rLR5()ftnttDWZFdPZA`u^WoVC~=XJh(@#$%XE>%Y+>b0^bL7e0Z9G32pH|B9K3 zXMDn)awm0h9q|!Q%^l|Yi*-+WKh&d||F_5esrtlcW*I-iJfwGd&X;DCTaCww|MPljX%K$;6_4PkLE@ubUs{@wz)^u-EH8qD@$c{5#>i?s`ua-s|qH zDNxHfyNwt35zus;blIc-gR7M(910mM(sJCGgY=NUOBfddxtpSludVO3;{3u4p z_EEgEz>4EiVZI>YcBYTZ{$WQM#%Vz2uyX<%)K zdI|Nh4n{q~(dbiP2LTP`V_P795;Jr~QFm6|#v7m>O(#^xe5hwS88x&ku{<6^T`)#c zulu1h0frGji#suTGOzoY@ z{;2o;eCsJpOZ+|R<&!Mf>uyjtuov;3DNG0dMQvOKQ~JE_Pq}ZWG>NDaIWDYvlP><{;YVy87jnG%rq>h~0j8t6INTxxJcvj4e^?d|1nZ}|n zxXQX6H3yEMcEoemNNK$87bL~7H|Y&fbKp7-S3IqGlus}_@dD|*?pE9pk1^7RF%#({ zGkDGK|7|C*gM`c(z3#74JVg!ZwoIm{_fZw1Wj3oMKL!zRgy(TE>h)VCi`V_;)d1{D zd_4wYa8|GT$D)g(K26`jFsz!*)#pqlP?&@(s5?!N-Ru5BQ5952j$%%HjZHCS4zK%- ziji1=_+wPPpqyU!=LPjJjQBLHj90M;rp;x_x5Zqozc})5k)XV4^mcpPAulrhUgO`afM$M6)dClIx3AJ;+!B9+;&s?}Bs^jCZg4X|O z0(z?@%5NGdkNJs@K<#Kpup34xVDbl|_V(Qvg2_X@?)QRfVNs={I`{+i_A6P?>wa;% z7#k4(iPf<|A=ZC60$T}GM87c8!^)_=egrnbf3PlAF6?!GseGOFE$V`KikOk zF)NyeJK$B)pP`o1!AeXP%vss2iXo_>UXNOiw@~eTM=jSnRlM$3!6Q+t>jCNpQdBiJ zJPtMId=CgzBM`5eu?=cO4p`$3gj)YnVH2hV4k7i;XZ+O>?JhFgNk7I0s)~ zFpj8Y_J!5RR_$}n5ZLI)o{j3!vO3IO;y0|p^~?p@)@K=!ejOW8E`CF=`n_ zn(hCgW_Q8nUiY_T`e0Jx&#?eTXkk`UG1R)BYQ2cXh{tSc_Lu7De*Hg}fEv7v8iAOt zyzZyiVyGdXj~e2)sO8kKwRy|!Mm@SmsAnG1#@GV2_fJLbpeHaJzC~?FDchPIvmE-g zb&ep=6c3{&N$Pf9_dl(kXuXBH^VIE)ZBWZ;J$6EG2e11TPIuHZ5AJBJjauFlZTy(^ z8>(YDIgEi=6mc5vPY4s;bzTcwg*@uTYPqeoxcUP1Xp# z%sx>cHIiFVJ7>b)re0rUwmUCS>pyNEvyU|L*}xW5!{Pgyy}S-;r`wBtRT1^5TJ|%~ zcrof3UqHYb2&gs}JGDxH5<|d>_$9v zoY{gmqekjIYVxKUPsg~v(}aL7G#9mDyhhE1OcTr}nL((@a~QROyujj^b)tEV_CU?% z<*59dsG(0j$t<%5sJSo-H8Sf^&;ALz|1Y&Dlg($lVAL`ziJBALP%n=q7)KRQlkf{_ zo#&ilY>Qgwi%}Q4hMII=Q5#OWspi6!QT0ZlCh5Vctbc6;Z%NPxf@IUoot8%x=z(f* zC921Npq}Ad)MQIL-PjoQx}J@x@i?m8SC|eH&M-Gt1QqXy>d34a%w`q5K!V$2R72@z znjx%?sxTGR!TqQU{DZ+5ZDit#eQv--Chp6xB|Ixn{_-p)On-RjwZ<#1%Gv(CT|ZK(jLbJTv4a zQ5AcmMq(~%=ucu8{(~to%Y1Vu)leT&Ctw-8hFT553(QX18Z~mOQ0?46wf_^jF`pB> z(5%lQn1GCa7=Tkz&wdMPE?mPT7-^B|Kq^d3ybNm6Hpd{GZ1cCG+Pi_O_r@A+v8kU9 zvuOQSAfV+l0Cl0wsG)ppjlRUp?hw>7YmZtLOHs?|DQYqXEH&%8CTf*T#X@)A4Ilu7Na9R3Pq$r7KSs&cI+W#P7xkT+EMZ@_EKS`N3l!S9bx=QRbkVSg&6pocZcyh+-xqYB}IR652PkMksP z9-niXF!S$!$4JuoHn4jnv-QtYW)FgcC$?e5d?;+u6T%a=H=j5&9WUe}YQg($MewDkU>#wIUKe}`H?*-kX zI^l2(RS$cyKIHc$udB&+*3j?<;{9n*#}dkyuyx;%R+0S7IG*&=xF6kFZi>5~FHhL= zgZcim6GR2R6YfmHnp|`Oo}s`BY{99c7Y+GS<_+m-NDI~7;yvQW2=3ynP8xsq(K$i6 z*POh?ovY+WC66DLxW^09bm)`SRPyxuXU;_`c2a6(q&?%z zNFDy>r;~#8q>NZ3tZXl&dbct+3bb#k+z<=j$)+sCO)6`bnK+8{w`=t&Xb(iIO}tb@~Hp1?p-)L|NQ8^ zj`5taX<#eo|2;a8R+$F>>fAR)# z?jx=r%jmda+fg_PZ4Afxif|0&Iy%l!)>qp`_z{r%Q|-?r@ylpcZDomPt5Y~~?)=h?&X*0I|Uj{>{ z9Gz1~4&1{9cT=G>r^@rO-l;?3K12%J2KoCG?$Oxb{+ormd#UTS7fDaqoz&}X%QhhW z7U86%#bOkCtDNrty=~+L3E5SNcuK;<`Wmo=%}(M=Qc!@{`!- zrk?}$ zX$pm-a26&!ne>B{i^f@+xQ>bVnDk%ACi4Cxl88ESZDInOAI-*7*t(ZV*Vhs5{r9jJ zUrpizDo?kCMGt#dGstVsnU@B-a2}3BTiPXgi;l@`E|``AK`mM3n|oklzn*hTFSKM3^6hy8qL)_>}vL^p3>&Q@~CN z!X-F|(9l^LbnDZxP{Jk1uZ)R_x8oc}JdpE*Ef=3U4+!tqC-@!qVw*^)O<|Ai*~2M8 zJ>vNEGmA;I9nYrzYp&$*OF`~`L|=d!4{h24%HHQ3Kud3E^&aW3sCN`I+xjXxgmWxs z4ay{?Y*pGgPCXs#h)2d$mPgkL1Q|SanbXf zL0sU_Zw)V?-UIT}kavZ$f0MTkvv8qYw(b_xcMi^Twj})Z_YY2aZJ{VM@QB9eVKN$7 zL&MdHf22}Bj7hmNwv$cqFWZTAg!M}~{EXkJM49u%%W}5h)Dc8_HNq84)VW1j{fB(+ z(as$XK0w=eLN27E75Z^5r{W5Gq1viwI~$GNqziQ;QMMXqLCVdfjk~zSmj4g+^;UZu z???V->KDx&UzA_kPx53;qW8zN4C*jgr{+~CZ3oIHEBS9 z?{E+0{^k62+$F6fW&A0t?=-z3{Fn~wC`g#!WOJqx)|bJfDEo?Q-6PHIS$hiVPmSnE zP39+CF%R+dDo9!&g=@Jb%s+pUUV(Besh5ZFNRq>;6NF!q7KgCDTTqowW+g2VWh3Jd z+qNHJ9U2)Y8x=ZZTMECx1U%DQ6u3eV?`Na9YyLpkf%vcJmx zAkHu3IL$aaQFc8U{J}2w*S!kaLht!aA2%3}Mt>a%sW6kuK@`5ud4zBl()jHiXPEN1 zn2wyb&TQMcp_JQ1xDsV_w7^1KSjSA#V{lW~s1wnae?t0df3Dw`#EC?bka2`c{1I)Z z6OGLvJt^T&Scvm4^1Gl8ed9t$0?u}n8AZLG)Y0!Db*5Zr)Uk;4YSgJhJT~!ql=*f1 zq;u8W|7)a8IYz}}RA@ut4HVROSI!aNMmQ$s;^c3bJ5wkZgLAaK$N(A|McMJhbCG_L z)8F2?n(o0F$zFIPc}FOB7Bow zZ1*Td*|L-iwq<>k^-wN37yF9;a4sP&3TL9v6_UlsRYLa8t(O52m6thit{~-Y?qgzT4?4$rfRu&Q9L4#GGYRq3*qy87rPd41VwAg1 z`Wkw@8?%zvkMv2zi*n`M`0JQJd^_<*_>*>y5>8HL7wQBM4@DimBNXUPBmYw19qJfN zT751M0auwMCp9y&9^q3|+)sKo$}b>%9!KMN(iUSJ&X%+@go|9Jja8%{qFz4Ar6qih z^nIK~DHkmqUkrb+7u9tJl2M9yS~9;-AszlY5>k1%|CG*S;%LmiQED@$!}OGjixH`z zql&G?)t%e4_=Lb9@+Xtu!j`#0-b7j~OWFU(i^=WPCSH)UA7^FioZKR%B1B? zO`5ME|GcE30%XLdVoChNHhh5!lWBZ3h4*uD9lbg4Q%6Sw%68){O!zHnSqbaM8v2oh zd(d7p0!yhomA3X1E=qWyZU2M5Lr~5(rV0xQx1*7+Tri)#;1vodqoFb6f20u|ckmWv z3sbh5t-p=%BkC2g^-M{g0r5CCQq|_oqs}$LUHJ)>laj{#s2GpL5DFH@*0#})wx{`t z2hxePRBBGRDCHv&pG4hFTv*2?&b*x8DHDtQLzG*F5jbPmcBYUQK)tEd`G@o-dj6$p zq&epp3jINWk!1XS6#GB%IX3eEWv6ofI>u3d3GsC}hdMFIm`J-3=*TC+{95e)@3=}? zUEg_T8yQEXdGu_Iz2HkKCMBE>%aERmp8q-qljgDYPTKOy+hy-G4dDfx!ITT&!sV!c z;I|HpAsk)%)*>orunlCyoHTI8HmnAdQ;qO?_jmUdTn6}(w6aPN@tG+4Zjze7NPr`jE zQ{1LKx0W_VoXF}d`FlyP`&-A9y_oh&lRnpWLTOKZT<8h~-{EXBZWB)Re=1I+;04Z( z+`&&8nQljCKH-U+A8C}|-FA=9n8fBQp&sq#wt49(dw}x^XDeIASDcG}qtGXuOu@ID z*?()G8+jFJsDRu2|M$-ed*@Bbzf1WZs6$hvp1okGz0xfBwC1VoH7D(oqQaVI>M~z@ju-m9zwOtUd9Ac;9wrxV>OA8vAt|r|fYe zU#Q>ImJ71hqTE*Mq~ly}>o%usecJRbBB9%F4ZSAg4;q5DEi#3N6AreG?V<4>l*?-4 zs*{*BFXggxmLPtM_#TYNg-de5Ueq6E%RePtm~atJ-$VXcNP*}S>_BB58#z(Civy^Wk~(E*EElJa3#3&bT%7P~!hw`aj=zo?H)&Hi+tAoj%IC#jM>iWtWH0=Xy!doP$5PUE z+Uw*dzD!?iHY4FL+rTm!*U^f!VN_a7h47qLe!GD3^O1L!4t!9AqYC9`P;Q2aI{y&X zF^Y2A$?HV?GoG{UjNv-vh)2_=J%fhwp^gY-B%{!I&RkTQMcSW)V^K!OCer?<%wp2g za&9rnP5|LY-q2~Xxc&bf%P>!}-#_G4pe@3oIscu1u9JMLC zmbi|~ID+^V%6uTal(2^x_78c}i8sI~wyetcqRmybd4lpsxt*h!dl!lODYS}+j?0{t zZ6z<>B7Yir74Q;H$K{@1Up_UanM|ZOlze7esLLgmsVR<~qM)|@jO@@A5)Cef}$XS83l$eV2Uq@#0*VxEE zt;f`PNw10%X-%)25bi)`7}nv`@shJ8oj683jBrlQLX=rZJecqe@_rqo2`3}+h_=RZ z>gbLODSw1;XY!X(?+Nj{%GA`2Vhi3Su>iduj&GD{k91U6O9zMB3k@I~hqPVP`$Skr z2kPla!LX0RD&+OIX-XeM`3$tHqr7!G?fE|Q&uTJDkXVs3It}h2tpSz$lm3~8%5uIY zeu2DsxP(S-Qf4UmLkTa!l$>V?KjjRPl d8}Xy3|BfF$Ju^=1*iy**t;&walf9|q|3AXZgN*{name} selected" msgstr "[selected]{name} ausgewählt" -#: FlatCAMApp.py:5876 +#: FlatCAMApp.py:5882 msgid "" "There are files/objects opened in FlatCAM.\n" "Creating a New project will delete them.\n" @@ -544,112 +548,112 @@ msgstr "" "Wenn Sie ein neues Projekt erstellen, werden diese gelöscht.\n" "Möchten Sie das Projekt speichern?" -#: FlatCAMApp.py:5897 +#: FlatCAMApp.py:5903 msgid "[success] New Project created..." msgstr "[success] Neues Projekt erstellt ..." -#: FlatCAMApp.py:6013 FlatCAMApp.py:6016 flatcamGUI/FlatCAMGUI.py:608 +#: FlatCAMApp.py:6019 FlatCAMApp.py:6022 flatcamGUI/FlatCAMGUI.py:608 #: flatcamGUI/FlatCAMGUI.py:1832 msgid "Open Gerber" msgstr "Gerber öffnen" -#: FlatCAMApp.py:6021 +#: FlatCAMApp.py:6027 msgid "[WARNING_NOTCL] Open Gerber cancelled." msgstr "[WARNING_NOTCL] Offener Gerber abgebrochen." -#: FlatCAMApp.py:6042 FlatCAMApp.py:6045 flatcamGUI/FlatCAMGUI.py:609 +#: FlatCAMApp.py:6048 FlatCAMApp.py:6051 flatcamGUI/FlatCAMGUI.py:609 #: flatcamGUI/FlatCAMGUI.py:1833 msgid "Open Excellon" msgstr "Excellon öffnen" -#: FlatCAMApp.py:6050 +#: FlatCAMApp.py:6056 msgid "[WARNING_NOTCL] Open Excellon cancelled." msgstr "[WARNING_NOTCL] Offener Excellon abgebrochen." -#: FlatCAMApp.py:6072 FlatCAMApp.py:6075 +#: FlatCAMApp.py:6078 FlatCAMApp.py:6081 msgid "Open G-Code" msgstr "G-Code öffnen" -#: FlatCAMApp.py:6080 +#: FlatCAMApp.py:6086 msgid "[WARNING_NOTCL] Open G-Code cancelled." msgstr "[WARNING_NOTCL] Geöffneter G-Code wurde abgebrochen." -#: FlatCAMApp.py:6098 FlatCAMApp.py:6101 +#: FlatCAMApp.py:6104 FlatCAMApp.py:6107 msgid "Open Project" msgstr "Offenes Projekt" -#: FlatCAMApp.py:6109 +#: FlatCAMApp.py:6115 msgid "[WARNING_NOTCL] Open Project cancelled." msgstr "[WARNING_NOTCL] Projekt abbrechen abgebrochen." -#: FlatCAMApp.py:6128 FlatCAMApp.py:6131 +#: FlatCAMApp.py:6134 FlatCAMApp.py:6137 msgid "Open Configuration File" msgstr "Offene Einstellungsdatei" -#: FlatCAMApp.py:6135 +#: FlatCAMApp.py:6141 msgid "[WARNING_NOTCL] Open Config cancelled." msgstr "[WARNING_NOTCL] Offene Konfiguration abgebrochen." -#: FlatCAMApp.py:6150 FlatCAMApp.py:6401 FlatCAMApp.py:8551 FlatCAMApp.py:8571 -#: FlatCAMApp.py:8592 FlatCAMApp.py:8614 +#: FlatCAMApp.py:6156 FlatCAMApp.py:6407 FlatCAMApp.py:8560 FlatCAMApp.py:8580 +#: FlatCAMApp.py:8601 FlatCAMApp.py:8623 msgid "[WARNING_NOTCL] No object selected." msgstr "[WARNING_NOTCL] Kein Objekt ausgewählt" -#: FlatCAMApp.py:6151 FlatCAMApp.py:6402 +#: FlatCAMApp.py:6157 FlatCAMApp.py:6408 msgid "Please Select a Geometry object to export" msgstr "Bitte wählen Sie ein Geometrieobjekt zum Exportieren aus" -#: FlatCAMApp.py:6162 +#: FlatCAMApp.py:6168 msgid "[ERROR_NOTCL] Only Geometry, Gerber and CNCJob objects can be used." msgstr "" "[ERROR_NOTCL] Es können nur Geometrie-, Gerber- und CNCJob-Objekte verwendet " "werden." -#: FlatCAMApp.py:6175 FlatCAMApp.py:6179 +#: FlatCAMApp.py:6181 FlatCAMApp.py:6185 msgid "Export SVG" msgstr "SVG exportieren" -#: FlatCAMApp.py:6184 +#: FlatCAMApp.py:6190 msgid "[WARNING_NOTCL] Export SVG cancelled." msgstr "[WARNING_NOTCL] Export SVG abgebrochen." -#: FlatCAMApp.py:6203 +#: FlatCAMApp.py:6209 msgid "[[WARNING_NOTCL]] Data must be a 3D array with last dimension 3 or 4" msgstr "" "[WARNING_NOTCL] Daten müssen ein 3D-Array mit der letzten Dimension 3 oder 4 " "sein" -#: FlatCAMApp.py:6209 FlatCAMApp.py:6213 +#: FlatCAMApp.py:6215 FlatCAMApp.py:6219 msgid "Export PNG Image" msgstr "PNG-Bild exportieren" -#: FlatCAMApp.py:6218 +#: FlatCAMApp.py:6224 msgid "Export PNG cancelled." msgstr "Export PNG abgebrochen." -#: FlatCAMApp.py:6237 +#: FlatCAMApp.py:6243 msgid "" "[WARNING_NOTCL] No object selected. Please select an Gerber object to export." msgstr "" "[WARNING_NOTCL] Kein Objekt ausgewählt. Bitte wählen Sie ein Gerber-Objekt " "aus, das Sie exportieren möchten." -#: FlatCAMApp.py:6242 FlatCAMApp.py:6365 +#: FlatCAMApp.py:6248 FlatCAMApp.py:6371 msgid "" "[ERROR_NOTCL] Failed. Only Gerber objects can be saved as Gerber files..." msgstr "" "[ERROR_NOTCL] Fehlgeschlagen. Nur Gerber-Objekte können als Gerber-Dateien " "gespeichert werden ..." -#: FlatCAMApp.py:6254 +#: FlatCAMApp.py:6260 msgid "Save Gerber source file" msgstr "Gerber-Quelldatei speichern" -#: FlatCAMApp.py:6259 +#: FlatCAMApp.py:6265 msgid "[WARNING_NOTCL] Save Gerber source file cancelled." msgstr "[WARNING_NOTCL] Gerber Quelldatei speichern abgebrochen." -#: FlatCAMApp.py:6278 +#: FlatCAMApp.py:6284 msgid "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." @@ -657,22 +661,22 @@ msgstr "" "[WARNING_NOTCL] Kein Objekt ausgewählt Bitte wählen Sie ein Excellon-Objekt " "zum Exportieren aus." -#: FlatCAMApp.py:6283 FlatCAMApp.py:6324 +#: FlatCAMApp.py:6289 FlatCAMApp.py:6330 msgid "" "[ERROR_NOTCL] Failed. Only Excellon objects can be saved as Excellon files..." msgstr "" "[ERROR_NOTCL] Fehlgeschlagen. Nur Excellon-Objekte können als Excellon-" "Dateien gespeichert werden ..." -#: FlatCAMApp.py:6291 FlatCAMApp.py:6295 +#: FlatCAMApp.py:6297 FlatCAMApp.py:6301 msgid "Save Excellon source file" msgstr "Speichern Sie die Excellon-Quelldatei" -#: FlatCAMApp.py:6300 +#: FlatCAMApp.py:6306 msgid "[WARNING_NOTCL] Saving Excellon source file cancelled." msgstr "[WARNING_NOTCL] Speichern der Excellon-Quelldatei abgebrochen." -#: FlatCAMApp.py:6319 +#: FlatCAMApp.py:6325 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." @@ -680,70 +684,70 @@ msgstr "" "[WARNING_NOTCL] Kein Objekt ausgewählt. Bitte wählen Sie ein Excellon-Objekt " "aus, das Sie exportieren möchten." -#: FlatCAMApp.py:6332 FlatCAMApp.py:6336 +#: FlatCAMApp.py:6338 FlatCAMApp.py:6342 msgid "Export Excellon" msgstr "Excellon exportieren" -#: FlatCAMApp.py:6341 +#: FlatCAMApp.py:6347 msgid "[WARNING_NOTCL] Export Excellon cancelled." msgstr "[WARNING_NOTCL] Export Excellon wurde abgebrochen." -#: FlatCAMApp.py:6360 +#: FlatCAMApp.py:6366 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Gerber object to export." msgstr "" "[WARNING_NOTCL] Kein Objekt ausgewählt. Bitte wählen Sie ein Gerber-Objekt " "aus, das Sie exportieren möchten." -#: FlatCAMApp.py:6373 FlatCAMApp.py:6377 +#: FlatCAMApp.py:6379 FlatCAMApp.py:6383 msgid "Export Gerber" msgstr "Gerber exportieren" -#: FlatCAMApp.py:6382 +#: FlatCAMApp.py:6388 msgid "[WARNING_NOTCL] Export Gerber cancelled." msgstr "[WARNING_NOTCL] Export Gerber abgebrochen." -#: FlatCAMApp.py:6412 +#: FlatCAMApp.py:6418 msgid "[ERROR_NOTCL] Only Geometry objects can be used." msgstr "[ERROR_NOTCL] Es können nur Geometrieobjekte verwendet werden." -#: FlatCAMApp.py:6426 FlatCAMApp.py:6430 +#: FlatCAMApp.py:6432 FlatCAMApp.py:6436 msgid "Export DXF" msgstr "DXF exportieren" -#: FlatCAMApp.py:6436 +#: FlatCAMApp.py:6442 msgid "[WARNING_NOTCL] Export DXF cancelled." msgstr "[WARNING_NOTCL] Export DXF wurde abgebrochen." -#: FlatCAMApp.py:6456 FlatCAMApp.py:6459 +#: FlatCAMApp.py:6462 FlatCAMApp.py:6465 msgid "Import SVG" msgstr "SVG importieren" -#: FlatCAMApp.py:6468 +#: FlatCAMApp.py:6474 msgid "[WARNING_NOTCL] Open SVG cancelled." msgstr "[WARNING_NOTCL] Open SVG abgebrochen." -#: FlatCAMApp.py:6487 FlatCAMApp.py:6491 +#: FlatCAMApp.py:6493 FlatCAMApp.py:6497 msgid "Import DXF" msgstr "Importieren Sie DXF" -#: FlatCAMApp.py:6500 +#: FlatCAMApp.py:6506 msgid "[WARNING_NOTCL] Open DXF cancelled." msgstr "[WARNING_NOTCL] Open DXF cancelled." -#: FlatCAMApp.py:6518 +#: FlatCAMApp.py:6524 #, python-format msgid "%s" msgstr "%s" -#: FlatCAMApp.py:6538 +#: FlatCAMApp.py:6544 msgid "" "[WARNING_NOTCL] Select an Gerber or Excellon file to view it's source file." msgstr "" "[WARNING_NOTCL] Wählen Sie eine Gerber- oder Excellon-Datei aus, um die " "Quelldatei anzuzeigen." -#: FlatCAMApp.py:6545 +#: FlatCAMApp.py:6551 msgid "" "[WARNING_NOTCL] There is no selected object for which to see it's source " "file code." @@ -751,25 +755,25 @@ msgstr "" "[WARNING_NOTCL] Es gibt kein ausgewähltes Objekt, für das man seinen " "Quelldateien sehen kann." -#: FlatCAMApp.py:6553 +#: FlatCAMApp.py:6559 msgid "Source Editor" msgstr "Quelleditor" -#: FlatCAMApp.py:6563 +#: FlatCAMApp.py:6569 #, python-format msgid "[ERROR]App.on_view_source() -->%s" msgstr "[ERROR]App.on_view_source() -->%s" -#: FlatCAMApp.py:6575 FlatCAMApp.py:7717 FlatCAMObj.py:5551 +#: FlatCAMApp.py:6581 FlatCAMApp.py:7723 FlatCAMObj.py:5560 #: flatcamTools/ToolSolderPaste.py:1278 msgid "Code Editor" msgstr "Code-Editor" -#: FlatCAMApp.py:6587 +#: FlatCAMApp.py:6593 msgid "Script Editor" msgstr "Script Editor" -#: FlatCAMApp.py:6590 +#: FlatCAMApp.py:6596 msgid "" "#\n" "# CREATE A NEW FLATCAM TCL SCRIPT\n" @@ -813,98 +817,98 @@ msgstr "" "#\n" "\n" -#: FlatCAMApp.py:6613 FlatCAMApp.py:6616 +#: FlatCAMApp.py:6619 FlatCAMApp.py:6622 msgid "Open TCL script" msgstr "Öffnen Sie das TCL-Skript" -#: FlatCAMApp.py:6624 +#: FlatCAMApp.py:6630 msgid "[WARNING_NOTCL] Open TCL script cancelled." msgstr "[WARNING_NOTCL] Open TCL-Skript wurde abgebrochen." -#: FlatCAMApp.py:6636 +#: FlatCAMApp.py:6642 #, python-format msgid "[ERROR]App.on_fileopenscript() -->%s" msgstr "[ERROR]App.on_fileopenscript() -->%s" -#: FlatCAMApp.py:6662 FlatCAMApp.py:6665 +#: FlatCAMApp.py:6668 FlatCAMApp.py:6671 msgid "Run TCL script" msgstr "Führen Sie das TCL-Skript aus" -#: FlatCAMApp.py:6673 +#: FlatCAMApp.py:6679 msgid "[WARNING_NOTCL] Run TCL script cancelled." msgstr "[WARNING_NOTCL] Das TCL-Skript wird abgebrochen." -#: FlatCAMApp.py:6723 FlatCAMApp.py:6727 +#: FlatCAMApp.py:6729 FlatCAMApp.py:6733 msgid "Save Project As ..." msgstr "Projekt speichern als ..." -#: FlatCAMApp.py:6724 +#: FlatCAMApp.py:6730 #, python-brace-format msgid "{l_save}/Project_{date}" msgstr "{l_save}/Projekt_{date}" -#: FlatCAMApp.py:6732 +#: FlatCAMApp.py:6738 msgid "[WARNING_NOTCL] Save Project cancelled." msgstr "[WARNING_NOTCL] Projekt speichern abgebrochen" -#: FlatCAMApp.py:6776 +#: FlatCAMApp.py:6782 msgid "Exporting SVG" msgstr "SVG exportieren" -#: FlatCAMApp.py:6810 FlatCAMApp.py:6916 FlatCAMApp.py:7031 +#: FlatCAMApp.py:6816 FlatCAMApp.py:6922 FlatCAMApp.py:7037 #, python-format msgid "[success] SVG file exported to %s" msgstr "[success] SVG-Datei in exportiert %s" -#: FlatCAMApp.py:6841 FlatCAMApp.py:6962 +#: FlatCAMApp.py:6847 FlatCAMApp.py:6968 #, python-format msgid "[WARNING_NOTCL] No object Box. Using instead %s" msgstr "[WARNING_NOTCL] Kein Objektfeld. Stattdessen verwenden %s" -#: FlatCAMApp.py:6919 FlatCAMApp.py:7034 +#: FlatCAMApp.py:6925 FlatCAMApp.py:7040 msgid "Generating Film ... Please wait." msgstr "Film wird erstellt ... Bitte warten Sie." -#: FlatCAMApp.py:7182 +#: FlatCAMApp.py:7188 #, python-format msgid "[success] Excellon file exported to %s" msgstr "[success] Excellon-Datei nach exportiert %s" -#: FlatCAMApp.py:7189 +#: FlatCAMApp.py:7195 msgid "Exporting Excellon" msgstr "Excellon exportieren" -#: FlatCAMApp.py:7194 FlatCAMApp.py:7201 +#: FlatCAMApp.py:7200 FlatCAMApp.py:7207 msgid "[ERROR_NOTCL] Could not export Excellon file." msgstr "[ERROR_NOTCL] Excellon-Datei konnte nicht exportiert werden." -#: FlatCAMApp.py:7299 +#: FlatCAMApp.py:7305 #, python-format msgid "[success] Gerber file exported to %s" msgstr "[success] Gerber-Datei in exportiert %s" -#: FlatCAMApp.py:7306 +#: FlatCAMApp.py:7312 msgid "Exporting Gerber" msgstr "Gerber exportieren" -#: FlatCAMApp.py:7311 FlatCAMApp.py:7318 +#: FlatCAMApp.py:7317 FlatCAMApp.py:7324 msgid "[ERROR_NOTCL] Could not export Gerber file." msgstr "[ERROR_NOTCL] Gerber-Datei konnte nicht exportiert werden." -#: FlatCAMApp.py:7358 +#: FlatCAMApp.py:7364 #, python-format msgid "[success] DXF file exported to %s" msgstr "[success] DXF-Datei in exportiert %s" -#: FlatCAMApp.py:7364 +#: FlatCAMApp.py:7370 msgid "Exporting DXF" msgstr "DXF exportieren" -#: FlatCAMApp.py:7369 FlatCAMApp.py:7376 +#: FlatCAMApp.py:7375 FlatCAMApp.py:7382 msgid "[[WARNING_NOTCL]] Could not export DXF file." msgstr "[WARNING_NOTCL] DXF-Datei konnte nicht exportiert werden." -#: FlatCAMApp.py:7396 FlatCAMApp.py:7438 FlatCAMApp.py:7482 +#: FlatCAMApp.py:7402 FlatCAMApp.py:7444 FlatCAMApp.py:7488 msgid "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" @@ -912,99 +916,99 @@ msgstr "" "[ERROR_NOTCL] Nicht unterstützte Art wird als Parameter ausgewählt. Nur " "Geometrie und Gerber werden unterstützt" -#: FlatCAMApp.py:7406 +#: FlatCAMApp.py:7412 msgid "Importing SVG" msgstr "SVG importieren" -#: FlatCAMApp.py:7417 FlatCAMApp.py:7459 FlatCAMApp.py:7502 FlatCAMApp.py:7579 -#: FlatCAMApp.py:7640 FlatCAMApp.py:7703 flatcamTools/ToolPDF.py:212 +#: FlatCAMApp.py:7423 FlatCAMApp.py:7465 FlatCAMApp.py:7508 FlatCAMApp.py:7585 +#: FlatCAMApp.py:7646 FlatCAMApp.py:7709 flatcamTools/ToolPDF.py:212 #, python-format msgid "[success] Opened: %s" msgstr "[success] Geöffnet: %s" -#: FlatCAMApp.py:7448 +#: FlatCAMApp.py:7454 msgid "Importing DXF" msgstr "DXF importieren" -#: FlatCAMApp.py:7490 +#: FlatCAMApp.py:7496 msgid "Importing Image" msgstr "Bild importieren" -#: FlatCAMApp.py:7531 FlatCAMApp.py:7533 +#: FlatCAMApp.py:7537 FlatCAMApp.py:7539 #, python-format msgid "[ERROR_NOTCL] Failed to open file: %s" msgstr "[ERROR_NOTCL] Datei konnte nicht geöffnet werden: %s" -#: FlatCAMApp.py:7536 +#: FlatCAMApp.py:7542 #, python-brace-format msgid "[ERROR_NOTCL] Failed to parse file: {name}. {error}" msgstr "[ERROR_NOTCL] Fehler beim Parsen der Datei: {name}. {error}" -#: FlatCAMApp.py:7543 FlatCAMObj.py:4230 +#: FlatCAMApp.py:7549 FlatCAMObj.py:4239 #: flatcamEditors/FlatCAMExcEditor.py:2077 msgid "[ERROR] An internal error has ocurred. See shell.\n" msgstr "[ERROR] Ein interner Fehler ist aufgetreten. Siehe Shell.\n" -#: FlatCAMApp.py:7552 +#: FlatCAMApp.py:7558 msgid "" "[ERROR_NOTCL] Object is not Gerber file or empty. Aborting object creation." msgstr "" "[ERROR_NOTCL] Objekt ist keine Gerber-Datei oder leer. Abbruch der " "Objekterstellung" -#: FlatCAMApp.py:7560 +#: FlatCAMApp.py:7566 msgid "Opening Gerber" msgstr "Gerber öffnen" -#: FlatCAMApp.py:7570 +#: FlatCAMApp.py:7576 msgid "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." msgstr "" "[ERROR_NOTCL] Gerber öffnen ist fehlgeschlagen. Wahrscheinlich keine Gerber-" "Datei." -#: FlatCAMApp.py:7603 flatcamTools/ToolPcbWizard.py:421 +#: FlatCAMApp.py:7609 flatcamTools/ToolPcbWizard.py:421 msgid "[ERROR_NOTCL] This is not Excellon file." msgstr "[ERROR_NOTCL] Dies ist keine Excellon-Datei." -#: FlatCAMApp.py:7606 +#: FlatCAMApp.py:7612 #, python-format msgid "[ERROR_NOTCL] Cannot open file: %s" msgstr "[ERROR_NOTCL] Kann Datei nicht öffnen: %s" -#: FlatCAMApp.py:7611 flatcamTools/ToolPcbWizard.py:429 +#: FlatCAMApp.py:7617 flatcamTools/ToolPcbWizard.py:429 msgid "[ERROR_NOTCL] An internal error has occurred. See shell.\n" msgstr "[ERROR_NOTCL] Ein interner Fehler ist aufgetreten. Siehe Shell.\n" -#: FlatCAMApp.py:7624 flatcamTools/ToolPDF.py:262 +#: FlatCAMApp.py:7630 flatcamTools/ToolPDF.py:262 #: flatcamTools/ToolPcbWizard.py:442 #, python-format msgid "[ERROR_NOTCL] No geometry found in file: %s" msgstr "[ERROR_NOTCL] Keine Geometrie in der Datei gefunden: %s" -#: FlatCAMApp.py:7627 +#: FlatCAMApp.py:7633 msgid "Opening Excellon." msgstr "Eröffnung Excellon." -#: FlatCAMApp.py:7633 +#: FlatCAMApp.py:7639 msgid "[ERROR_NOTCL] Open Excellon file failed. Probable not an Excellon file." msgstr "" "[ERROR_NOTCL] Die Excellon-Datei konnte nicht geöffnet werden. " "Wahrscheinlich keine Excellon-Datei." -#: FlatCAMApp.py:7670 +#: FlatCAMApp.py:7676 #, python-format msgid "[ERROR_NOTCL] Failed to open %s" msgstr "[ERROR_NOTCL] Gescheitert zu öffnen %s" -#: FlatCAMApp.py:7680 +#: FlatCAMApp.py:7686 msgid "[ERROR_NOTCL] This is not GCODE" msgstr "[ERROR_NOTCL] Dies ist kein GCODE" -#: FlatCAMApp.py:7686 +#: FlatCAMApp.py:7692 msgid "Opening G-Code." msgstr "G-Code öffnen." -#: FlatCAMApp.py:7694 +#: FlatCAMApp.py:7700 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 " @@ -1015,26 +1019,26 @@ msgstr "" "Der Versuch, ein FlatCAM-CNCJob-Objekt aus einer G-Code-Datei zu erstellen, " "ist während der Verarbeitung fehlgeschlagen" -#: FlatCAMApp.py:7734 +#: FlatCAMApp.py:7740 #, python-format msgid "[ERROR_NOTCL] Failed to open config file: %s" msgstr "[ERROR_NOTCL] Fehler beim Öffnen der Konfigurationsdatei: %s" -#: FlatCAMApp.py:7760 FlatCAMApp.py:7777 +#: FlatCAMApp.py:7766 FlatCAMApp.py:7783 #, python-format msgid "[ERROR_NOTCL] Failed to open project file: %s" msgstr "[ERROR_NOTCL] Projektdatei konnte nicht geöffnet werden: %s" -#: FlatCAMApp.py:7800 +#: FlatCAMApp.py:7806 #, python-format msgid "[success] Project loaded from: %s" msgstr "[success] Projekt geladen von: %s" -#: FlatCAMApp.py:7905 +#: FlatCAMApp.py:7911 msgid "Available commands:\n" msgstr "Verfügbare Befehle:\n" -#: FlatCAMApp.py:7907 +#: FlatCAMApp.py:7913 msgid "" "\n" "\n" @@ -1046,28 +1050,28 @@ msgstr "" "Geben Sie help für die Verwendung ein.\n" "Beispiel: help open_gerber" -#: FlatCAMApp.py:8057 +#: FlatCAMApp.py:8063 msgid "Shows list of commands." msgstr "Zeigt eine Liste von Befehlen an." -#: FlatCAMApp.py:8114 +#: FlatCAMApp.py:8120 msgid "[ERROR_NOTCL] Failed to load recent item list." msgstr "[ERROR_NOTCL] Fehler beim Laden der letzten Elementliste." -#: FlatCAMApp.py:8121 +#: FlatCAMApp.py:8127 msgid "[ERROR_NOTCL] Failed to parse recent item list." msgstr "" "[ERROR_NOTCL] Liste der letzten Artikel konnte nicht analysiert werden." -#: FlatCAMApp.py:8165 +#: FlatCAMApp.py:8171 msgid "Clear Recent files" msgstr "Letzte Dateien löschen" -#: FlatCAMApp.py:8182 flatcamGUI/FlatCAMGUI.py:968 +#: FlatCAMApp.py:8188 flatcamGUI/FlatCAMGUI.py:968 msgid "Shortcut Key List" msgstr " Liste der Tastenkombinationen " -#: FlatCAMApp.py:8189 +#: FlatCAMApp.py:8195 msgid "" "\n" "

Selected Tab - Choose an Item from " @@ -1167,27 +1171,27 @@ msgstr "" "strong> oder über eine eigene Tastenkombination: F3. " "

" -#: FlatCAMApp.py:8293 +#: FlatCAMApp.py:8302 msgid "[WARNING_NOTCL] Failed checking for latest version. Could not connect." msgstr "" "[WARNING_NOTCL] Fehler bei der Suche nach der neuesten Version. Konnte keine " "Verbindung herstellen." -#: FlatCAMApp.py:8300 +#: FlatCAMApp.py:8309 msgid "[ERROR_NOTCL] Could not parse information about latest version." msgstr "" "[ERROR_NOTCL] Informationen zur neuesten Version konnten nicht analysiert " "werden." -#: FlatCAMApp.py:8310 +#: FlatCAMApp.py:8319 msgid "[success] FlatCAM is up to date!" msgstr "[success] FlatCAM ist auf dem neuesten Version!" -#: FlatCAMApp.py:8315 +#: FlatCAMApp.py:8324 msgid "Newer Version Available" msgstr "Neuere Version verfügbar" -#: FlatCAMApp.py:8316 +#: FlatCAMApp.py:8325 msgid "" "There is a newer version of FlatCAM available for download:\n" "\n" @@ -1195,97 +1199,97 @@ msgstr "" "Es gibt eine neuere Version von FlatCAM zum Download:\n" "\n" -#: FlatCAMApp.py:8318 +#: FlatCAMApp.py:8327 msgid "info" msgstr "Info" -#: FlatCAMApp.py:8337 +#: FlatCAMApp.py:8346 msgid "[success] All plots disabled." msgstr "[success] Alle Diagramme sind deaktiviert." -#: FlatCAMApp.py:8343 +#: FlatCAMApp.py:8352 msgid "[success] All non selected plots disabled." msgstr "[success] Alle nicht ausgewählten Diagramme sind deaktiviert." -#: FlatCAMApp.py:8349 +#: FlatCAMApp.py:8358 msgid "[success] All plots enabled." msgstr "[success] Alle Diagramme aktiviert." -#: FlatCAMApp.py:8355 +#: FlatCAMApp.py:8364 msgid "[success] Selected plots enabled..." msgstr "[success] Ausgewählte Grundstücke aktiviert ..." -#: FlatCAMApp.py:8363 +#: FlatCAMApp.py:8372 msgid "[success] Selected plots disabled..." msgstr "[success] Ausgewählte Grundstücke deaktiviert ..." -#: FlatCAMApp.py:8373 FlatCAMApp.py:8386 +#: FlatCAMApp.py:8382 FlatCAMApp.py:8395 msgid "Working ..." msgstr "Arbeiten ..." -#: FlatCAMApp.py:8420 +#: FlatCAMApp.py:8429 msgid "Saving FlatCAM Project" msgstr "FlatCAM-Projekt speichern" -#: FlatCAMApp.py:8441 FlatCAMApp.py:8472 +#: FlatCAMApp.py:8450 FlatCAMApp.py:8481 #, python-format msgid "[success] Project saved to: %s" msgstr "[success] Projekt gespeichert in: %s" -#: FlatCAMApp.py:8459 +#: FlatCAMApp.py:8468 #, python-format msgid "[ERROR_NOTCL] Failed to verify project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Fehler beim Überprüfen der Projektdatei:%s. Versuchen Sie es " "erneut zu speichern." -#: FlatCAMApp.py:8466 +#: FlatCAMApp.py:8475 #, python-format msgid "[ERROR_NOTCL] Failed to parse saved project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Die gespeicherte Projektdatei konnte nicht analysiert werden:" "%s. Versuchen Sie es erneut zu speichern." -#: FlatCAMApp.py:8474 +#: FlatCAMApp.py:8483 #, python-format msgid "[ERROR_NOTCL] Failed to save project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Projektdatei konnte nicht gespeichert werden:%s. Versuchen Sie " "es erneut zu speichern." -#: FlatCAMObj.py:202 +#: FlatCAMObj.py:207 #, python-brace-format msgid "[success] Name changed from {old} to {new}" msgstr "[success] Name geändert von {old} zu {new}" -#: FlatCAMObj.py:545 FlatCAMObj.py:2031 FlatCAMObj.py:3275 FlatCAMObj.py:5448 +#: FlatCAMObj.py:553 FlatCAMObj.py:2035 FlatCAMObj.py:3281 FlatCAMObj.py:5457 msgid "Basic" msgstr "Basic" -#: FlatCAMObj.py:557 FlatCAMObj.py:2047 FlatCAMObj.py:3297 FlatCAMObj.py:5454 +#: FlatCAMObj.py:565 FlatCAMObj.py:2051 FlatCAMObj.py:3303 FlatCAMObj.py:5463 msgid "Advanced" msgstr "Erweitert" -#: FlatCAMObj.py:920 FlatCAMObj.py:975 +#: FlatCAMObj.py:928 FlatCAMObj.py:983 #, python-format msgid "[success] Isolation geometry created: %s" msgstr "[success] Isolationsgeometrie erstellt: %s" -#: FlatCAMObj.py:1154 +#: FlatCAMObj.py:1162 msgid "Plotting Apertures" msgstr "Plotten Apertures" -#: FlatCAMObj.py:1870 flatcamEditors/FlatCAMExcEditor.py:1368 +#: FlatCAMObj.py:1878 flatcamEditors/FlatCAMExcEditor.py:1368 msgid "Total Drills" msgstr "Bohrungen insgesamt" -#: FlatCAMObj.py:1896 flatcamEditors/FlatCAMExcEditor.py:1400 +#: FlatCAMObj.py:1904 flatcamEditors/FlatCAMExcEditor.py:1400 msgid "Total Slots" msgstr "Schlitz insgesamt" -#: FlatCAMObj.py:2103 FlatCAMObj.py:3348 FlatCAMObj.py:3646 FlatCAMObj.py:3833 -#: FlatCAMObj.py:3846 FlatCAMObj.py:3963 FlatCAMObj.py:4380 FlatCAMObj.py:4618 -#: FlatCAMObj.py:5031 flatcamEditors/FlatCAMExcEditor.py:1474 +#: FlatCAMObj.py:2107 FlatCAMObj.py:3355 FlatCAMObj.py:3655 FlatCAMObj.py:3842 +#: FlatCAMObj.py:3855 FlatCAMObj.py:3972 FlatCAMObj.py:4389 FlatCAMObj.py:4627 +#: FlatCAMObj.py:5040 flatcamEditors/FlatCAMExcEditor.py:1474 #: flatcamTools/ToolCalculators.py:307 flatcamTools/ToolCalculators.py:318 #: flatcamTools/ToolCalculators.py:330 flatcamTools/ToolCalculators.py:345 #: flatcamTools/ToolCalculators.py:358 flatcamTools/ToolCalculators.py:372 @@ -1304,25 +1308,25 @@ msgstr "Schlitz insgesamt" msgid "[ERROR_NOTCL] Wrong value format entered, use a number." msgstr "[ERROR_NOTCL] Wrong value format entered, use a number." -#: FlatCAMObj.py:2327 FlatCAMObj.py:2418 FlatCAMObj.py:2540 +#: FlatCAMObj.py:2331 FlatCAMObj.py:2423 FlatCAMObj.py:2546 msgid "" "[ERROR_NOTCL] Please select one or more tools from the list and try again." msgstr "" "[ERROR_NOTCL] Bitte wählen Sie ein oder mehrere Werkzeuge aus der Liste aus " "und versuchen Sie es erneut." -#: FlatCAMObj.py:2334 +#: FlatCAMObj.py:2338 msgid "" "[ERROR_NOTCL] Milling tool for DRILLS is larger than hole size. Cancelled." msgstr "" "[ERROR_NOTCL] Das Fräswerkzeug für BOHRER ist größer als die Lochgröße. " "Abgebrochen." -#: FlatCAMObj.py:2348 FlatCAMObj.py:2442 FlatCAMObj.py:2560 +#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 msgid "Tool_nr" msgstr "Werkzeugnummer" -#: FlatCAMObj.py:2348 FlatCAMObj.py:2442 FlatCAMObj.py:2560 +#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 #: flatcamEditors/FlatCAMExcEditor.py:819 #: flatcamEditors/FlatCAMExcEditor.py:2020 flatcamGUI/ObjectUI.py:556 #: flatcamTools/ToolNonCopperClear.py:83 flatcamTools/ToolPaint.py:80 @@ -1330,22 +1334,22 @@ msgstr "Werkzeugnummer" msgid "Diameter" msgstr "Durchmesser" -#: FlatCAMObj.py:2348 FlatCAMObj.py:2442 FlatCAMObj.py:2560 +#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 msgid "Drills_Nr" msgstr "Bohrnummer" -#: FlatCAMObj.py:2348 FlatCAMObj.py:2442 FlatCAMObj.py:2560 +#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 msgid "Slots_Nr" msgstr "Schlitznummer" -#: FlatCAMObj.py:2428 +#: FlatCAMObj.py:2433 msgid "" "[ERROR_NOTCL] Milling tool for SLOTS is larger than hole size. Cancelled." msgstr "" "[ERROR_NOTCL] Das Fräswerkzeug für SCHLITZ ist größer als die Lochgröße. " "Abgebrochen." -#: FlatCAMObj.py:2602 FlatCAMObj.py:4268 FlatCAMObj.py:4484 FlatCAMObj.py:4801 +#: FlatCAMObj.py:2608 FlatCAMObj.py:4277 FlatCAMObj.py:4493 FlatCAMObj.py:4810 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"z_pdepth\"] or self." "options[\"z_pdepth\"]" @@ -1353,7 +1357,7 @@ msgstr "" "[ERROR_NOTCL] Falsches Wertformat für self.defaults [\"z_pdepth\"] oder self." "options [\"z_pdepth\"]" -#: FlatCAMObj.py:2614 FlatCAMObj.py:4280 FlatCAMObj.py:4496 FlatCAMObj.py:4813 +#: FlatCAMObj.py:2620 FlatCAMObj.py:4289 FlatCAMObj.py:4505 FlatCAMObj.py:4822 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"feedrate_probe\"] or " "self.options[\"feedrate_probe\"]" @@ -1361,12 +1365,12 @@ msgstr "" "[ERROR_NOTCL] Falsches Wertformat für self.defaults [\"feedrate_probe\"] " "oder self.options [\"feedrate_probe\"]" -#: FlatCAMObj.py:2646 FlatCAMObj.py:4689 FlatCAMObj.py:4694 FlatCAMObj.py:4844 +#: FlatCAMObj.py:2652 FlatCAMObj.py:4698 FlatCAMObj.py:4703 FlatCAMObj.py:4853 msgid "Generating CNC Code" msgstr "CNC-Code generieren" -#: FlatCAMObj.py:2672 FlatCAMObj.py:4990 camlib.py:5164 camlib.py:5623 -#: camlib.py:5886 +#: FlatCAMObj.py:2678 FlatCAMObj.py:4999 camlib.py:5167 camlib.py:5626 +#: camlib.py:5889 msgid "" "[ERROR]The Toolchange X,Y field in Edit -> Preferences has to be in the " "format (x, y) \n" @@ -1376,62 +1380,62 @@ msgstr "" "muss das Format (x, y) haben.\n" "Aber jetzt gibt es nur einen Wert, nicht zwei." -#: FlatCAMObj.py:2984 FlatCAMObj.py:3889 FlatCAMObj.py:3890 FlatCAMObj.py:3899 +#: FlatCAMObj.py:2990 FlatCAMObj.py:3898 FlatCAMObj.py:3899 FlatCAMObj.py:3908 msgid "Iso" msgstr "Iso" -#: FlatCAMObj.py:2984 FlatCAMObj.py:3233 FlatCAMObj.py:3513 +#: FlatCAMObj.py:2990 FlatCAMObj.py:3239 FlatCAMObj.py:3520 msgid "Rough" msgstr "Rau" -#: FlatCAMObj.py:2984 +#: FlatCAMObj.py:2990 msgid "Finish" msgstr "Oberfläche" -#: FlatCAMObj.py:3268 flatcamGUI/FlatCAMGUI.py:526 flatcamGUI/FlatCAMGUI.py:722 +#: FlatCAMObj.py:3274 flatcamGUI/FlatCAMGUI.py:526 flatcamGUI/FlatCAMGUI.py:722 #: flatcamGUI/FlatCAMGUI.py:1615 flatcamGUI/FlatCAMGUI.py:1951 #: flatcamGUI/ObjectUI.py:999 msgid "Copy" msgstr "Kopieren" -#: FlatCAMObj.py:3483 +#: FlatCAMObj.py:3490 msgid "[ERROR_NOTCL] Please enter the desired tool diameter in Float format." msgstr "" "[ERROR_NOTCL] Bitte geben Sie den gewünschten Werkzeugdurchmesser im Real-" "Format ein." -#: FlatCAMObj.py:3556 +#: FlatCAMObj.py:3565 msgid "[success] Tool added in Tool Table." msgstr "[success] Werkzeug in der Werkzeugtabelle hinzugefügt." -#: FlatCAMObj.py:3561 +#: FlatCAMObj.py:3570 msgid "[ERROR_NOTCL] Default Tool added. Wrong value format entered." msgstr "" "[ERROR_NOTCL] Standardwerkzeug hinzugefügt Falsches Wertformat eingegeben." -#: FlatCAMObj.py:3591 FlatCAMObj.py:3601 +#: FlatCAMObj.py:3600 FlatCAMObj.py:3610 msgid "[WARNING_NOTCL] Failed. Select a tool to copy." msgstr "" "[WARNING_NOTCL] Fehlgeschlagen. Wählen Sie ein Werkzeug zum Kopieren aus." -#: FlatCAMObj.py:3630 +#: FlatCAMObj.py:3639 msgid "[success] Tool was copied in Tool Table." msgstr "[success] Das Werkzeug wurde in die Werkzeugtabelle kopiert." -#: FlatCAMObj.py:3663 +#: FlatCAMObj.py:3672 msgid "[success] Tool was edited in Tool Table." msgstr "[success] Das Werkzeug wurde in der Werkzeugtabelle bearbeitet." -#: FlatCAMObj.py:3694 FlatCAMObj.py:3704 +#: FlatCAMObj.py:3703 FlatCAMObj.py:3713 msgid "[WARNING_NOTCL] Failed. Select a tool to delete." msgstr "" "[WARNING_NOTCL] Fehlgeschlagen. Wählen Sie ein Werkzeug zum Löschen aus." -#: FlatCAMObj.py:3728 +#: FlatCAMObj.py:3737 msgid "[success] Tool was deleted in Tool Table." msgstr "[success] Werkzeug wurde in der Werkzeugtabelle gelöscht." -#: FlatCAMObj.py:4149 +#: FlatCAMObj.py:4158 #, python-format msgid "" "[WARNING_NOTCL] This Geometry can't be processed because it is %s geometry." @@ -1439,24 +1443,24 @@ msgstr "" "[WARNING_NOTCL] Diese Geometrie kann nicht verarbeitet werden, da es sich um " "%s Geometrie handelt." -#: FlatCAMObj.py:4166 +#: FlatCAMObj.py:4175 msgid "[ERROR_NOTCL] Wrong Tool Dia value format entered, use a number." msgstr "" "[ERROR_NOTCL] Falsches Werkzeug Dia-Wertformat eingegeben, verwenden Sie " "eine Zahl." -#: FlatCAMObj.py:4193 +#: FlatCAMObj.py:4202 msgid "[ERROR_NOTCL] Failed. No tool selected in the tool table ..." msgstr "" "[ERROR_NOTCL] Gescheitert. Kein Werkzeug in der Werkzeugtabelle " "ausgewählt ..." -#: FlatCAMObj.py:4231 +#: FlatCAMObj.py:4240 #, python-format msgid "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" msgstr "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" -#: FlatCAMObj.py:4389 FlatCAMObj.py:4627 +#: FlatCAMObj.py:4398 FlatCAMObj.py:4636 msgid "" "[WARNING] Tool Offset is selected in Tool Table but no value is provided.\n" "Add a Tool Offset or change the Offset Type." @@ -1465,22 +1469,22 @@ msgstr "" "jedoch kein Wert angegeben.\n" "Fügen Sie einen Werkzeugversatz hinzu oder ändern Sie den Versatztyp." -#: FlatCAMObj.py:4508 flatcamTools/ToolSolderPaste.py:1107 +#: FlatCAMObj.py:4517 flatcamTools/ToolSolderPaste.py:1107 #: flatcamTools/ToolSolderPaste.py:1162 msgid "[ERROR_NOTCL] Cancelled. Empty file, it has no geometry..." msgstr "[ERROR_NOTCL] Cancelled. Empty file, it has no geometry..." -#: FlatCAMObj.py:4877 FlatCAMObj.py:4887 camlib.py:3347 camlib.py:3356 +#: FlatCAMObj.py:4886 FlatCAMObj.py:4896 camlib.py:3348 camlib.py:3357 msgid "[ERROR_NOTCL] Scale factor has to be a number: integer or float." msgstr "" "[ERROR_NOTCL] Der Skalierungsfaktor muss eine Zahl sein: Ganzzahl oder " "Fließkommazahl." -#: FlatCAMObj.py:4925 +#: FlatCAMObj.py:4934 msgid "[success] Geometry Scale done." msgstr "[success] Geometrie Skalierung fertig." -#: FlatCAMObj.py:4942 camlib.py:3425 +#: FlatCAMObj.py:4951 camlib.py:3426 msgid "" "[ERROR_NOTCL] An (x,y) pair of values are needed. Probable you entered only " "one value in the Offset field." @@ -1488,29 +1492,29 @@ msgstr "" "[ERROR_NOTCL] Ein (x, y) Wertepaar wird benötigt. Wahrscheinlich haben Sie " "im Feld Offset nur einen Wert eingegeben." -#: FlatCAMObj.py:4962 +#: FlatCAMObj.py:4971 msgid "[success] Geometry Offset done." msgstr "[success] Geometrie Offset fertig." -#: FlatCAMObj.py:5516 FlatCAMObj.py:5521 flatcamTools/ToolSolderPaste.py:1361 +#: FlatCAMObj.py:5525 FlatCAMObj.py:5530 flatcamTools/ToolSolderPaste.py:1361 msgid "Export Machine Code ..." msgstr "Maschinencode exportieren ..." -#: FlatCAMObj.py:5527 flatcamTools/ToolSolderPaste.py:1364 +#: FlatCAMObj.py:5536 flatcamTools/ToolSolderPaste.py:1364 msgid "[WARNING_NOTCL] Export Machine Code cancelled ..." msgstr "[WARNING_NOTCL] Export Machine Code cancelled ..." -#: FlatCAMObj.py:5540 +#: FlatCAMObj.py:5549 #, python-format msgid "[success] Machine Code file saved to: %s" msgstr "[success] Maschinencode-Datei gespeichert in: %s" -#: FlatCAMObj.py:5562 +#: FlatCAMObj.py:5571 #, python-format msgid "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" msgstr "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" -#: FlatCAMObj.py:5679 +#: FlatCAMObj.py:5688 #, python-format msgid "" "[WARNING_NOTCL] This CNCJob object can't be processed because it is a %s " @@ -1519,11 +1523,11 @@ msgstr "" "[WARNING_NOTCL] Dieses CNC-Auftrag Objekt kann nicht verarbeitet werden, da " "es sich um ein %s CNC-Auftrag Objekt handelt." -#: FlatCAMObj.py:5732 +#: FlatCAMObj.py:5741 msgid "[ERROR_NOTCL] G-code does not have a units code: either G20 or G21" msgstr "[ERROR_NOTCL] G-Code hat keinen Einheitencode: entweder G20 oder G21" -#: FlatCAMObj.py:5745 +#: FlatCAMObj.py:5754 msgid "" "[ERROR_NOTCL] Cancelled. The Toolchange Custom code is enabled but it's " "empty." @@ -1531,17 +1535,17 @@ msgstr "" "[ERROR_NOTCL] Abgebrochen. Der benutzerdefinierte Code zum Ändern des " "Werkzeugs ist aktiviert, aber er ist leer." -#: FlatCAMObj.py:5752 +#: FlatCAMObj.py:5761 msgid "[success] Toolchange G-code was replaced by a custom code." msgstr "" "[success] Der Werkzeugwechsel-G-Code wurde durch einen benutzerdefinierten " "Code ersetzt." -#: FlatCAMObj.py:5767 flatcamTools/ToolSolderPaste.py:1390 +#: FlatCAMObj.py:5776 flatcamTools/ToolSolderPaste.py:1390 msgid "[WARNING_NOTCL] No such file or directory" msgstr "[WARNING_NOTCL] Keine solche Datei oder Ordner" -#: FlatCAMObj.py:5787 FlatCAMObj.py:5799 +#: FlatCAMObj.py:5796 FlatCAMObj.py:5808 msgid "" "[WARNING_NOTCL] The used postprocessor file has to have in it's name: " "'toolchange_custom'" @@ -1549,7 +1553,7 @@ msgstr "" "[WARNING_NOTCL] Die verwendete Postprozessor-Datei muss im Namen enthalten " "sein: 'toolchange_custom'" -#: FlatCAMObj.py:5805 +#: FlatCAMObj.py:5814 msgid "[ERROR] There is no postprocessor file." msgstr "[ERROR] Es gibt keine Postprozessor-Datei." @@ -1592,18 +1596,18 @@ msgstr "[success] Objekt war schief ..." msgid "[ERROR_NOTCL] Failed to skew. No object selected" msgstr "[ERROR_NOTCL] Fehler beim Neigen Kein Objekt ausgewählt" -#: camlib.py:2727 camlib.py:2812 +#: camlib.py:2728 camlib.py:2813 #, python-format msgid "[WARNING] Coordinates missing, line ignored: %s" msgstr "[WARNING] Koordinaten fehlen, Zeile wird ignoriert: %s" -#: camlib.py:2728 camlib.py:2813 +#: camlib.py:2729 camlib.py:2814 msgid "[WARNING_NOTCL] GERBER file might be CORRUPT. Check the file !!!" msgstr "" "[WARNING_NOTCL] Die GERBER-Datei könnte CORRUPT sein. Überprüfen Sie die " "Datei !!!" -#: camlib.py:2777 +#: camlib.py:2778 #, python-format msgid "" "[ERROR] Region does not have enough points. File will be processed but there " @@ -1612,7 +1616,7 @@ msgstr "" "[ERROR] Region hat nicht genug Punkte. Die Datei wird verarbeitet, es treten " "jedoch Parserfehler auf. Linien Nummer: %s" -#: camlib.py:3169 +#: camlib.py:3170 #, python-format msgid "" "[ERROR]Gerber Parser ERROR.\n" @@ -1621,32 +1625,32 @@ msgstr "" "[ERROR] Gerber Parser ERROR.\n" "%s:" -#: camlib.py:3393 +#: camlib.py:3394 msgid "[success] Gerber Scale done." msgstr "[success] Gerber-Skalierung abgeschlossen." -#: camlib.py:3458 +#: camlib.py:3459 msgid "[success] Gerber Offset done." msgstr "[success] Gerber Offset fertig." -#: camlib.py:3512 +#: camlib.py:3513 msgid "[success] Gerber Mirror done." msgstr "[success] Gerber Mirror fertig." -#: camlib.py:3558 +#: camlib.py:3559 msgid "[success] Gerber Skew done." msgstr "[success] Gerber-Versatz fertig." -#: camlib.py:3596 +#: camlib.py:3597 msgid "[success] Gerber Rotate done." msgstr "[success] Gerber drehen fertig." -#: camlib.py:3875 +#: camlib.py:3878 #, python-format msgid "[ERROR_NOTCL] This is GCODE mark: %s" msgstr "[ERROR_NOTCL] Dies ist die GCODE-Marke: %s" -#: camlib.py:3990 +#: camlib.py:3993 #, python-format msgid "" "[WARNING] No tool diameter info's. See shell.\n" @@ -1663,7 +1667,7 @@ msgstr "" "Der Benutzer muss das resultierende Excellon-Objekt bearbeiten und die " "Durchmesser ändern, um die tatsächlichen Durchmesser widerzuspiegeln." -#: camlib.py:4455 +#: camlib.py:4458 #, python-brace-format msgid "" "[ERROR] Excellon Parser error.\n" @@ -1672,7 +1676,7 @@ msgstr "" "[ERROR] Fehler beim Excellon-Parser.\n" "Parsing fehlgeschlagen. Zeile {l_nr}: {line}\n" -#: camlib.py:4534 +#: camlib.py:4537 msgid "" "[WARNING] Excellon.create_geometry() -> a drill location was skipped due of " "not having a tool associated.\n" @@ -1682,12 +1686,12 @@ msgstr "" "da kein Werkzeug zugeordnet wurde.\n" "Überprüfen Sie den resultierenden GCode." -#: camlib.py:5073 +#: camlib.py:5076 #, python-format msgid "[ERROR] There is no such parameter: %s" msgstr "[ERROR] Es gibt keinen solchen Parameter: %s" -#: camlib.py:5143 +#: camlib.py:5146 msgid "" "[WARNING] The Cut Z parameter has positive value. It is the depth value to " "drill into material.\n" @@ -1702,7 +1706,7 @@ msgstr "" "einen negativen Wert. \n" "Überprüfen Sie den resultierenden CNC-Code (Gcode usw.)." -#: camlib.py:5150 camlib.py:5646 camlib.py:5909 +#: camlib.py:5153 camlib.py:5649 camlib.py:5912 #, python-format msgid "" "[WARNING] The Cut Z parameter is zero. There will be no cut, skipping %s file" @@ -1710,15 +1714,15 @@ msgstr "" "[WARNING] Der Parameter Cut Z ist Null. Es wird kein Schnitt ausgeführt, da " "die %s Datei übersprungen wird" -#: camlib.py:5379 camlib.py:5476 camlib.py:5534 +#: camlib.py:5382 camlib.py:5479 camlib.py:5537 msgid "[ERROR_NOTCL] The loaded Excellon file has no drills ..." msgstr "[ERROR_NOTCL] Die geladene Excellon-Datei hat keine Bohrer ..." -#: camlib.py:5481 +#: camlib.py:5484 msgid "[ERROR_NOTCL] Wrong optimization type selected." msgstr "[ERROR_NOTCL] Falscher Optimierungstyp ausgewählt." -#: camlib.py:5634 camlib.py:5897 +#: camlib.py:5637 camlib.py:5900 msgid "" "[ERROR_NOTCL] Cut_Z parameter is None or zero. Most likely a bad " "combinations of other parameters." @@ -1726,7 +1730,7 @@ msgstr "" "[ERROR_NOTCL] Der Parameter Cut_Z ist None oder Null. Höchstwahrscheinlich " "eine schlechte Kombination anderer Parameter." -#: camlib.py:5639 camlib.py:5902 +#: camlib.py:5642 camlib.py:5905 msgid "" "[WARNING] The Cut Z parameter has positive value. It is the depth value to " "cut into material.\n" @@ -1741,11 +1745,11 @@ msgstr "" "einen negativen Wert. \n" "Überprüfen Sie den resultierenden CNC-Code (Gcode usw.)." -#: camlib.py:5651 camlib.py:5914 +#: camlib.py:5654 camlib.py:5917 msgid "[ERROR_NOTCL] Travel Z parameter is None or zero." msgstr "[ERROR_NOTCL] Der Parameter für den Travel Z ist Kein oder Null." -#: camlib.py:5655 camlib.py:5918 +#: camlib.py:5658 camlib.py:5921 msgid "" "[WARNING] The Travel Z parameter has negative value. It is the height value " "to travel between cuts.\n" @@ -1759,7 +1763,7 @@ msgstr "" "einen Tippfehler handelt, konvertiert die App den Wert in einen positiven " "Wert. Überprüfen Sie den resultierenden CNC-Code (Gcode usw.)." -#: camlib.py:5662 camlib.py:5925 +#: camlib.py:5665 camlib.py:5928 #, python-format msgid "" "[WARNING] The Z Travel parameter is zero. This is dangerous, skipping %s file" @@ -1767,12 +1771,12 @@ msgstr "" "[WARNING] Der Parameter Z-Weg ist Null. Dies ist gefährlich, da die %s Datei " "übersprungen wird" -#: camlib.py:5792 +#: camlib.py:5795 #, python-format msgid "[ERROR]Expected a Geometry, got %s" msgstr "[ERROR] Eine Geometrie erwartet,%s erhalten" -#: camlib.py:5798 +#: camlib.py:5801 msgid "" "[ERROR_NOTCL] Trying to generate a CNC Job from a Geometry object without " "solid_geometry." @@ -1780,7 +1784,7 @@ msgstr "" "[ERROR_NOTCL] Der Versuch, einen CNC-Auftrag aus einem Geometrieobjekt ohne " "solid_geometry zu generieren." -#: camlib.py:5837 +#: camlib.py:5840 msgid "" "[ERROR_NOTCL] The Tool Offset value is too negative to use for the " "current_geometry.\n" @@ -1790,7 +1794,7 @@ msgstr "" "current_geometry zu verwenden.\n" "Erhöhen Sie den Wert (im Modul) und versuchen Sie es erneut." -#: camlib.py:6049 +#: camlib.py:6052 msgid "[ERROR_NOTCL] There is no tool data in the SolderPaste geometry." msgstr "" "[ERROR_NOTCL] In der SolderPaste-Geometrie sind keine Werkzeugdaten " @@ -2048,7 +2052,7 @@ msgstr "Abstand = Abstand zwischen Elementen des Arrays." #: flatcamEditors/FlatCAMGeoEditor.py:665 #: flatcamEditors/FlatCAMGrbEditor.py:2550 #: flatcamEditors/FlatCAMGrbEditor.py:2586 -#: flatcamEditors/FlatCAMGrbEditor.py:4580 flatcamGUI/FlatCAMGUI.py:5107 +#: flatcamEditors/FlatCAMGrbEditor.py:4588 flatcamGUI/FlatCAMGUI.py:5107 #: flatcamTools/ToolTransform.py:68 msgid "Angle:" msgstr "Winkel:" @@ -2131,7 +2135,7 @@ msgid "[success] Done. Drill(s) deleted." msgstr "[success] Erledigt. Bohrer gelöscht." #: flatcamEditors/FlatCAMExcEditor.py:2705 -#: flatcamEditors/FlatCAMGrbEditor.py:4340 +#: flatcamEditors/FlatCAMGrbEditor.py:4350 msgid "Click on the circular array Center position" msgstr "Klicken Sie auf die kreisförmige Anordnung in der Mitte" @@ -2198,7 +2202,7 @@ msgstr "Pufferwerkzeug" #: flatcamEditors/FlatCAMGeoEditor.py:2700 #: flatcamEditors/FlatCAMGeoEditor.py:2726 #: flatcamEditors/FlatCAMGeoEditor.py:2752 -#: flatcamEditors/FlatCAMGrbEditor.py:4392 +#: flatcamEditors/FlatCAMGrbEditor.py:4402 msgid "" "[WARNING_NOTCL] Buffer distance value is missing or wrong format. Add it and " "retry." @@ -2376,53 +2380,53 @@ msgstr "Werkzeuge" #: flatcamEditors/FlatCAMGeoEditor.py:617 #: flatcamEditors/FlatCAMGeoEditor.py:990 -#: flatcamEditors/FlatCAMGrbEditor.py:4531 -#: flatcamEditors/FlatCAMGrbEditor.py:4916 flatcamGUI/FlatCAMGUI.py:654 +#: flatcamEditors/FlatCAMGrbEditor.py:4539 +#: flatcamEditors/FlatCAMGrbEditor.py:4924 flatcamGUI/FlatCAMGUI.py:654 #: flatcamGUI/FlatCAMGUI.py:1879 flatcamTools/ToolTransform.py:398 msgid "Transform Tool" msgstr "Werkzeug Umwandeln" #: flatcamEditors/FlatCAMGeoEditor.py:618 #: flatcamEditors/FlatCAMGeoEditor.py:679 -#: flatcamEditors/FlatCAMGrbEditor.py:4532 -#: flatcamEditors/FlatCAMGrbEditor.py:4594 flatcamTools/ToolTransform.py:24 +#: flatcamEditors/FlatCAMGrbEditor.py:4540 +#: flatcamEditors/FlatCAMGrbEditor.py:4602 flatcamTools/ToolTransform.py:24 #: flatcamTools/ToolTransform.py:82 msgid "Rotate" msgstr "Drehen" #: flatcamEditors/FlatCAMGeoEditor.py:619 -#: flatcamEditors/FlatCAMGrbEditor.py:4533 flatcamTools/ToolTransform.py:25 +#: flatcamEditors/FlatCAMGrbEditor.py:4541 flatcamTools/ToolTransform.py:25 msgid "Skew/Shear" msgstr "Neigung/Schere" #: flatcamEditors/FlatCAMGeoEditor.py:620 #: flatcamEditors/FlatCAMGrbEditor.py:2471 -#: flatcamEditors/FlatCAMGrbEditor.py:4534 flatcamGUI/FlatCAMGUI.py:718 +#: flatcamEditors/FlatCAMGrbEditor.py:4542 flatcamGUI/FlatCAMGUI.py:718 #: flatcamGUI/FlatCAMGUI.py:1947 flatcamGUI/ObjectUI.py:100 #: flatcamTools/ToolTransform.py:26 msgid "Scale" msgstr "Skalieren" #: flatcamEditors/FlatCAMGeoEditor.py:621 -#: flatcamEditors/FlatCAMGrbEditor.py:4535 flatcamTools/ToolTransform.py:27 +#: flatcamEditors/FlatCAMGrbEditor.py:4543 flatcamTools/ToolTransform.py:27 msgid "Mirror (Flip)" msgstr "Spiegeln (Flip)" #: flatcamEditors/FlatCAMGeoEditor.py:622 -#: flatcamEditors/FlatCAMGrbEditor.py:4536 flatcamGUI/ObjectUI.py:127 +#: flatcamEditors/FlatCAMGrbEditor.py:4544 flatcamGUI/ObjectUI.py:127 #: flatcamGUI/ObjectUI.py:891 flatcamGUI/ObjectUI.py:1465 #: flatcamTools/ToolTransform.py:28 msgid "Offset" msgstr "Versatz" #: flatcamEditors/FlatCAMGeoEditor.py:633 -#: flatcamEditors/FlatCAMGrbEditor.py:4548 +#: flatcamEditors/FlatCAMGrbEditor.py:4556 #, python-format msgid "Editor %s" msgstr "Editor %s" #: flatcamEditors/FlatCAMGeoEditor.py:667 -#: flatcamEditors/FlatCAMGrbEditor.py:4582 flatcamTools/ToolTransform.py:70 +#: flatcamEditors/FlatCAMGrbEditor.py:4590 flatcamTools/ToolTransform.py:70 msgid "" "Angle for Rotation action, in degrees.\n" "Float number between -360 and 359.\n" @@ -2435,7 +2439,7 @@ msgstr "" "Negative Zahlen für CCW-Bewegung." #: flatcamEditors/FlatCAMGeoEditor.py:681 -#: flatcamEditors/FlatCAMGrbEditor.py:4596 +#: flatcamEditors/FlatCAMGrbEditor.py:4604 msgid "" "Rotate the selected shape(s).\n" "The point of reference is the middle of\n" @@ -2446,14 +2450,14 @@ msgstr "" "der Begrenzungsrahmen für alle ausgewählten Formen." #: flatcamEditors/FlatCAMGeoEditor.py:704 -#: flatcamEditors/FlatCAMGrbEditor.py:4619 flatcamTools/ToolTransform.py:107 +#: flatcamEditors/FlatCAMGrbEditor.py:4627 flatcamTools/ToolTransform.py:107 msgid "Angle X:" msgstr "Winkel X:" #: flatcamEditors/FlatCAMGeoEditor.py:706 #: flatcamEditors/FlatCAMGeoEditor.py:724 -#: flatcamEditors/FlatCAMGrbEditor.py:4621 -#: flatcamEditors/FlatCAMGrbEditor.py:4639 flatcamTools/ToolTransform.py:109 +#: flatcamEditors/FlatCAMGrbEditor.py:4629 +#: flatcamEditors/FlatCAMGrbEditor.py:4647 flatcamTools/ToolTransform.py:109 #: flatcamTools/ToolTransform.py:127 msgid "" "Angle for Skew action, in degrees.\n" @@ -2463,14 +2467,14 @@ msgstr "" "Float-Nummer zwischen -360 und 359." #: flatcamEditors/FlatCAMGeoEditor.py:715 -#: flatcamEditors/FlatCAMGrbEditor.py:4630 flatcamTools/ToolTransform.py:118 +#: flatcamEditors/FlatCAMGrbEditor.py:4638 flatcamTools/ToolTransform.py:118 msgid "Skew X" msgstr "Neigung X" #: flatcamEditors/FlatCAMGeoEditor.py:717 #: flatcamEditors/FlatCAMGeoEditor.py:735 -#: flatcamEditors/FlatCAMGrbEditor.py:4632 -#: flatcamEditors/FlatCAMGrbEditor.py:4650 +#: flatcamEditors/FlatCAMGrbEditor.py:4640 +#: flatcamEditors/FlatCAMGrbEditor.py:4658 msgid "" "Skew/shear the selected shape(s).\n" "The point of reference is the middle of\n" @@ -2481,34 +2485,34 @@ msgstr "" "der Begrenzungsrahmen für alle ausgewählten Formen." #: flatcamEditors/FlatCAMGeoEditor.py:722 -#: flatcamEditors/FlatCAMGrbEditor.py:4637 flatcamTools/ToolTransform.py:125 +#: flatcamEditors/FlatCAMGrbEditor.py:4645 flatcamTools/ToolTransform.py:125 msgid "Angle Y:" msgstr "Winkel Y:" #: flatcamEditors/FlatCAMGeoEditor.py:733 -#: flatcamEditors/FlatCAMGrbEditor.py:4648 flatcamTools/ToolTransform.py:136 +#: flatcamEditors/FlatCAMGrbEditor.py:4656 flatcamTools/ToolTransform.py:136 msgid "Skew Y" msgstr "Neigung Y" #: flatcamEditors/FlatCAMGeoEditor.py:761 -#: flatcamEditors/FlatCAMGrbEditor.py:4676 flatcamTools/ToolTransform.py:164 +#: flatcamEditors/FlatCAMGrbEditor.py:4684 flatcamTools/ToolTransform.py:164 msgid "Factor X:" msgstr "Faktor X:" #: flatcamEditors/FlatCAMGeoEditor.py:763 -#: flatcamEditors/FlatCAMGrbEditor.py:4678 flatcamTools/ToolTransform.py:166 +#: flatcamEditors/FlatCAMGrbEditor.py:4686 flatcamTools/ToolTransform.py:166 msgid "Factor for Scale action over X axis." msgstr "Faktor für die Skalierungsaktion über der X-Achse." #: flatcamEditors/FlatCAMGeoEditor.py:771 -#: flatcamEditors/FlatCAMGrbEditor.py:4686 flatcamTools/ToolTransform.py:174 +#: flatcamEditors/FlatCAMGrbEditor.py:4694 flatcamTools/ToolTransform.py:174 msgid "Scale X" msgstr "Maßstab X" #: flatcamEditors/FlatCAMGeoEditor.py:773 #: flatcamEditors/FlatCAMGeoEditor.py:790 -#: flatcamEditors/FlatCAMGrbEditor.py:4688 -#: flatcamEditors/FlatCAMGrbEditor.py:4705 +#: flatcamEditors/FlatCAMGrbEditor.py:4696 +#: flatcamEditors/FlatCAMGrbEditor.py:4713 msgid "" "Scale the selected shape(s).\n" "The point of reference depends on \n" @@ -2519,28 +2523,28 @@ msgstr "" "das Kontrollkästchen Skalenreferenz." #: flatcamEditors/FlatCAMGeoEditor.py:778 -#: flatcamEditors/FlatCAMGrbEditor.py:4693 flatcamTools/ToolTransform.py:181 +#: flatcamEditors/FlatCAMGrbEditor.py:4701 flatcamTools/ToolTransform.py:181 msgid "Factor Y:" msgstr "Faktor Y:" #: flatcamEditors/FlatCAMGeoEditor.py:780 -#: flatcamEditors/FlatCAMGrbEditor.py:4695 flatcamTools/ToolTransform.py:183 +#: flatcamEditors/FlatCAMGrbEditor.py:4703 flatcamTools/ToolTransform.py:183 msgid "Factor for Scale action over Y axis." msgstr "Faktor für die Skalierungsaktion über der Y-Achse." #: flatcamEditors/FlatCAMGeoEditor.py:788 -#: flatcamEditors/FlatCAMGrbEditor.py:4703 flatcamTools/ToolTransform.py:191 +#: flatcamEditors/FlatCAMGrbEditor.py:4711 flatcamTools/ToolTransform.py:191 msgid "Scale Y" msgstr "Maßstab Y" #: flatcamEditors/FlatCAMGeoEditor.py:797 -#: flatcamEditors/FlatCAMGrbEditor.py:4712 flatcamGUI/FlatCAMGUI.py:6441 +#: flatcamEditors/FlatCAMGrbEditor.py:4720 flatcamGUI/FlatCAMGUI.py:6441 #: flatcamTools/ToolTransform.py:200 msgid "Link" msgstr "Verknüpfung" #: flatcamEditors/FlatCAMGeoEditor.py:799 -#: flatcamEditors/FlatCAMGrbEditor.py:4714 +#: flatcamEditors/FlatCAMGrbEditor.py:4722 msgid "" "Scale the selected shape(s)\n" "using the Scale Factor X for both axis." @@ -2549,13 +2553,13 @@ msgstr "" "Verwenden des Skalierungsfaktors X für beide Achsen." #: flatcamEditors/FlatCAMGeoEditor.py:805 -#: flatcamEditors/FlatCAMGrbEditor.py:4720 flatcamGUI/FlatCAMGUI.py:6449 +#: flatcamEditors/FlatCAMGrbEditor.py:4728 flatcamGUI/FlatCAMGUI.py:6449 #: flatcamTools/ToolTransform.py:208 msgid "Scale Reference" msgstr "Skalenreferenz" #: flatcamEditors/FlatCAMGeoEditor.py:807 -#: flatcamEditors/FlatCAMGrbEditor.py:4722 +#: flatcamEditors/FlatCAMGrbEditor.py:4730 msgid "" "Scale the selected shape(s)\n" "using the origin reference when checked,\n" @@ -2568,24 +2572,24 @@ msgstr "" "der ausgewählten Formen, wenn nicht markiert." #: flatcamEditors/FlatCAMGeoEditor.py:835 -#: flatcamEditors/FlatCAMGrbEditor.py:4751 flatcamTools/ToolTransform.py:238 +#: flatcamEditors/FlatCAMGrbEditor.py:4759 flatcamTools/ToolTransform.py:238 msgid "Value X:" msgstr "Wert X:" #: flatcamEditors/FlatCAMGeoEditor.py:837 -#: flatcamEditors/FlatCAMGrbEditor.py:4753 flatcamTools/ToolTransform.py:240 +#: flatcamEditors/FlatCAMGrbEditor.py:4761 flatcamTools/ToolTransform.py:240 msgid "Value for Offset action on X axis." msgstr "Wert für die Offset-Aktion auf der X-Achse." #: flatcamEditors/FlatCAMGeoEditor.py:845 -#: flatcamEditors/FlatCAMGrbEditor.py:4761 flatcamTools/ToolTransform.py:248 +#: flatcamEditors/FlatCAMGrbEditor.py:4769 flatcamTools/ToolTransform.py:248 msgid "Offset X" msgstr "Versatz X" #: flatcamEditors/FlatCAMGeoEditor.py:847 #: flatcamEditors/FlatCAMGeoEditor.py:865 -#: flatcamEditors/FlatCAMGrbEditor.py:4763 -#: flatcamEditors/FlatCAMGrbEditor.py:4781 +#: flatcamEditors/FlatCAMGrbEditor.py:4771 +#: flatcamEditors/FlatCAMGrbEditor.py:4789 msgid "" "Offset the selected shape(s).\n" "The point of reference is the middle of\n" @@ -2596,29 +2600,29 @@ msgstr "" "der Begrenzungsrahmen für alle ausgewählten Formen.\n" #: flatcamEditors/FlatCAMGeoEditor.py:853 -#: flatcamEditors/FlatCAMGrbEditor.py:4769 flatcamTools/ToolTransform.py:255 +#: flatcamEditors/FlatCAMGrbEditor.py:4777 flatcamTools/ToolTransform.py:255 msgid "Value Y:" msgstr "Wert Y:" #: flatcamEditors/FlatCAMGeoEditor.py:855 -#: flatcamEditors/FlatCAMGrbEditor.py:4771 flatcamTools/ToolTransform.py:257 +#: flatcamEditors/FlatCAMGrbEditor.py:4779 flatcamTools/ToolTransform.py:257 msgid "Value for Offset action on Y axis." msgstr "Wert für die Offset-Aktion auf der Y-Achse." #: flatcamEditors/FlatCAMGeoEditor.py:863 -#: flatcamEditors/FlatCAMGrbEditor.py:4779 flatcamTools/ToolTransform.py:265 +#: flatcamEditors/FlatCAMGrbEditor.py:4787 flatcamTools/ToolTransform.py:265 msgid "Offset Y" msgstr "Versatz Y" #: flatcamEditors/FlatCAMGeoEditor.py:894 -#: flatcamEditors/FlatCAMGrbEditor.py:4810 flatcamTools/ToolTransform.py:295 +#: flatcamEditors/FlatCAMGrbEditor.py:4818 flatcamTools/ToolTransform.py:295 msgid "Flip on X" msgstr "Flip auf X" #: flatcamEditors/FlatCAMGeoEditor.py:896 #: flatcamEditors/FlatCAMGeoEditor.py:904 -#: flatcamEditors/FlatCAMGrbEditor.py:4812 #: flatcamEditors/FlatCAMGrbEditor.py:4820 +#: flatcamEditors/FlatCAMGrbEditor.py:4828 msgid "" "Flip the selected shape(s) over the X axis.\n" "Does not create a new shape." @@ -2627,17 +2631,17 @@ msgstr "" "Erzeugt keine neue Form." #: flatcamEditors/FlatCAMGeoEditor.py:902 -#: flatcamEditors/FlatCAMGrbEditor.py:4818 flatcamTools/ToolTransform.py:303 +#: flatcamEditors/FlatCAMGrbEditor.py:4826 flatcamTools/ToolTransform.py:303 msgid "Flip on Y" msgstr "Flip auf Y" #: flatcamEditors/FlatCAMGeoEditor.py:911 -#: flatcamEditors/FlatCAMGrbEditor.py:4827 flatcamTools/ToolTransform.py:312 +#: flatcamEditors/FlatCAMGrbEditor.py:4835 flatcamTools/ToolTransform.py:312 msgid "Ref Pt" msgstr "Ref. Pt" #: flatcamEditors/FlatCAMGeoEditor.py:913 -#: flatcamEditors/FlatCAMGrbEditor.py:4829 +#: flatcamEditors/FlatCAMGrbEditor.py:4837 msgid "" "Flip the selected shape(s)\n" "around the point in Point Entry Field.\n" @@ -2661,12 +2665,12 @@ msgstr "" "Punkt-Eingabefeld und klicken Sie auf X (Y) drehen" #: flatcamEditors/FlatCAMGeoEditor.py:925 -#: flatcamEditors/FlatCAMGrbEditor.py:4841 flatcamTools/ToolTransform.py:325 +#: flatcamEditors/FlatCAMGrbEditor.py:4849 flatcamTools/ToolTransform.py:325 msgid "Point:" msgstr "Punkt:" #: flatcamEditors/FlatCAMGeoEditor.py:927 -#: flatcamEditors/FlatCAMGrbEditor.py:4843 +#: flatcamEditors/FlatCAMGrbEditor.py:4851 msgid "" "Coordinates in format (x, y) used as reference for mirroring.\n" "The 'x' in (x, y) will be used when using Flip on X and\n" @@ -2678,7 +2682,7 @@ msgstr "" "Das 'y' in (x, y) wird verwendet, wenn Flip auf Y verwendet wird." #: flatcamEditors/FlatCAMGeoEditor.py:939 -#: flatcamEditors/FlatCAMGrbEditor.py:4855 flatcamTools/ToolTransform.py:339 +#: flatcamEditors/FlatCAMGrbEditor.py:4863 flatcamTools/ToolTransform.py:339 msgid "" "The point coordinates can be captured by\n" "left click on canvas together with pressing\n" @@ -2690,261 +2694,261 @@ msgstr "" "einzufügen." #: flatcamEditors/FlatCAMGeoEditor.py:1054 -#: flatcamEditors/FlatCAMGrbEditor.py:4980 +#: flatcamEditors/FlatCAMGrbEditor.py:4988 msgid "[WARNING_NOTCL] Transformation cancelled. No shape selected." msgstr "[WARNING_NOTCL] Transformation abgebrochen Keine Form ausgewählt" #: flatcamEditors/FlatCAMGeoEditor.py:1075 -#: flatcamEditors/FlatCAMGrbEditor.py:5000 flatcamTools/ToolTransform.py:468 +#: flatcamEditors/FlatCAMGrbEditor.py:5008 flatcamTools/ToolTransform.py:468 msgid "[ERROR_NOTCL] Wrong value format entered for Rotate, use a number." msgstr "" "[ERROR_NOTCL] Falsches Werteformat für Drehen eingegeben, verwenden Sie eine " "Zahl." #: flatcamEditors/FlatCAMGeoEditor.py:1112 -#: flatcamEditors/FlatCAMGrbEditor.py:5043 flatcamTools/ToolTransform.py:502 +#: flatcamEditors/FlatCAMGrbEditor.py:5051 flatcamTools/ToolTransform.py:502 msgid "[ERROR_NOTCL] Wrong value format entered for Skew X, use a number." msgstr "" "[ERROR_NOTCL] Falsches Werteformat für Skew X eingegeben, verwenden Sie eine " "Zahl." #: flatcamEditors/FlatCAMGeoEditor.py:1133 -#: flatcamEditors/FlatCAMGrbEditor.py:5070 flatcamTools/ToolTransform.py:520 +#: flatcamEditors/FlatCAMGrbEditor.py:5078 flatcamTools/ToolTransform.py:520 msgid "[ERROR_NOTCL] Wrong value format entered for Skew Y, use a number." msgstr "" "[ERROR_NOTCL] Falsches Werteformat für Skew Y eingegeben, verwenden Sie eine " "Zahl." #: flatcamEditors/FlatCAMGeoEditor.py:1154 -#: flatcamEditors/FlatCAMGrbEditor.py:5097 flatcamTools/ToolTransform.py:538 +#: flatcamEditors/FlatCAMGrbEditor.py:5105 flatcamTools/ToolTransform.py:538 msgid "[ERROR_NOTCL] Wrong value format entered for Scale X, use a number." msgstr "" "[ERROR_NOTCL] Falsches Wertformat für Waage X eingegeben, verwenden Sie eine " "Zahl." #: flatcamEditors/FlatCAMGeoEditor.py:1191 -#: flatcamEditors/FlatCAMGrbEditor.py:5138 flatcamTools/ToolTransform.py:572 +#: flatcamEditors/FlatCAMGrbEditor.py:5146 flatcamTools/ToolTransform.py:572 msgid "[ERROR_NOTCL] Wrong value format entered for Scale Y, use a number." msgstr "" "[ERROR_NOTCL] Falsches Werteformat für Skala Y eingegeben, verwenden Sie " "eine Zahl." #: flatcamEditors/FlatCAMGeoEditor.py:1223 -#: flatcamEditors/FlatCAMGrbEditor.py:5176 flatcamTools/ToolTransform.py:601 +#: flatcamEditors/FlatCAMGrbEditor.py:5184 flatcamTools/ToolTransform.py:601 msgid "[ERROR_NOTCL] Wrong value format entered for Offset X, use a number." msgstr "" "[ERROR_NOTCL] Falsches Wertformat für Offset X eingegeben, verwenden Sie " "eine Zahl." #: flatcamEditors/FlatCAMGeoEditor.py:1244 -#: flatcamEditors/FlatCAMGrbEditor.py:5202 flatcamTools/ToolTransform.py:619 +#: flatcamEditors/FlatCAMGrbEditor.py:5210 flatcamTools/ToolTransform.py:619 msgid "[ERROR_NOTCL] Wrong value format entered for Offset Y, use a number." msgstr "" "[ERROR_NOTCL] Falsches Wertformat für Offset Y eingegeben, verwenden Sie " "eine Zahl." #: flatcamEditors/FlatCAMGeoEditor.py:1262 -#: flatcamEditors/FlatCAMGrbEditor.py:5225 +#: flatcamEditors/FlatCAMGrbEditor.py:5233 msgid "[WARNING_NOTCL] No shape selected. Please Select a shape to rotate!" msgstr "" "[WARNING_NOTCL] Keine Form ausgewählt Bitte wählen Sie eine Form zum Drehen " "aus!" #: flatcamEditors/FlatCAMGeoEditor.py:1265 -#: flatcamEditors/FlatCAMGrbEditor.py:5228 flatcamTools/ToolTransform.py:640 +#: flatcamEditors/FlatCAMGrbEditor.py:5236 flatcamTools/ToolTransform.py:640 msgid "Appying Rotate" msgstr "Anwenden Drehen" #: flatcamEditors/FlatCAMGeoEditor.py:1293 -#: flatcamEditors/FlatCAMGrbEditor.py:5259 +#: flatcamEditors/FlatCAMGrbEditor.py:5269 msgid "[success] Done. Rotate completed." msgstr "[success] Erledigt. Drehen abgeschlossen." #: flatcamEditors/FlatCAMGeoEditor.py:1309 -#: flatcamEditors/FlatCAMGrbEditor.py:5278 +#: flatcamEditors/FlatCAMGrbEditor.py:5288 msgid "[WARNING_NOTCL] No shape selected. Please Select a shape to flip!" msgstr "" "[WARNING_NOTCL] Keine Form ausgewählt Bitte wähle eine Form zum Umdrehen!" #: flatcamEditors/FlatCAMGeoEditor.py:1312 -#: flatcamEditors/FlatCAMGrbEditor.py:5281 flatcamTools/ToolTransform.py:691 +#: flatcamEditors/FlatCAMGrbEditor.py:5291 flatcamTools/ToolTransform.py:691 msgid "Applying Flip" msgstr "Flip anwenden" #: flatcamEditors/FlatCAMGeoEditor.py:1342 -#: flatcamEditors/FlatCAMGrbEditor.py:5318 flatcamTools/ToolTransform.py:733 +#: flatcamEditors/FlatCAMGrbEditor.py:5330 flatcamTools/ToolTransform.py:733 msgid "[success] Flip on the Y axis done ..." msgstr "[success] Flip auf der Y-Achse erledigt ..." #: flatcamEditors/FlatCAMGeoEditor.py:1345 -#: flatcamEditors/FlatCAMGrbEditor.py:5326 flatcamTools/ToolTransform.py:742 +#: flatcamEditors/FlatCAMGrbEditor.py:5338 flatcamTools/ToolTransform.py:742 msgid "[success] Flip on the X axis done ..." msgstr "[success] Flip auf der X-Achse erledigt ..." #: flatcamEditors/FlatCAMGeoEditor.py:1364 -#: flatcamEditors/FlatCAMGrbEditor.py:5346 +#: flatcamEditors/FlatCAMGrbEditor.py:5358 msgid "[WARNING_NOTCL] No shape selected. Please Select a shape to shear/skew!" msgstr "" "[WARNING_NOTCL] Keine Form ausgewählt. Bitte wählen Sie eine Form zum " "Scheren / Schrägstellen!" #: flatcamEditors/FlatCAMGeoEditor.py:1367 -#: flatcamEditors/FlatCAMGrbEditor.py:5349 flatcamTools/ToolTransform.py:760 +#: flatcamEditors/FlatCAMGrbEditor.py:5361 flatcamTools/ToolTransform.py:760 msgid "Applying Skew" msgstr "Anwenden von Skew" #: flatcamEditors/FlatCAMGeoEditor.py:1392 -#: flatcamEditors/FlatCAMGrbEditor.py:5382 flatcamTools/ToolTransform.py:791 +#: flatcamEditors/FlatCAMGrbEditor.py:5396 flatcamTools/ToolTransform.py:791 #, python-format msgid "[success] Skew on the %s axis done ..." msgstr "[success] Neigung auf der %s Achse abgeschlossen ..." #: flatcamEditors/FlatCAMGeoEditor.py:1396 -#: flatcamEditors/FlatCAMGrbEditor.py:5386 flatcamTools/ToolTransform.py:795 +#: flatcamEditors/FlatCAMGrbEditor.py:5400 flatcamTools/ToolTransform.py:795 #, python-format msgid "[ERROR_NOTCL] Due of %s, Skew action was not executed." msgstr "" "[ERROR_NOTCL] Aufgrund von %s wurde die Neigung-Aktion nicht ausgeführt." #: flatcamEditors/FlatCAMGeoEditor.py:1407 -#: flatcamEditors/FlatCAMGrbEditor.py:5405 +#: flatcamEditors/FlatCAMGrbEditor.py:5419 msgid "[WARNING_NOTCL] No shape selected. Please Select a shape to scale!" msgstr "" "[WARNING_NOTCL] Keine Form ausgewählt. Bitte wählen Sie eine zu skalierende " "Form!" #: flatcamEditors/FlatCAMGeoEditor.py:1410 -#: flatcamEditors/FlatCAMGrbEditor.py:5408 flatcamTools/ToolTransform.py:809 +#: flatcamEditors/FlatCAMGrbEditor.py:5422 flatcamTools/ToolTransform.py:809 msgid "Applying Scale" msgstr "Maßstab anwenden" #: flatcamEditors/FlatCAMGeoEditor.py:1443 -#: flatcamEditors/FlatCAMGrbEditor.py:5444 flatcamTools/ToolTransform.py:848 +#: flatcamEditors/FlatCAMGrbEditor.py:5460 flatcamTools/ToolTransform.py:848 #, python-format msgid "[success] Scale on the %s axis done ..." msgstr "[success] Skalieren auf der %s Achse fertig ..." #: flatcamEditors/FlatCAMGeoEditor.py:1446 -#: flatcamEditors/FlatCAMGrbEditor.py:5447 flatcamTools/ToolTransform.py:851 +#: flatcamEditors/FlatCAMGrbEditor.py:5463 flatcamTools/ToolTransform.py:851 #, python-format msgid "[ERROR_NOTCL] Due of %s, Scale action was not executed." msgstr "" "[ERROR_NOTCL] Aufgrund von %s wurde die Skalieren Aktion nicht ausgeführt." #: flatcamEditors/FlatCAMGeoEditor.py:1455 -#: flatcamEditors/FlatCAMGrbEditor.py:5460 +#: flatcamEditors/FlatCAMGrbEditor.py:5476 msgid "[WARNING_NOTCL] No shape selected. Please Select a shape to offset!" msgstr "" "[WARNING_NOTCL] Keine Form ausgewählt. Bitte wählen Sie eine Form zum " "Versetzen!" #: flatcamEditors/FlatCAMGeoEditor.py:1458 -#: flatcamEditors/FlatCAMGrbEditor.py:5463 flatcamTools/ToolTransform.py:861 +#: flatcamEditors/FlatCAMGrbEditor.py:5479 flatcamTools/ToolTransform.py:861 msgid "Applying Offset" msgstr "Offsetdruck anwenden" #: flatcamEditors/FlatCAMGeoEditor.py:1469 -#: flatcamEditors/FlatCAMGrbEditor.py:5484 flatcamTools/ToolTransform.py:880 +#: flatcamEditors/FlatCAMGrbEditor.py:5501 flatcamTools/ToolTransform.py:880 #, python-format msgid "[success] Offset on the %s axis done ..." msgstr "[success] Offsetdruck auf der %s Achse fertiggestellt ..." #: flatcamEditors/FlatCAMGeoEditor.py:1473 -#: flatcamEditors/FlatCAMGrbEditor.py:5488 flatcamTools/ToolTransform.py:884 +#: flatcamEditors/FlatCAMGrbEditor.py:5505 flatcamTools/ToolTransform.py:884 #, python-format msgid "[ERROR_NOTCL] Due of %s, Offset action was not executed." msgstr "" "[ERROR_NOTCL] Aufgrund von %s wurde die Offsetdruck Aktion nicht ausgeführt." #: flatcamEditors/FlatCAMGeoEditor.py:1477 -#: flatcamEditors/FlatCAMGrbEditor.py:5492 +#: flatcamEditors/FlatCAMGrbEditor.py:5509 msgid "Rotate ..." msgstr "Drehen ..." #: flatcamEditors/FlatCAMGeoEditor.py:1478 #: flatcamEditors/FlatCAMGeoEditor.py:1535 #: flatcamEditors/FlatCAMGeoEditor.py:1552 -#: flatcamEditors/FlatCAMGrbEditor.py:5493 -#: flatcamEditors/FlatCAMGrbEditor.py:5550 +#: flatcamEditors/FlatCAMGrbEditor.py:5510 #: flatcamEditors/FlatCAMGrbEditor.py:5567 +#: flatcamEditors/FlatCAMGrbEditor.py:5584 msgid "Enter an Angle Value (degrees):" msgstr "Geben Sie einen Winkelwert (Grad) ein:" #: flatcamEditors/FlatCAMGeoEditor.py:1487 -#: flatcamEditors/FlatCAMGrbEditor.py:5502 +#: flatcamEditors/FlatCAMGrbEditor.py:5519 msgid "[success] Geometry shape rotate done..." msgstr "[success] Geometrieform drehen fertig ..." #: flatcamEditors/FlatCAMGeoEditor.py:1492 -#: flatcamEditors/FlatCAMGrbEditor.py:5507 +#: flatcamEditors/FlatCAMGrbEditor.py:5524 msgid "[WARNING_NOTCL] Geometry shape rotate cancelled..." msgstr "[WARNING_NOTCL] Geometrieform drehen abgebrochen ..." #: flatcamEditors/FlatCAMGeoEditor.py:1498 -#: flatcamEditors/FlatCAMGrbEditor.py:5513 +#: flatcamEditors/FlatCAMGrbEditor.py:5530 msgid "Offset on X axis ..." msgstr "Versatz auf der X-Achse ..." #: flatcamEditors/FlatCAMGeoEditor.py:1499 #: flatcamEditors/FlatCAMGeoEditor.py:1518 -#: flatcamEditors/FlatCAMGrbEditor.py:5514 -#: flatcamEditors/FlatCAMGrbEditor.py:5533 +#: flatcamEditors/FlatCAMGrbEditor.py:5531 +#: flatcamEditors/FlatCAMGrbEditor.py:5550 #, python-format msgid "Enter a distance Value (%s):" msgstr "Geben Sie einen Abstand ein (%s):" #: flatcamEditors/FlatCAMGeoEditor.py:1508 -#: flatcamEditors/FlatCAMGrbEditor.py:5523 +#: flatcamEditors/FlatCAMGrbEditor.py:5540 msgid "[success] Geometry shape offset on X axis done..." msgstr "[success] Geometrieformversatz auf der X-Achse erfolgt ..." #: flatcamEditors/FlatCAMGeoEditor.py:1512 -#: flatcamEditors/FlatCAMGrbEditor.py:5527 +#: flatcamEditors/FlatCAMGrbEditor.py:5544 msgid "[WARNING_NOTCL] Geometry shape offset X cancelled..." msgstr "[WARNING_NOTCL] Geometrieformversatz X abgebrochen ..." #: flatcamEditors/FlatCAMGeoEditor.py:1517 -#: flatcamEditors/FlatCAMGrbEditor.py:5532 +#: flatcamEditors/FlatCAMGrbEditor.py:5549 msgid "Offset on Y axis ..." msgstr "Versatz auf der Y-Achse ..." #: flatcamEditors/FlatCAMGeoEditor.py:1527 -#: flatcamEditors/FlatCAMGrbEditor.py:5542 +#: flatcamEditors/FlatCAMGrbEditor.py:5559 msgid "[success] Geometry shape offset on Y axis done..." msgstr "[success] Geometrieformversatz auf Y-Achse erfolgt ..." #: flatcamEditors/FlatCAMGeoEditor.py:1531 -#: flatcamEditors/FlatCAMGrbEditor.py:5546 +#: flatcamEditors/FlatCAMGrbEditor.py:5563 msgid "[WARNING_NOTCL] Geometry shape offset Y cancelled..." msgstr "[WARNING_NOTCL] Geometrieformversatz Y abgebrochen ..." #: flatcamEditors/FlatCAMGeoEditor.py:1534 -#: flatcamEditors/FlatCAMGrbEditor.py:5549 +#: flatcamEditors/FlatCAMGrbEditor.py:5566 msgid "Skew on X axis ..." msgstr "Neigung auf der X-Achse ..." #: flatcamEditors/FlatCAMGeoEditor.py:1544 -#: flatcamEditors/FlatCAMGrbEditor.py:5559 +#: flatcamEditors/FlatCAMGrbEditor.py:5576 msgid "[success] Geometry shape skew on X axis done..." msgstr "[success] Geometrieformversatz auf X-Achse ..." #: flatcamEditors/FlatCAMGeoEditor.py:1548 -#: flatcamEditors/FlatCAMGrbEditor.py:5563 +#: flatcamEditors/FlatCAMGrbEditor.py:5580 msgid "[WARNING_NOTCL] Geometry shape skew X cancelled..." msgstr "[WARNING_NOTCL] Geometrieformversatz X abgebrochen ..." #: flatcamEditors/FlatCAMGeoEditor.py:1551 -#: flatcamEditors/FlatCAMGrbEditor.py:5566 +#: flatcamEditors/FlatCAMGrbEditor.py:5583 msgid "Skew on Y axis ..." msgstr "Neigung auf der Y-Achse ..." #: flatcamEditors/FlatCAMGeoEditor.py:1561 -#: flatcamEditors/FlatCAMGrbEditor.py:5576 +#: flatcamEditors/FlatCAMGrbEditor.py:5593 msgid "[success] Geometry shape skew on Y axis done..." msgstr "[success] Geometrieformversatz auf Y-Achse erfolgt ..." #: flatcamEditors/FlatCAMGeoEditor.py:1565 -#: flatcamEditors/FlatCAMGrbEditor.py:5580 +#: flatcamEditors/FlatCAMGrbEditor.py:5597 msgid "[WARNING_NOTCL] Geometry shape skew Y cancelled..." msgstr "[WARNING_NOTCL] Geometrieformversatz Y abgebrochen ..." @@ -3102,7 +3106,7 @@ msgid "[WARNING_NOTCL] Buffer cancelled. No shape selected." msgstr "[WARNING_NOTCL] Puffer abgebrochen. Keine Form ausgewählt." #: flatcamEditors/FlatCAMGeoEditor.py:2711 -#: flatcamEditors/FlatCAMGrbEditor.py:4442 +#: flatcamEditors/FlatCAMGrbEditor.py:4447 msgid "[success] Done. Buffer Tool completed." msgstr "[success] Erledigt. Pufferwerkzeug abgeschlossen." @@ -3419,23 +3423,23 @@ msgid "Apertures Table for the Gerber Object." msgstr "Blendentabelle für das Gerberobjekt." #: flatcamEditors/FlatCAMGrbEditor.py:2291 -#: flatcamEditors/FlatCAMGrbEditor.py:3602 flatcamGUI/ObjectUI.py:228 +#: flatcamEditors/FlatCAMGrbEditor.py:3601 flatcamGUI/ObjectUI.py:228 msgid "Code" msgstr "Code" #: flatcamEditors/FlatCAMGrbEditor.py:2291 -#: flatcamEditors/FlatCAMGrbEditor.py:3602 flatcamGUI/ObjectUI.py:228 +#: flatcamEditors/FlatCAMGrbEditor.py:3601 flatcamGUI/ObjectUI.py:228 #: flatcamGUI/ObjectUI.py:891 flatcamGUI/ObjectUI.py:1465 msgid "Type" msgstr "Typ" #: flatcamEditors/FlatCAMGrbEditor.py:2291 -#: flatcamEditors/FlatCAMGrbEditor.py:3602 flatcamGUI/ObjectUI.py:228 +#: flatcamEditors/FlatCAMGrbEditor.py:3601 flatcamGUI/ObjectUI.py:228 msgid "Size" msgstr "Größe" #: flatcamEditors/FlatCAMGrbEditor.py:2291 -#: flatcamEditors/FlatCAMGrbEditor.py:3602 flatcamGUI/ObjectUI.py:228 +#: flatcamEditors/FlatCAMGrbEditor.py:3601 flatcamGUI/ObjectUI.py:228 msgid "Dim" msgstr "Maße" @@ -3683,16 +3687,16 @@ msgstr "[success] Gerber-Bearbeitung ist beendet." msgid "[WARNING_NOTCL] Cancelled. No aperture is selected" msgstr "[WARNING_NOTCL] Abgebrochen. Es ist keine Blende ausgewählt" -#: flatcamEditors/FlatCAMGrbEditor.py:4270 +#: flatcamEditors/FlatCAMGrbEditor.py:4280 msgid "[ERROR_NOTCL] Failed. No aperture geometry is selected." msgstr "" "[ERROR_NOTCL] ist fehlgeschlagen. Es ist keine Blendengeometrie ausgewählt." -#: flatcamEditors/FlatCAMGrbEditor.py:4278 +#: flatcamEditors/FlatCAMGrbEditor.py:4288 msgid "[success] Done. Apertures geometry deleted." msgstr "[success] Fertig. Blendengeometrie gelöscht." -#: flatcamEditors/FlatCAMGrbEditor.py:4427 +#: flatcamEditors/FlatCAMGrbEditor.py:4431 msgid "" "[WARNING_NOTCL] No aperture to buffer. Select at least one aperture and try " "again." @@ -3700,7 +3704,17 @@ msgstr "" "[WARNING_NOTCL] Keine Blende zum Puffern Wählen Sie mindestens eine Blende " "und versuchen Sie es erneut." -#: flatcamEditors/FlatCAMGrbEditor.py:4456 +#: flatcamEditors/FlatCAMGrbEditor.py:4444 +#, python-format +#| msgid "[ERROR_NOTCL] Failed to open %s" +msgid "" +"[ERROR_NOTCL] Failed.\n" +"%s" +msgstr "" +"[ERROR_NOTCL] Gescheitert.\n" +"%s" + +#: flatcamEditors/FlatCAMGrbEditor.py:4461 msgid "" "[WARNING_NOTCL] Scale factor value is missing or wrong format. Add it and " "retry." @@ -3708,7 +3722,7 @@ msgstr "" "[WARNING_NOTCL] Der Skalierungsfaktor ist nicht vorhanden oder das Format " "ist falsch. Fügen Sie es hinzu und versuchen Sie es erneut." -#: flatcamEditors/FlatCAMGrbEditor.py:4486 +#: flatcamEditors/FlatCAMGrbEditor.py:4494 msgid "" "[WARNING_NOTCL] No aperture to scale. Select at least one aperture and try " "again." @@ -3716,7 +3730,7 @@ msgstr "" "[WARNING_NOTCL] Keine zu skalierende Blende Wählen Sie mindestens eine " "Blende und versuchen Sie es erneut." -#: flatcamEditors/FlatCAMGrbEditor.py:4502 +#: flatcamEditors/FlatCAMGrbEditor.py:4510 msgid "[success] Done. Scale Tool completed." msgstr "[success] Erledigt. Skalierungswerkzeug abgeschlossen." diff --git a/locale/en/LC_MESSAGES/strings.mo b/locale/en/LC_MESSAGES/strings.mo index 87f7810f0fb74f4d7924b42d8a1ca0a6e0c7635f..ee9dba4f739ab0900bf6e79f1f5dedc962b832cf 100644 GIT binary patch delta 39461 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 delta 39324 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 selected" msgstr "[selected]{name} selected" -#: FlatCAMApp.py:5876 +#: FlatCAMApp.py:5882 msgid "" "There are files/objects opened in FlatCAM.\n" "Creating a New project will delete them.\n" @@ -527,106 +532,106 @@ msgstr "" "Creating a New project will delete them.\n" "Do you want to Save the project?" -#: FlatCAMApp.py:5897 +#: FlatCAMApp.py:5903 msgid "[success] New Project created..." msgstr "[success] New Project created..." -#: FlatCAMApp.py:6013 FlatCAMApp.py:6016 flatcamGUI/FlatCAMGUI.py:608 +#: FlatCAMApp.py:6019 FlatCAMApp.py:6022 flatcamGUI/FlatCAMGUI.py:608 #: flatcamGUI/FlatCAMGUI.py:1832 msgid "Open Gerber" msgstr "Open Gerber" -#: FlatCAMApp.py:6021 +#: FlatCAMApp.py:6027 msgid "[WARNING_NOTCL] Open Gerber cancelled." msgstr "[WARNING_NOTCL] Open Gerber cancelled." -#: FlatCAMApp.py:6042 FlatCAMApp.py:6045 flatcamGUI/FlatCAMGUI.py:609 +#: FlatCAMApp.py:6048 FlatCAMApp.py:6051 flatcamGUI/FlatCAMGUI.py:609 #: flatcamGUI/FlatCAMGUI.py:1833 msgid "Open Excellon" msgstr "Open Excellon" -#: FlatCAMApp.py:6050 +#: FlatCAMApp.py:6056 msgid "[WARNING_NOTCL] Open Excellon cancelled." msgstr "[WARNING_NOTCL] Open Excellon cancelled." -#: FlatCAMApp.py:6072 FlatCAMApp.py:6075 +#: FlatCAMApp.py:6078 FlatCAMApp.py:6081 msgid "Open G-Code" msgstr "Open G-Code" -#: FlatCAMApp.py:6080 +#: FlatCAMApp.py:6086 msgid "[WARNING_NOTCL] Open G-Code cancelled." msgstr "[WARNING_NOTCL] Open G-Code cancelled." -#: FlatCAMApp.py:6098 FlatCAMApp.py:6101 +#: FlatCAMApp.py:6104 FlatCAMApp.py:6107 msgid "Open Project" msgstr "Open Project" -#: FlatCAMApp.py:6109 +#: FlatCAMApp.py:6115 msgid "[WARNING_NOTCL] Open Project cancelled." msgstr "[WARNING_NOTCL] Open Project cancelled." -#: FlatCAMApp.py:6128 FlatCAMApp.py:6131 +#: FlatCAMApp.py:6134 FlatCAMApp.py:6137 msgid "Open Configuration File" msgstr "Open Configuration File" -#: FlatCAMApp.py:6135 +#: FlatCAMApp.py:6141 msgid "[WARNING_NOTCL] Open Config cancelled." msgstr "[WARNING_NOTCL] Open Config cancelled." -#: FlatCAMApp.py:6150 FlatCAMApp.py:6401 FlatCAMApp.py:8551 FlatCAMApp.py:8571 -#: FlatCAMApp.py:8592 FlatCAMApp.py:8614 +#: FlatCAMApp.py:6156 FlatCAMApp.py:6407 FlatCAMApp.py:8560 FlatCAMApp.py:8580 +#: FlatCAMApp.py:8601 FlatCAMApp.py:8623 msgid "[WARNING_NOTCL] No object selected." msgstr "[WARNING_NOTCL] No object selected." -#: FlatCAMApp.py:6151 FlatCAMApp.py:6402 +#: FlatCAMApp.py:6157 FlatCAMApp.py:6408 msgid "Please Select a Geometry object to export" msgstr "Please Select a Geometry object to export" -#: FlatCAMApp.py:6162 +#: FlatCAMApp.py:6168 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:6175 FlatCAMApp.py:6179 +#: FlatCAMApp.py:6181 FlatCAMApp.py:6185 msgid "Export SVG" msgstr "Export SVG" -#: FlatCAMApp.py:6184 +#: FlatCAMApp.py:6190 msgid "[WARNING_NOTCL] Export SVG cancelled." msgstr "[WARNING_NOTCL] Export SVG cancelled." -#: FlatCAMApp.py:6203 +#: FlatCAMApp.py:6209 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:6209 FlatCAMApp.py:6213 +#: FlatCAMApp.py:6215 FlatCAMApp.py:6219 msgid "Export PNG Image" msgstr "Export PNG Image" -#: FlatCAMApp.py:6218 +#: FlatCAMApp.py:6224 msgid "Export PNG cancelled." msgstr "Export PNG cancelled." -#: FlatCAMApp.py:6237 +#: FlatCAMApp.py:6243 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:6242 FlatCAMApp.py:6365 +#: FlatCAMApp.py:6248 FlatCAMApp.py:6371 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:6254 +#: FlatCAMApp.py:6260 msgid "Save Gerber source file" msgstr "Save Gerber source file" -#: FlatCAMApp.py:6259 +#: FlatCAMApp.py:6265 msgid "[WARNING_NOTCL] Save Gerber source file cancelled." msgstr "[WARNING_NOTCL] Save Gerber source file cancelled." -#: FlatCAMApp.py:6278 +#: FlatCAMApp.py:6284 msgid "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." @@ -634,21 +639,21 @@ msgstr "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." -#: FlatCAMApp.py:6283 FlatCAMApp.py:6324 +#: FlatCAMApp.py:6289 FlatCAMApp.py:6330 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:6291 FlatCAMApp.py:6295 +#: FlatCAMApp.py:6297 FlatCAMApp.py:6301 msgid "Save Excellon source file" msgstr "Save Excellon source file" -#: FlatCAMApp.py:6300 +#: FlatCAMApp.py:6306 msgid "[WARNING_NOTCL] Saving Excellon source file cancelled." msgstr "[WARNING_NOTCL] Saving Excellon source file cancelled." -#: FlatCAMApp.py:6319 +#: FlatCAMApp.py:6325 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." @@ -656,68 +661,68 @@ msgstr "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." -#: FlatCAMApp.py:6332 FlatCAMApp.py:6336 +#: FlatCAMApp.py:6338 FlatCAMApp.py:6342 msgid "Export Excellon" msgstr "Export Excellon" -#: FlatCAMApp.py:6341 +#: FlatCAMApp.py:6347 msgid "[WARNING_NOTCL] Export Excellon cancelled." msgstr "[WARNING_NOTCL] Export Excellon cancelled." -#: FlatCAMApp.py:6360 +#: FlatCAMApp.py:6366 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:6373 FlatCAMApp.py:6377 +#: FlatCAMApp.py:6379 FlatCAMApp.py:6383 msgid "Export Gerber" msgstr "Export Gerber" -#: FlatCAMApp.py:6382 +#: FlatCAMApp.py:6388 msgid "[WARNING_NOTCL] Export Gerber cancelled." msgstr "[WARNING_NOTCL] Export Gerber cancelled." -#: FlatCAMApp.py:6412 +#: FlatCAMApp.py:6418 msgid "[ERROR_NOTCL] Only Geometry objects can be used." msgstr "[ERROR_NOTCL] Only Geometry objects can be used." -#: FlatCAMApp.py:6426 FlatCAMApp.py:6430 +#: FlatCAMApp.py:6432 FlatCAMApp.py:6436 msgid "Export DXF" msgstr "Export DXF" -#: FlatCAMApp.py:6436 +#: FlatCAMApp.py:6442 msgid "[WARNING_NOTCL] Export DXF cancelled." msgstr "[WARNING_NOTCL] Export DXF cancelled." -#: FlatCAMApp.py:6456 FlatCAMApp.py:6459 +#: FlatCAMApp.py:6462 FlatCAMApp.py:6465 msgid "Import SVG" msgstr "Import SVG" -#: FlatCAMApp.py:6468 +#: FlatCAMApp.py:6474 msgid "[WARNING_NOTCL] Open SVG cancelled." msgstr "[WARNING_NOTCL] Open SVG cancelled." -#: FlatCAMApp.py:6487 FlatCAMApp.py:6491 +#: FlatCAMApp.py:6493 FlatCAMApp.py:6497 msgid "Import DXF" msgstr "Import DXF" -#: FlatCAMApp.py:6500 +#: FlatCAMApp.py:6506 msgid "[WARNING_NOTCL] Open DXF cancelled." msgstr "[WARNING_NOTCL] Open DXF cancelled." -#: FlatCAMApp.py:6518 +#: FlatCAMApp.py:6524 #, python-format msgid "%s" msgstr "%s" -#: FlatCAMApp.py:6538 +#: FlatCAMApp.py:6544 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:6545 +#: FlatCAMApp.py:6551 msgid "" "[WARNING_NOTCL] There is no selected object for which to see it's source " "file code." @@ -725,25 +730,25 @@ msgstr "" "[WARNING_NOTCL] There is no selected object for which to see it's source " "file code." -#: FlatCAMApp.py:6553 +#: FlatCAMApp.py:6559 msgid "Source Editor" msgstr "Source Editor" -#: FlatCAMApp.py:6563 +#: FlatCAMApp.py:6569 #, python-format msgid "[ERROR]App.on_view_source() -->%s" msgstr "[ERROR]App.on_view_source() -->%s" -#: FlatCAMApp.py:6575 FlatCAMApp.py:7717 FlatCAMObj.py:5551 +#: FlatCAMApp.py:6581 FlatCAMApp.py:7723 FlatCAMObj.py:5560 #: flatcamTools/ToolSolderPaste.py:1278 msgid "Code Editor" msgstr "Code Editor" -#: FlatCAMApp.py:6587 +#: FlatCAMApp.py:6593 msgid "Script Editor" msgstr "Script Editor" -#: FlatCAMApp.py:6590 +#: FlatCAMApp.py:6596 msgid "" "#\n" "# CREATE A NEW FLATCAM TCL SCRIPT\n" @@ -787,98 +792,98 @@ msgstr "" "#\n" "\n" -#: FlatCAMApp.py:6613 FlatCAMApp.py:6616 +#: FlatCAMApp.py:6619 FlatCAMApp.py:6622 msgid "Open TCL script" msgstr "Open TCL script" -#: FlatCAMApp.py:6624 +#: FlatCAMApp.py:6630 msgid "[WARNING_NOTCL] Open TCL script cancelled." msgstr "[WARNING_NOTCL] Open TCL script cancelled." -#: FlatCAMApp.py:6636 +#: FlatCAMApp.py:6642 #, python-format msgid "[ERROR]App.on_fileopenscript() -->%s" msgstr "[ERROR]App.on_fileopenscript() -->%s" -#: FlatCAMApp.py:6662 FlatCAMApp.py:6665 +#: FlatCAMApp.py:6668 FlatCAMApp.py:6671 msgid "Run TCL script" msgstr "Run TCL script" -#: FlatCAMApp.py:6673 +#: FlatCAMApp.py:6679 msgid "[WARNING_NOTCL] Run TCL script cancelled." msgstr "[WARNING_NOTCL] Run TCL script cancelled." -#: FlatCAMApp.py:6723 FlatCAMApp.py:6727 +#: FlatCAMApp.py:6729 FlatCAMApp.py:6733 msgid "Save Project As ..." msgstr "Save Project As ..." -#: FlatCAMApp.py:6724 +#: FlatCAMApp.py:6730 #, python-brace-format msgid "{l_save}/Project_{date}" msgstr "{l_save}/Project_{date}" -#: FlatCAMApp.py:6732 +#: FlatCAMApp.py:6738 msgid "[WARNING_NOTCL] Save Project cancelled." msgstr "[WARNING_NOTCL] Save Project cancelled." -#: FlatCAMApp.py:6776 +#: FlatCAMApp.py:6782 msgid "Exporting SVG" msgstr "Exporting SVG" -#: FlatCAMApp.py:6810 FlatCAMApp.py:6916 FlatCAMApp.py:7031 +#: FlatCAMApp.py:6816 FlatCAMApp.py:6922 FlatCAMApp.py:7037 #, python-format msgid "[success] SVG file exported to %s" msgstr "[success] SVG file exported to %s" -#: FlatCAMApp.py:6841 FlatCAMApp.py:6962 +#: FlatCAMApp.py:6847 FlatCAMApp.py:6968 #, python-format msgid "[WARNING_NOTCL] No object Box. Using instead %s" msgstr "[WARNING_NOTCL] No object Box. Using instead %s" -#: FlatCAMApp.py:6919 FlatCAMApp.py:7034 +#: FlatCAMApp.py:6925 FlatCAMApp.py:7040 msgid "Generating Film ... Please wait." msgstr "Generating Film ... Please wait." -#: FlatCAMApp.py:7182 +#: FlatCAMApp.py:7188 #, python-format msgid "[success] Excellon file exported to %s" msgstr "[success] Excellon file exported to %s" -#: FlatCAMApp.py:7189 +#: FlatCAMApp.py:7195 msgid "Exporting Excellon" msgstr "Exporting Excellon" -#: FlatCAMApp.py:7194 FlatCAMApp.py:7201 +#: FlatCAMApp.py:7200 FlatCAMApp.py:7207 msgid "[ERROR_NOTCL] Could not export Excellon file." msgstr "[ERROR_NOTCL] Could not export Excellon file." -#: FlatCAMApp.py:7299 +#: FlatCAMApp.py:7305 #, python-format msgid "[success] Gerber file exported to %s" msgstr "[success] Gerber file exported to %s" -#: FlatCAMApp.py:7306 +#: FlatCAMApp.py:7312 msgid "Exporting Gerber" msgstr "Exporting Gerber" -#: FlatCAMApp.py:7311 FlatCAMApp.py:7318 +#: FlatCAMApp.py:7317 FlatCAMApp.py:7324 msgid "[ERROR_NOTCL] Could not export Gerber file." msgstr "[ERROR_NOTCL] Could not export Gerber file." -#: FlatCAMApp.py:7358 +#: FlatCAMApp.py:7364 #, python-format msgid "[success] DXF file exported to %s" msgstr "[success] DXF file exported to %s" -#: FlatCAMApp.py:7364 +#: FlatCAMApp.py:7370 msgid "Exporting DXF" msgstr "Exporting DXF" -#: FlatCAMApp.py:7369 FlatCAMApp.py:7376 +#: FlatCAMApp.py:7375 FlatCAMApp.py:7382 msgid "[[WARNING_NOTCL]] Could not export DXF file." msgstr "[[WARNING_NOTCL]] Could not export DXF file." -#: FlatCAMApp.py:7396 FlatCAMApp.py:7438 FlatCAMApp.py:7482 +#: FlatCAMApp.py:7402 FlatCAMApp.py:7444 FlatCAMApp.py:7488 msgid "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" @@ -886,95 +891,95 @@ msgstr "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" -#: FlatCAMApp.py:7406 +#: FlatCAMApp.py:7412 msgid "Importing SVG" msgstr "Importing SVG" -#: FlatCAMApp.py:7417 FlatCAMApp.py:7459 FlatCAMApp.py:7502 FlatCAMApp.py:7579 -#: FlatCAMApp.py:7640 FlatCAMApp.py:7703 flatcamTools/ToolPDF.py:212 +#: FlatCAMApp.py:7423 FlatCAMApp.py:7465 FlatCAMApp.py:7508 FlatCAMApp.py:7585 +#: FlatCAMApp.py:7646 FlatCAMApp.py:7709 flatcamTools/ToolPDF.py:212 #, python-format msgid "[success] Opened: %s" msgstr "[success] Opened: %s" -#: FlatCAMApp.py:7448 +#: FlatCAMApp.py:7454 msgid "Importing DXF" msgstr "Importing DXF" -#: FlatCAMApp.py:7490 +#: FlatCAMApp.py:7496 msgid "Importing Image" msgstr "Importing Image" -#: FlatCAMApp.py:7531 FlatCAMApp.py:7533 +#: FlatCAMApp.py:7537 FlatCAMApp.py:7539 #, python-format msgid "[ERROR_NOTCL] Failed to open file: %s" msgstr "[ERROR_NOTCL] Failed to open file: %s" -#: FlatCAMApp.py:7536 +#: FlatCAMApp.py:7542 #, python-brace-format msgid "[ERROR_NOTCL] Failed to parse file: {name}. {error}" msgstr "[ERROR_NOTCL] Failed to parse file: {name}. {error}" -#: FlatCAMApp.py:7543 FlatCAMObj.py:4230 +#: FlatCAMApp.py:7549 FlatCAMObj.py:4239 #: flatcamEditors/FlatCAMExcEditor.py:2077 msgid "[ERROR] An internal error has ocurred. See shell.\n" msgstr "[ERROR] An internal error has ocurred. See shell.\n" -#: FlatCAMApp.py:7552 +#: FlatCAMApp.py:7558 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:7560 +#: FlatCAMApp.py:7566 msgid "Opening Gerber" msgstr "Opening Gerber" -#: FlatCAMApp.py:7570 +#: FlatCAMApp.py:7576 msgid "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." msgstr "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." -#: FlatCAMApp.py:7603 flatcamTools/ToolPcbWizard.py:421 +#: FlatCAMApp.py:7609 flatcamTools/ToolPcbWizard.py:421 msgid "[ERROR_NOTCL] This is not Excellon file." msgstr "[ERROR_NOTCL] This is not Excellon file." -#: FlatCAMApp.py:7606 +#: FlatCAMApp.py:7612 #, python-format msgid "[ERROR_NOTCL] Cannot open file: %s" msgstr "[ERROR_NOTCL] Cannot open file: %s" -#: FlatCAMApp.py:7611 flatcamTools/ToolPcbWizard.py:429 +#: FlatCAMApp.py:7617 flatcamTools/ToolPcbWizard.py:429 msgid "[ERROR_NOTCL] An internal error has occurred. See shell.\n" msgstr "[ERROR_NOTCL] An internal error has occurred. See shell.\n" -#: FlatCAMApp.py:7624 flatcamTools/ToolPDF.py:262 +#: FlatCAMApp.py:7630 flatcamTools/ToolPDF.py:262 #: flatcamTools/ToolPcbWizard.py:442 #, python-format msgid "[ERROR_NOTCL] No geometry found in file: %s" msgstr "[ERROR_NOTCL] No geometry found in file: %s" -#: FlatCAMApp.py:7627 +#: FlatCAMApp.py:7633 msgid "Opening Excellon." msgstr "Opening Excellon." -#: FlatCAMApp.py:7633 +#: FlatCAMApp.py:7639 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:7670 +#: FlatCAMApp.py:7676 #, python-format msgid "[ERROR_NOTCL] Failed to open %s" msgstr "[ERROR_NOTCL] Failed to open %s" -#: FlatCAMApp.py:7680 +#: FlatCAMApp.py:7686 msgid "[ERROR_NOTCL] This is not GCODE" msgstr "[ERROR_NOTCL] This is not GCODE" -#: FlatCAMApp.py:7686 +#: FlatCAMApp.py:7692 msgid "Opening G-Code." msgstr "Opening G-Code." -#: FlatCAMApp.py:7694 +#: FlatCAMApp.py:7700 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 " @@ -984,26 +989,26 @@ msgstr "" " Attempting to create a FlatCAM CNCJob Object from G-Code file failed during " "processing" -#: FlatCAMApp.py:7734 +#: FlatCAMApp.py:7740 #, python-format msgid "[ERROR_NOTCL] Failed to open config file: %s" msgstr "[ERROR_NOTCL] Failed to open config file: %s" -#: FlatCAMApp.py:7760 FlatCAMApp.py:7777 +#: FlatCAMApp.py:7766 FlatCAMApp.py:7783 #, python-format msgid "[ERROR_NOTCL] Failed to open project file: %s" msgstr "[ERROR_NOTCL] Failed to open project file: %s" -#: FlatCAMApp.py:7800 +#: FlatCAMApp.py:7806 #, python-format msgid "[success] Project loaded from: %s" msgstr "[success] Project loaded from: %s" -#: FlatCAMApp.py:7905 +#: FlatCAMApp.py:7911 msgid "Available commands:\n" msgstr "Available commands:\n" -#: FlatCAMApp.py:7907 +#: FlatCAMApp.py:7913 msgid "" "\n" "\n" @@ -1015,27 +1020,27 @@ msgstr "" "Type help for usage.\n" " Example: help open_gerber" -#: FlatCAMApp.py:8057 +#: FlatCAMApp.py:8063 msgid "Shows list of commands." msgstr "Shows list of commands." -#: FlatCAMApp.py:8114 +#: FlatCAMApp.py:8120 msgid "[ERROR_NOTCL] Failed to load recent item list." msgstr "[ERROR_NOTCL] Failed to load recent item list." -#: FlatCAMApp.py:8121 +#: FlatCAMApp.py:8127 msgid "[ERROR_NOTCL] Failed to parse recent item list." msgstr "[ERROR_NOTCL] Failed to parse recent item list." -#: FlatCAMApp.py:8165 +#: FlatCAMApp.py:8171 msgid "Clear Recent files" msgstr "Clear Recent files" -#: FlatCAMApp.py:8182 flatcamGUI/FlatCAMGUI.py:968 +#: FlatCAMApp.py:8188 flatcamGUI/FlatCAMGUI.py:968 msgid "Shortcut Key List" msgstr "Shortcut Key List" -#: FlatCAMApp.py:8189 +#: FlatCAMApp.py:8195 msgid "" "\n" "

Selected Tab - Choose an Item from " @@ -1131,23 +1136,23 @@ msgstr "" "\n" " " -#: FlatCAMApp.py:8293 +#: FlatCAMApp.py:8302 msgid "[WARNING_NOTCL] Failed checking for latest version. Could not connect." msgstr "[WARNING_NOTCL] Failed checking for latest version. Could not connect." -#: FlatCAMApp.py:8300 +#: FlatCAMApp.py:8309 msgid "[ERROR_NOTCL] Could not parse information about latest version." msgstr "[ERROR_NOTCL] Could not parse information about latest version." -#: FlatCAMApp.py:8310 +#: FlatCAMApp.py:8319 msgid "[success] FlatCAM is up to date!" msgstr "[success] FlatCAM is up to date!" -#: FlatCAMApp.py:8315 +#: FlatCAMApp.py:8324 msgid "Newer Version Available" msgstr "Newer Version Available" -#: FlatCAMApp.py:8316 +#: FlatCAMApp.py:8325 msgid "" "There is a newer version of FlatCAM available for download:\n" "\n" @@ -1155,92 +1160,92 @@ msgstr "" "There is a newer version of FlatCAM available for download:\n" "\n" -#: FlatCAMApp.py:8318 +#: FlatCAMApp.py:8327 msgid "info" msgstr "info" -#: FlatCAMApp.py:8337 +#: FlatCAMApp.py:8346 msgid "[success] All plots disabled." msgstr "[success] All plots disabled." -#: FlatCAMApp.py:8343 +#: FlatCAMApp.py:8352 msgid "[success] All non selected plots disabled." msgstr "[success] All non selected plots disabled." -#: FlatCAMApp.py:8349 +#: FlatCAMApp.py:8358 msgid "[success] All plots enabled." msgstr "[success] All plots enabled." -#: FlatCAMApp.py:8355 +#: FlatCAMApp.py:8364 msgid "[success] Selected plots enabled..." msgstr "[success] Selected plots enabled..." -#: FlatCAMApp.py:8363 +#: FlatCAMApp.py:8372 msgid "[success] Selected plots disabled..." msgstr "[success] Selected plots disabled..." -#: FlatCAMApp.py:8373 FlatCAMApp.py:8386 +#: FlatCAMApp.py:8382 FlatCAMApp.py:8395 msgid "Working ..." msgstr "Working ..." -#: FlatCAMApp.py:8420 +#: FlatCAMApp.py:8429 msgid "Saving FlatCAM Project" msgstr "Saving FlatCAM Project" -#: FlatCAMApp.py:8441 FlatCAMApp.py:8472 +#: FlatCAMApp.py:8450 FlatCAMApp.py:8481 #, python-format msgid "[success] Project saved to: %s" msgstr "[success] Project saved to: %s" -#: FlatCAMApp.py:8459 +#: FlatCAMApp.py:8468 #, 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:8466 +#: FlatCAMApp.py:8475 #, 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:8474 +#: FlatCAMApp.py:8483 #, 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." -#: FlatCAMObj.py:202 +#: FlatCAMObj.py:207 #, python-brace-format msgid "[success] Name changed from {old} to {new}" msgstr "[success] Name changed from {old} to {new}" -#: FlatCAMObj.py:545 FlatCAMObj.py:2031 FlatCAMObj.py:3275 FlatCAMObj.py:5448 +#: FlatCAMObj.py:553 FlatCAMObj.py:2035 FlatCAMObj.py:3281 FlatCAMObj.py:5457 msgid "Basic" msgstr "Basic" -#: FlatCAMObj.py:557 FlatCAMObj.py:2047 FlatCAMObj.py:3297 FlatCAMObj.py:5454 +#: FlatCAMObj.py:565 FlatCAMObj.py:2051 FlatCAMObj.py:3303 FlatCAMObj.py:5463 msgid "Advanced" msgstr "Advanced" -#: FlatCAMObj.py:920 FlatCAMObj.py:975 +#: FlatCAMObj.py:928 FlatCAMObj.py:983 #, python-format msgid "[success] Isolation geometry created: %s" msgstr "[success] Isolation geometry created: %s" -#: FlatCAMObj.py:1154 +#: FlatCAMObj.py:1162 msgid "Plotting Apertures" msgstr "Plotting Apertures" -#: FlatCAMObj.py:1870 flatcamEditors/FlatCAMExcEditor.py:1368 +#: FlatCAMObj.py:1878 flatcamEditors/FlatCAMExcEditor.py:1368 msgid "Total Drills" msgstr "Total Drills" -#: FlatCAMObj.py:1896 flatcamEditors/FlatCAMExcEditor.py:1400 +#: FlatCAMObj.py:1904 flatcamEditors/FlatCAMExcEditor.py:1400 msgid "Total Slots" msgstr "Total Slots" -#: FlatCAMObj.py:2103 FlatCAMObj.py:3348 FlatCAMObj.py:3646 FlatCAMObj.py:3833 -#: FlatCAMObj.py:3846 FlatCAMObj.py:3963 FlatCAMObj.py:4380 FlatCAMObj.py:4618 -#: FlatCAMObj.py:5031 flatcamEditors/FlatCAMExcEditor.py:1474 +#: FlatCAMObj.py:2107 FlatCAMObj.py:3355 FlatCAMObj.py:3655 FlatCAMObj.py:3842 +#: FlatCAMObj.py:3855 FlatCAMObj.py:3972 FlatCAMObj.py:4389 FlatCAMObj.py:4627 +#: FlatCAMObj.py:5040 flatcamEditors/FlatCAMExcEditor.py:1474 #: flatcamTools/ToolCalculators.py:307 flatcamTools/ToolCalculators.py:318 #: flatcamTools/ToolCalculators.py:330 flatcamTools/ToolCalculators.py:345 #: flatcamTools/ToolCalculators.py:358 flatcamTools/ToolCalculators.py:372 @@ -1259,23 +1264,23 @@ msgstr "Total Slots" msgid "[ERROR_NOTCL] Wrong value format entered, use a number." msgstr "[ERROR_NOTCL] Wrong value format entered, use a number." -#: FlatCAMObj.py:2327 FlatCAMObj.py:2418 FlatCAMObj.py:2540 +#: FlatCAMObj.py:2331 FlatCAMObj.py:2423 FlatCAMObj.py:2546 msgid "" "[ERROR_NOTCL] Please select one or more tools from the list and try again." msgstr "" "[ERROR_NOTCL] Please select one or more tools from the list and try again." -#: FlatCAMObj.py:2334 +#: FlatCAMObj.py:2338 msgid "" "[ERROR_NOTCL] Milling tool for DRILLS is larger than hole size. Cancelled." msgstr "" "[ERROR_NOTCL] Milling tool for DRILLS is larger than hole size. Cancelled." -#: FlatCAMObj.py:2348 FlatCAMObj.py:2442 FlatCAMObj.py:2560 +#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 msgid "Tool_nr" msgstr "Tool_nr" -#: FlatCAMObj.py:2348 FlatCAMObj.py:2442 FlatCAMObj.py:2560 +#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 #: flatcamEditors/FlatCAMExcEditor.py:819 #: flatcamEditors/FlatCAMExcEditor.py:2020 flatcamGUI/ObjectUI.py:556 #: flatcamTools/ToolNonCopperClear.py:83 flatcamTools/ToolPaint.py:80 @@ -1283,21 +1288,21 @@ msgstr "Tool_nr" msgid "Diameter" msgstr "Diameter" -#: FlatCAMObj.py:2348 FlatCAMObj.py:2442 FlatCAMObj.py:2560 +#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 msgid "Drills_Nr" msgstr "Drills_Nr" -#: FlatCAMObj.py:2348 FlatCAMObj.py:2442 FlatCAMObj.py:2560 +#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 msgid "Slots_Nr" msgstr "Slots_Nr" -#: FlatCAMObj.py:2428 +#: FlatCAMObj.py:2433 msgid "" "[ERROR_NOTCL] Milling tool for SLOTS is larger than hole size. Cancelled." msgstr "" "[ERROR_NOTCL] Milling tool for SLOTS is larger than hole size. Cancelled." -#: FlatCAMObj.py:2602 FlatCAMObj.py:4268 FlatCAMObj.py:4484 FlatCAMObj.py:4801 +#: FlatCAMObj.py:2608 FlatCAMObj.py:4277 FlatCAMObj.py:4493 FlatCAMObj.py:4810 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"z_pdepth\"] or self." "options[\"z_pdepth\"]" @@ -1305,7 +1310,7 @@ msgstr "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"z_pdepth\"] or self." "options[\"z_pdepth\"]" -#: FlatCAMObj.py:2614 FlatCAMObj.py:4280 FlatCAMObj.py:4496 FlatCAMObj.py:4813 +#: FlatCAMObj.py:2620 FlatCAMObj.py:4289 FlatCAMObj.py:4505 FlatCAMObj.py:4822 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"feedrate_probe\"] or " "self.options[\"feedrate_probe\"]" @@ -1313,12 +1318,12 @@ msgstr "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"feedrate_probe\"] or " "self.options[\"feedrate_probe\"]" -#: FlatCAMObj.py:2646 FlatCAMObj.py:4689 FlatCAMObj.py:4694 FlatCAMObj.py:4844 +#: FlatCAMObj.py:2652 FlatCAMObj.py:4698 FlatCAMObj.py:4703 FlatCAMObj.py:4853 msgid "Generating CNC Code" msgstr "Generating CNC Code" -#: FlatCAMObj.py:2672 FlatCAMObj.py:4990 camlib.py:5164 camlib.py:5623 -#: camlib.py:5886 +#: FlatCAMObj.py:2678 FlatCAMObj.py:4999 camlib.py:5167 camlib.py:5626 +#: camlib.py:5889 msgid "" "[ERROR]The Toolchange X,Y field in Edit -> Preferences has to be in the " "format (x, y) \n" @@ -1328,77 +1333,77 @@ msgstr "" "format (x, y) \n" "but now there is only one value, not two. " -#: FlatCAMObj.py:2984 FlatCAMObj.py:3889 FlatCAMObj.py:3890 FlatCAMObj.py:3899 +#: FlatCAMObj.py:2990 FlatCAMObj.py:3898 FlatCAMObj.py:3899 FlatCAMObj.py:3908 msgid "Iso" msgstr "Iso" -#: FlatCAMObj.py:2984 FlatCAMObj.py:3233 FlatCAMObj.py:3513 +#: FlatCAMObj.py:2990 FlatCAMObj.py:3239 FlatCAMObj.py:3520 msgid "Rough" msgstr "Rough" -#: FlatCAMObj.py:2984 +#: FlatCAMObj.py:2990 msgid "Finish" msgstr "Finish" -#: FlatCAMObj.py:3268 flatcamGUI/FlatCAMGUI.py:526 flatcamGUI/FlatCAMGUI.py:722 +#: FlatCAMObj.py:3274 flatcamGUI/FlatCAMGUI.py:526 flatcamGUI/FlatCAMGUI.py:722 #: flatcamGUI/FlatCAMGUI.py:1615 flatcamGUI/FlatCAMGUI.py:1951 #: flatcamGUI/ObjectUI.py:999 msgid "Copy" msgstr "Copy" -#: FlatCAMObj.py:3483 +#: FlatCAMObj.py:3490 msgid "[ERROR_NOTCL] Please enter the desired tool diameter in Float format." msgstr "[ERROR_NOTCL] Please enter the desired tool diameter in Float format." -#: FlatCAMObj.py:3556 +#: FlatCAMObj.py:3565 msgid "[success] Tool added in Tool Table." msgstr "[success] Tool added in Tool Table." -#: FlatCAMObj.py:3561 +#: FlatCAMObj.py:3570 msgid "[ERROR_NOTCL] Default Tool added. Wrong value format entered." msgstr "[ERROR_NOTCL] Default Tool added. Wrong value format entered." -#: FlatCAMObj.py:3591 FlatCAMObj.py:3601 +#: FlatCAMObj.py:3600 FlatCAMObj.py:3610 msgid "[WARNING_NOTCL] Failed. Select a tool to copy." msgstr "[WARNING_NOTCL] Failed. Select a tool to copy." -#: FlatCAMObj.py:3630 +#: FlatCAMObj.py:3639 msgid "[success] Tool was copied in Tool Table." msgstr "[success] Tool was copied in Tool Table." -#: FlatCAMObj.py:3663 +#: FlatCAMObj.py:3672 msgid "[success] Tool was edited in Tool Table." msgstr "[success] Tool was edited in Tool Table." -#: FlatCAMObj.py:3694 FlatCAMObj.py:3704 +#: FlatCAMObj.py:3703 FlatCAMObj.py:3713 msgid "[WARNING_NOTCL] Failed. Select a tool to delete." msgstr "[WARNING_NOTCL] Failed. Select a tool to delete." -#: FlatCAMObj.py:3728 +#: FlatCAMObj.py:3737 msgid "[success] Tool was deleted in Tool Table." msgstr "[success] Tool was deleted in Tool Table." -#: FlatCAMObj.py:4149 +#: FlatCAMObj.py:4158 #, python-format msgid "" "[WARNING_NOTCL] This Geometry can't be processed because it is %s geometry." msgstr "" "[WARNING_NOTCL] This Geometry can't be processed because it is %s geometry." -#: FlatCAMObj.py:4166 +#: FlatCAMObj.py:4175 msgid "[ERROR_NOTCL] Wrong Tool Dia value format entered, use a number." msgstr "[ERROR_NOTCL] Wrong Tool Dia value format entered, use a number." -#: FlatCAMObj.py:4193 +#: FlatCAMObj.py:4202 msgid "[ERROR_NOTCL] Failed. No tool selected in the tool table ..." msgstr "[ERROR_NOTCL] Failed. No tool selected in the tool table ..." -#: FlatCAMObj.py:4231 +#: FlatCAMObj.py:4240 #, python-format msgid "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" msgstr "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" -#: FlatCAMObj.py:4389 FlatCAMObj.py:4627 +#: FlatCAMObj.py:4398 FlatCAMObj.py:4636 msgid "" "[WARNING] Tool Offset is selected in Tool Table but no value is provided.\n" "Add a Tool Offset or change the Offset Type." @@ -1406,20 +1411,20 @@ msgstr "" "[WARNING] Tool Offset is selected in Tool Table but no value is provided.\n" "Add a Tool Offset or change the Offset Type." -#: FlatCAMObj.py:4508 flatcamTools/ToolSolderPaste.py:1107 +#: FlatCAMObj.py:4517 flatcamTools/ToolSolderPaste.py:1107 #: flatcamTools/ToolSolderPaste.py:1162 msgid "[ERROR_NOTCL] Cancelled. Empty file, it has no geometry..." msgstr "[ERROR_NOTCL] Cancelled. Empty file, it has no geometry..." -#: FlatCAMObj.py:4877 FlatCAMObj.py:4887 camlib.py:3347 camlib.py:3356 +#: FlatCAMObj.py:4886 FlatCAMObj.py:4896 camlib.py:3348 camlib.py:3357 msgid "[ERROR_NOTCL] Scale factor has to be a number: integer or float." msgstr "[ERROR_NOTCL] Scale factor has to be a number: integer or float." -#: FlatCAMObj.py:4925 +#: FlatCAMObj.py:4934 msgid "[success] Geometry Scale done." msgstr "[success] Geometry Scale done." -#: FlatCAMObj.py:4942 camlib.py:3425 +#: FlatCAMObj.py:4951 camlib.py:3426 msgid "" "[ERROR_NOTCL] An (x,y) pair of values are needed. Probable you entered only " "one value in the Offset field." @@ -1427,29 +1432,29 @@ msgstr "" "[ERROR_NOTCL] An (x,y) pair of values are needed. Probable you entered only " "one value in the Offset field." -#: FlatCAMObj.py:4962 +#: FlatCAMObj.py:4971 msgid "[success] Geometry Offset done." msgstr "[success] Geometry Offset done." -#: FlatCAMObj.py:5516 FlatCAMObj.py:5521 flatcamTools/ToolSolderPaste.py:1361 +#: FlatCAMObj.py:5525 FlatCAMObj.py:5530 flatcamTools/ToolSolderPaste.py:1361 msgid "Export Machine Code ..." msgstr "Export Machine Code ..." -#: FlatCAMObj.py:5527 flatcamTools/ToolSolderPaste.py:1364 +#: FlatCAMObj.py:5536 flatcamTools/ToolSolderPaste.py:1364 msgid "[WARNING_NOTCL] Export Machine Code cancelled ..." msgstr "[WARNING_NOTCL] Export Machine Code cancelled ..." -#: FlatCAMObj.py:5540 +#: FlatCAMObj.py:5549 #, python-format msgid "[success] Machine Code file saved to: %s" msgstr "[success] Machine Code file saved to: %s" -#: FlatCAMObj.py:5562 +#: FlatCAMObj.py:5571 #, python-format msgid "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" msgstr "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" -#: FlatCAMObj.py:5679 +#: FlatCAMObj.py:5688 #, python-format msgid "" "[WARNING_NOTCL] This CNCJob object can't be processed because it is a %s " @@ -1458,11 +1463,11 @@ msgstr "" "[WARNING_NOTCL] This CNCJob object can't be processed because it is a %s " "CNCJob object." -#: FlatCAMObj.py:5732 +#: FlatCAMObj.py:5741 msgid "[ERROR_NOTCL] G-code does not have a units code: either G20 or G21" msgstr "[ERROR_NOTCL] G-code does not have a units code: either G20 or G21" -#: FlatCAMObj.py:5745 +#: FlatCAMObj.py:5754 msgid "" "[ERROR_NOTCL] Cancelled. The Toolchange Custom code is enabled but it's " "empty." @@ -1470,15 +1475,15 @@ msgstr "" "[ERROR_NOTCL] Cancelled. The Toolchange Custom code is enabled but it's " "empty." -#: FlatCAMObj.py:5752 +#: FlatCAMObj.py:5761 msgid "[success] Toolchange G-code was replaced by a custom code." msgstr "[success] Toolchange G-code was replaced by a custom code." -#: FlatCAMObj.py:5767 flatcamTools/ToolSolderPaste.py:1390 +#: FlatCAMObj.py:5776 flatcamTools/ToolSolderPaste.py:1390 msgid "[WARNING_NOTCL] No such file or directory" msgstr "[WARNING_NOTCL] No such file or directory" -#: FlatCAMObj.py:5787 FlatCAMObj.py:5799 +#: FlatCAMObj.py:5796 FlatCAMObj.py:5808 msgid "" "[WARNING_NOTCL] The used postprocessor file has to have in it's name: " "'toolchange_custom'" @@ -1486,7 +1491,7 @@ msgstr "" "[WARNING_NOTCL] The used postprocessor file has to have in it's name: " "'toolchange_custom'" -#: FlatCAMObj.py:5805 +#: FlatCAMObj.py:5814 msgid "[ERROR] There is no postprocessor file." msgstr "[ERROR] There is no postprocessor file." @@ -1528,16 +1533,16 @@ msgstr "[success] Object was skewed ..." msgid "[ERROR_NOTCL] Failed to skew. No object selected" msgstr "[ERROR_NOTCL] Failed to skew. No object selected" -#: camlib.py:2727 camlib.py:2812 +#: camlib.py:2728 camlib.py:2813 #, python-format msgid "[WARNING] Coordinates missing, line ignored: %s" msgstr "[WARNING] Coordinates missing, line ignored: %s" -#: camlib.py:2728 camlib.py:2813 +#: camlib.py:2729 camlib.py:2814 msgid "[WARNING_NOTCL] GERBER file might be CORRUPT. Check the file !!!" msgstr "[WARNING_NOTCL] GERBER file might be CORRUPT. Check the file !!!" -#: camlib.py:2777 +#: camlib.py:2778 #, python-format msgid "" "[ERROR] Region does not have enough points. File will be processed but there " @@ -1546,7 +1551,7 @@ msgstr "" "[ERROR] Region does not have enough points. File will be processed but there " "are parser errors. Line number: %s" -#: camlib.py:3169 +#: camlib.py:3170 #, python-format msgid "" "[ERROR]Gerber Parser ERROR.\n" @@ -1555,32 +1560,32 @@ msgstr "" "[ERROR]Gerber Parser ERROR.\n" "%s:" -#: camlib.py:3393 +#: camlib.py:3394 msgid "[success] Gerber Scale done." msgstr "[success] Gerber Scale done." -#: camlib.py:3458 +#: camlib.py:3459 msgid "[success] Gerber Offset done." msgstr "[success] Gerber Offset done." -#: camlib.py:3512 +#: camlib.py:3513 msgid "[success] Gerber Mirror done." msgstr "[success] Gerber Mirror done." -#: camlib.py:3558 +#: camlib.py:3559 msgid "[success] Gerber Skew done." msgstr "[success] Gerber Skew done." -#: camlib.py:3596 +#: camlib.py:3597 msgid "[success] Gerber Rotate done." msgstr "[success] Gerber Rotate done." -#: camlib.py:3875 +#: camlib.py:3878 #, python-format msgid "[ERROR_NOTCL] This is GCODE mark: %s" msgstr "[ERROR_NOTCL] This is GCODE mark: %s" -#: camlib.py:3990 +#: camlib.py:3993 #, python-format msgid "" "[WARNING] No tool diameter info's. See shell.\n" @@ -1597,7 +1602,7 @@ msgstr "" "The user needs to edit the resulting Excellon object and change the " "diameters to reflect the real diameters." -#: camlib.py:4455 +#: camlib.py:4458 #, python-brace-format msgid "" "[ERROR] Excellon Parser error.\n" @@ -1606,7 +1611,7 @@ msgstr "" "[ERROR] Excellon Parser error.\n" "Parsing Failed. Line {l_nr}: {line}\n" -#: camlib.py:4534 +#: camlib.py:4537 msgid "" "[WARNING] Excellon.create_geometry() -> a drill location was skipped due of " "not having a tool associated.\n" @@ -1616,12 +1621,12 @@ msgstr "" "not having a tool associated.\n" "Check the resulting GCode." -#: camlib.py:5073 +#: camlib.py:5076 #, python-format msgid "[ERROR] There is no such parameter: %s" msgstr "[ERROR] There is no such parameter: %s" -#: camlib.py:5143 +#: camlib.py:5146 msgid "" "[WARNING] The Cut Z parameter has positive value. It is the depth value to " "drill into material.\n" @@ -1635,22 +1640,22 @@ msgstr "" "therefore the app will convert the value to negative. Check the resulting " "CNC code (Gcode etc)." -#: camlib.py:5150 camlib.py:5646 camlib.py:5909 +#: camlib.py:5153 camlib.py:5649 camlib.py:5912 #, python-format msgid "" "[WARNING] The Cut Z parameter is zero. There will be no cut, skipping %s file" msgstr "" "[WARNING] The Cut Z parameter is zero. There will be no cut, skipping %s file" -#: camlib.py:5379 camlib.py:5476 camlib.py:5534 +#: camlib.py:5382 camlib.py:5479 camlib.py:5537 msgid "[ERROR_NOTCL] The loaded Excellon file has no drills ..." msgstr "[ERROR_NOTCL] The loaded Excellon file has no drills ..." -#: camlib.py:5481 +#: camlib.py:5484 msgid "[ERROR_NOTCL] Wrong optimization type selected." msgstr "[ERROR_NOTCL] Wrong optimization type selected." -#: camlib.py:5634 camlib.py:5897 +#: camlib.py:5637 camlib.py:5900 msgid "" "[ERROR_NOTCL] Cut_Z parameter is None or zero. Most likely a bad " "combinations of other parameters." @@ -1658,7 +1663,7 @@ msgstr "" "[ERROR_NOTCL] Cut_Z parameter is None or zero. Most likely a bad " "combinations of other parameters." -#: camlib.py:5639 camlib.py:5902 +#: camlib.py:5642 camlib.py:5905 msgid "" "[WARNING] The Cut Z parameter has positive value. It is the depth value to " "cut into material.\n" @@ -1672,11 +1677,11 @@ msgstr "" "therefore the app will convert the value to negative.Check the resulting CNC " "code (Gcode etc)." -#: camlib.py:5651 camlib.py:5914 +#: camlib.py:5654 camlib.py:5917 msgid "[ERROR_NOTCL] Travel Z parameter is None or zero." msgstr "[ERROR_NOTCL] Travel Z parameter is None or zero." -#: camlib.py:5655 camlib.py:5918 +#: camlib.py:5658 camlib.py:5921 msgid "" "[WARNING] The Travel Z parameter has negative value. It is the height value " "to travel between cuts.\n" @@ -1690,19 +1695,19 @@ msgstr "" "therefore the app will convert the value to positive.Check the resulting CNC " "code (Gcode etc)." -#: camlib.py:5662 camlib.py:5925 +#: camlib.py:5665 camlib.py:5928 #, python-format msgid "" "[WARNING] The Z Travel parameter is zero. This is dangerous, skipping %s file" msgstr "" "[WARNING] The Z Travel parameter is zero. This is dangerous, skipping %s file" -#: camlib.py:5792 +#: camlib.py:5795 #, python-format msgid "[ERROR]Expected a Geometry, got %s" msgstr "[ERROR]Expected a Geometry, got %s" -#: camlib.py:5798 +#: camlib.py:5801 msgid "" "[ERROR_NOTCL] Trying to generate a CNC Job from a Geometry object without " "solid_geometry." @@ -1710,7 +1715,7 @@ msgstr "" "[ERROR_NOTCL] Trying to generate a CNC Job from a Geometry object without " "solid_geometry." -#: camlib.py:5837 +#: camlib.py:5840 msgid "" "[ERROR_NOTCL] The Tool Offset value is too negative to use for the " "current_geometry.\n" @@ -1720,7 +1725,7 @@ msgstr "" "current_geometry.\n" "Raise the value (in module) and try again." -#: camlib.py:6049 +#: camlib.py:6052 msgid "[ERROR_NOTCL] There is no tool data in the SolderPaste geometry." msgstr "[ERROR_NOTCL] There is no tool data in the SolderPaste geometry." @@ -1969,7 +1974,7 @@ msgstr "Pitch = Distance between elements of the array." #: flatcamEditors/FlatCAMGeoEditor.py:665 #: flatcamEditors/FlatCAMGrbEditor.py:2550 #: flatcamEditors/FlatCAMGrbEditor.py:2586 -#: flatcamEditors/FlatCAMGrbEditor.py:4580 flatcamGUI/FlatCAMGUI.py:5107 +#: flatcamEditors/FlatCAMGrbEditor.py:4588 flatcamGUI/FlatCAMGUI.py:5107 #: flatcamTools/ToolTransform.py:68 msgid "Angle:" msgstr "Angle:" @@ -2049,7 +2054,7 @@ msgid "[success] Done. Drill(s) deleted." msgstr "[success] Done. Drill(s) deleted." #: flatcamEditors/FlatCAMExcEditor.py:2705 -#: flatcamEditors/FlatCAMGrbEditor.py:4340 +#: flatcamEditors/FlatCAMGrbEditor.py:4350 msgid "Click on the circular array Center position" msgstr "Click on the circular array Center position" @@ -2115,7 +2120,7 @@ msgstr "Buffer Tool" #: flatcamEditors/FlatCAMGeoEditor.py:2700 #: flatcamEditors/FlatCAMGeoEditor.py:2726 #: flatcamEditors/FlatCAMGeoEditor.py:2752 -#: flatcamEditors/FlatCAMGrbEditor.py:4392 +#: flatcamEditors/FlatCAMGrbEditor.py:4402 msgid "" "[WARNING_NOTCL] Buffer distance value is missing or wrong format. Add it and " "retry." @@ -2288,53 +2293,53 @@ msgstr "Tools" #: flatcamEditors/FlatCAMGeoEditor.py:617 #: flatcamEditors/FlatCAMGeoEditor.py:990 -#: flatcamEditors/FlatCAMGrbEditor.py:4531 -#: flatcamEditors/FlatCAMGrbEditor.py:4916 flatcamGUI/FlatCAMGUI.py:654 +#: flatcamEditors/FlatCAMGrbEditor.py:4539 +#: flatcamEditors/FlatCAMGrbEditor.py:4924 flatcamGUI/FlatCAMGUI.py:654 #: flatcamGUI/FlatCAMGUI.py:1879 flatcamTools/ToolTransform.py:398 msgid "Transform Tool" msgstr "Transform Tool" #: flatcamEditors/FlatCAMGeoEditor.py:618 #: flatcamEditors/FlatCAMGeoEditor.py:679 -#: flatcamEditors/FlatCAMGrbEditor.py:4532 -#: flatcamEditors/FlatCAMGrbEditor.py:4594 flatcamTools/ToolTransform.py:24 +#: flatcamEditors/FlatCAMGrbEditor.py:4540 +#: flatcamEditors/FlatCAMGrbEditor.py:4602 flatcamTools/ToolTransform.py:24 #: flatcamTools/ToolTransform.py:82 msgid "Rotate" msgstr "Rotate" #: flatcamEditors/FlatCAMGeoEditor.py:619 -#: flatcamEditors/FlatCAMGrbEditor.py:4533 flatcamTools/ToolTransform.py:25 +#: flatcamEditors/FlatCAMGrbEditor.py:4541 flatcamTools/ToolTransform.py:25 msgid "Skew/Shear" msgstr "Skew/Shear" #: flatcamEditors/FlatCAMGeoEditor.py:620 #: flatcamEditors/FlatCAMGrbEditor.py:2471 -#: flatcamEditors/FlatCAMGrbEditor.py:4534 flatcamGUI/FlatCAMGUI.py:718 +#: flatcamEditors/FlatCAMGrbEditor.py:4542 flatcamGUI/FlatCAMGUI.py:718 #: flatcamGUI/FlatCAMGUI.py:1947 flatcamGUI/ObjectUI.py:100 #: flatcamTools/ToolTransform.py:26 msgid "Scale" msgstr "Scale" #: flatcamEditors/FlatCAMGeoEditor.py:621 -#: flatcamEditors/FlatCAMGrbEditor.py:4535 flatcamTools/ToolTransform.py:27 +#: flatcamEditors/FlatCAMGrbEditor.py:4543 flatcamTools/ToolTransform.py:27 msgid "Mirror (Flip)" msgstr "Mirror (Flip)" #: flatcamEditors/FlatCAMGeoEditor.py:622 -#: flatcamEditors/FlatCAMGrbEditor.py:4536 flatcamGUI/ObjectUI.py:127 +#: flatcamEditors/FlatCAMGrbEditor.py:4544 flatcamGUI/ObjectUI.py:127 #: flatcamGUI/ObjectUI.py:891 flatcamGUI/ObjectUI.py:1465 #: flatcamTools/ToolTransform.py:28 msgid "Offset" msgstr "Offset" #: flatcamEditors/FlatCAMGeoEditor.py:633 -#: flatcamEditors/FlatCAMGrbEditor.py:4548 +#: flatcamEditors/FlatCAMGrbEditor.py:4556 #, python-format msgid "Editor %s" msgstr "Editor %s" #: flatcamEditors/FlatCAMGeoEditor.py:667 -#: flatcamEditors/FlatCAMGrbEditor.py:4582 flatcamTools/ToolTransform.py:70 +#: flatcamEditors/FlatCAMGrbEditor.py:4590 flatcamTools/ToolTransform.py:70 msgid "" "Angle for Rotation action, in degrees.\n" "Float number between -360 and 359.\n" @@ -2347,7 +2352,7 @@ msgstr "" "Negative numbers for CCW motion." #: flatcamEditors/FlatCAMGeoEditor.py:681 -#: flatcamEditors/FlatCAMGrbEditor.py:4596 +#: flatcamEditors/FlatCAMGrbEditor.py:4604 msgid "" "Rotate the selected shape(s).\n" "The point of reference is the middle of\n" @@ -2358,14 +2363,14 @@ msgstr "" "the bounding box for all selected shapes." #: flatcamEditors/FlatCAMGeoEditor.py:704 -#: flatcamEditors/FlatCAMGrbEditor.py:4619 flatcamTools/ToolTransform.py:107 +#: flatcamEditors/FlatCAMGrbEditor.py:4627 flatcamTools/ToolTransform.py:107 msgid "Angle X:" msgstr "Angle X:" #: flatcamEditors/FlatCAMGeoEditor.py:706 #: flatcamEditors/FlatCAMGeoEditor.py:724 -#: flatcamEditors/FlatCAMGrbEditor.py:4621 -#: flatcamEditors/FlatCAMGrbEditor.py:4639 flatcamTools/ToolTransform.py:109 +#: flatcamEditors/FlatCAMGrbEditor.py:4629 +#: flatcamEditors/FlatCAMGrbEditor.py:4647 flatcamTools/ToolTransform.py:109 #: flatcamTools/ToolTransform.py:127 msgid "" "Angle for Skew action, in degrees.\n" @@ -2375,14 +2380,14 @@ msgstr "" "Float number between -360 and 359." #: flatcamEditors/FlatCAMGeoEditor.py:715 -#: flatcamEditors/FlatCAMGrbEditor.py:4630 flatcamTools/ToolTransform.py:118 +#: flatcamEditors/FlatCAMGrbEditor.py:4638 flatcamTools/ToolTransform.py:118 msgid "Skew X" msgstr "Skew X" #: flatcamEditors/FlatCAMGeoEditor.py:717 #: flatcamEditors/FlatCAMGeoEditor.py:735 -#: flatcamEditors/FlatCAMGrbEditor.py:4632 -#: flatcamEditors/FlatCAMGrbEditor.py:4650 +#: flatcamEditors/FlatCAMGrbEditor.py:4640 +#: flatcamEditors/FlatCAMGrbEditor.py:4658 msgid "" "Skew/shear the selected shape(s).\n" "The point of reference is the middle of\n" @@ -2393,34 +2398,34 @@ msgstr "" "the bounding box for all selected shapes." #: flatcamEditors/FlatCAMGeoEditor.py:722 -#: flatcamEditors/FlatCAMGrbEditor.py:4637 flatcamTools/ToolTransform.py:125 +#: flatcamEditors/FlatCAMGrbEditor.py:4645 flatcamTools/ToolTransform.py:125 msgid "Angle Y:" msgstr "Angle Y:" #: flatcamEditors/FlatCAMGeoEditor.py:733 -#: flatcamEditors/FlatCAMGrbEditor.py:4648 flatcamTools/ToolTransform.py:136 +#: flatcamEditors/FlatCAMGrbEditor.py:4656 flatcamTools/ToolTransform.py:136 msgid "Skew Y" msgstr "Skew Y" #: flatcamEditors/FlatCAMGeoEditor.py:761 -#: flatcamEditors/FlatCAMGrbEditor.py:4676 flatcamTools/ToolTransform.py:164 +#: flatcamEditors/FlatCAMGrbEditor.py:4684 flatcamTools/ToolTransform.py:164 msgid "Factor X:" msgstr "Factor X:" #: flatcamEditors/FlatCAMGeoEditor.py:763 -#: flatcamEditors/FlatCAMGrbEditor.py:4678 flatcamTools/ToolTransform.py:166 +#: flatcamEditors/FlatCAMGrbEditor.py:4686 flatcamTools/ToolTransform.py:166 msgid "Factor for Scale action over X axis." msgstr "Factor for Scale action over X axis." #: flatcamEditors/FlatCAMGeoEditor.py:771 -#: flatcamEditors/FlatCAMGrbEditor.py:4686 flatcamTools/ToolTransform.py:174 +#: flatcamEditors/FlatCAMGrbEditor.py:4694 flatcamTools/ToolTransform.py:174 msgid "Scale X" msgstr "Scale X" #: flatcamEditors/FlatCAMGeoEditor.py:773 #: flatcamEditors/FlatCAMGeoEditor.py:790 -#: flatcamEditors/FlatCAMGrbEditor.py:4688 -#: flatcamEditors/FlatCAMGrbEditor.py:4705 +#: flatcamEditors/FlatCAMGrbEditor.py:4696 +#: flatcamEditors/FlatCAMGrbEditor.py:4713 msgid "" "Scale the selected shape(s).\n" "The point of reference depends on \n" @@ -2431,28 +2436,28 @@ msgstr "" "the Scale reference checkbox state." #: flatcamEditors/FlatCAMGeoEditor.py:778 -#: flatcamEditors/FlatCAMGrbEditor.py:4693 flatcamTools/ToolTransform.py:181 +#: flatcamEditors/FlatCAMGrbEditor.py:4701 flatcamTools/ToolTransform.py:181 msgid "Factor Y:" msgstr "Factor Y:" #: flatcamEditors/FlatCAMGeoEditor.py:780 -#: flatcamEditors/FlatCAMGrbEditor.py:4695 flatcamTools/ToolTransform.py:183 +#: flatcamEditors/FlatCAMGrbEditor.py:4703 flatcamTools/ToolTransform.py:183 msgid "Factor for Scale action over Y axis." msgstr "Factor for Scale action over Y axis." #: flatcamEditors/FlatCAMGeoEditor.py:788 -#: flatcamEditors/FlatCAMGrbEditor.py:4703 flatcamTools/ToolTransform.py:191 +#: flatcamEditors/FlatCAMGrbEditor.py:4711 flatcamTools/ToolTransform.py:191 msgid "Scale Y" msgstr "Scale Y" #: flatcamEditors/FlatCAMGeoEditor.py:797 -#: flatcamEditors/FlatCAMGrbEditor.py:4712 flatcamGUI/FlatCAMGUI.py:6441 +#: flatcamEditors/FlatCAMGrbEditor.py:4720 flatcamGUI/FlatCAMGUI.py:6441 #: flatcamTools/ToolTransform.py:200 msgid "Link" msgstr "Link" #: flatcamEditors/FlatCAMGeoEditor.py:799 -#: flatcamEditors/FlatCAMGrbEditor.py:4714 +#: flatcamEditors/FlatCAMGrbEditor.py:4722 msgid "" "Scale the selected shape(s)\n" "using the Scale Factor X for both axis." @@ -2461,13 +2466,13 @@ msgstr "" "using the Scale Factor X for both axis." #: flatcamEditors/FlatCAMGeoEditor.py:805 -#: flatcamEditors/FlatCAMGrbEditor.py:4720 flatcamGUI/FlatCAMGUI.py:6449 +#: flatcamEditors/FlatCAMGrbEditor.py:4728 flatcamGUI/FlatCAMGUI.py:6449 #: flatcamTools/ToolTransform.py:208 msgid "Scale Reference" msgstr "Scale Reference" #: flatcamEditors/FlatCAMGeoEditor.py:807 -#: flatcamEditors/FlatCAMGrbEditor.py:4722 +#: flatcamEditors/FlatCAMGrbEditor.py:4730 msgid "" "Scale the selected shape(s)\n" "using the origin reference when checked,\n" @@ -2480,24 +2485,24 @@ msgstr "" "of the selected shapes when unchecked." #: flatcamEditors/FlatCAMGeoEditor.py:835 -#: flatcamEditors/FlatCAMGrbEditor.py:4751 flatcamTools/ToolTransform.py:238 +#: flatcamEditors/FlatCAMGrbEditor.py:4759 flatcamTools/ToolTransform.py:238 msgid "Value X:" msgstr "Value X:" #: flatcamEditors/FlatCAMGeoEditor.py:837 -#: flatcamEditors/FlatCAMGrbEditor.py:4753 flatcamTools/ToolTransform.py:240 +#: flatcamEditors/FlatCAMGrbEditor.py:4761 flatcamTools/ToolTransform.py:240 msgid "Value for Offset action on X axis." msgstr "Value for Offset action on X axis." #: flatcamEditors/FlatCAMGeoEditor.py:845 -#: flatcamEditors/FlatCAMGrbEditor.py:4761 flatcamTools/ToolTransform.py:248 +#: flatcamEditors/FlatCAMGrbEditor.py:4769 flatcamTools/ToolTransform.py:248 msgid "Offset X" msgstr "Offset X" #: flatcamEditors/FlatCAMGeoEditor.py:847 #: flatcamEditors/FlatCAMGeoEditor.py:865 -#: flatcamEditors/FlatCAMGrbEditor.py:4763 -#: flatcamEditors/FlatCAMGrbEditor.py:4781 +#: flatcamEditors/FlatCAMGrbEditor.py:4771 +#: flatcamEditors/FlatCAMGrbEditor.py:4789 msgid "" "Offset the selected shape(s).\n" "The point of reference is the middle of\n" @@ -2508,29 +2513,29 @@ msgstr "" "the bounding box for all selected shapes.\n" #: flatcamEditors/FlatCAMGeoEditor.py:853 -#: flatcamEditors/FlatCAMGrbEditor.py:4769 flatcamTools/ToolTransform.py:255 +#: flatcamEditors/FlatCAMGrbEditor.py:4777 flatcamTools/ToolTransform.py:255 msgid "Value Y:" msgstr "Value Y:" #: flatcamEditors/FlatCAMGeoEditor.py:855 -#: flatcamEditors/FlatCAMGrbEditor.py:4771 flatcamTools/ToolTransform.py:257 +#: flatcamEditors/FlatCAMGrbEditor.py:4779 flatcamTools/ToolTransform.py:257 msgid "Value for Offset action on Y axis." msgstr "Value for Offset action on Y axis." #: flatcamEditors/FlatCAMGeoEditor.py:863 -#: flatcamEditors/FlatCAMGrbEditor.py:4779 flatcamTools/ToolTransform.py:265 +#: flatcamEditors/FlatCAMGrbEditor.py:4787 flatcamTools/ToolTransform.py:265 msgid "Offset Y" msgstr "Offset Y" #: flatcamEditors/FlatCAMGeoEditor.py:894 -#: flatcamEditors/FlatCAMGrbEditor.py:4810 flatcamTools/ToolTransform.py:295 +#: flatcamEditors/FlatCAMGrbEditor.py:4818 flatcamTools/ToolTransform.py:295 msgid "Flip on X" msgstr "Flip on X" #: flatcamEditors/FlatCAMGeoEditor.py:896 #: flatcamEditors/FlatCAMGeoEditor.py:904 -#: flatcamEditors/FlatCAMGrbEditor.py:4812 #: flatcamEditors/FlatCAMGrbEditor.py:4820 +#: flatcamEditors/FlatCAMGrbEditor.py:4828 msgid "" "Flip the selected shape(s) over the X axis.\n" "Does not create a new shape." @@ -2539,17 +2544,17 @@ msgstr "" "Does not create a new shape." #: flatcamEditors/FlatCAMGeoEditor.py:902 -#: flatcamEditors/FlatCAMGrbEditor.py:4818 flatcamTools/ToolTransform.py:303 +#: flatcamEditors/FlatCAMGrbEditor.py:4826 flatcamTools/ToolTransform.py:303 msgid "Flip on Y" msgstr "Flip on Y" #: flatcamEditors/FlatCAMGeoEditor.py:911 -#: flatcamEditors/FlatCAMGrbEditor.py:4827 flatcamTools/ToolTransform.py:312 +#: flatcamEditors/FlatCAMGrbEditor.py:4835 flatcamTools/ToolTransform.py:312 msgid "Ref Pt" msgstr "Ref Pt" #: flatcamEditors/FlatCAMGeoEditor.py:913 -#: flatcamEditors/FlatCAMGrbEditor.py:4829 +#: flatcamEditors/FlatCAMGrbEditor.py:4837 msgid "" "Flip the selected shape(s)\n" "around the point in Point Entry Field.\n" @@ -2572,12 +2577,12 @@ msgstr "" "Point Entry field and click Flip on X(Y)" #: flatcamEditors/FlatCAMGeoEditor.py:925 -#: flatcamEditors/FlatCAMGrbEditor.py:4841 flatcamTools/ToolTransform.py:325 +#: flatcamEditors/FlatCAMGrbEditor.py:4849 flatcamTools/ToolTransform.py:325 msgid "Point:" msgstr "Point:" #: flatcamEditors/FlatCAMGeoEditor.py:927 -#: flatcamEditors/FlatCAMGrbEditor.py:4843 +#: flatcamEditors/FlatCAMGrbEditor.py:4851 msgid "" "Coordinates in format (x, y) used as reference for mirroring.\n" "The 'x' in (x, y) will be used when using Flip on X and\n" @@ -2588,7 +2593,7 @@ msgstr "" "the 'y' in (x, y) will be used when using Flip on Y." #: flatcamEditors/FlatCAMGeoEditor.py:939 -#: flatcamEditors/FlatCAMGrbEditor.py:4855 flatcamTools/ToolTransform.py:339 +#: flatcamEditors/FlatCAMGrbEditor.py:4863 flatcamTools/ToolTransform.py:339 msgid "" "The point coordinates can be captured by\n" "left click on canvas together with pressing\n" @@ -2599,236 +2604,236 @@ msgstr "" "SHIFT key. Then click Add button to insert." #: flatcamEditors/FlatCAMGeoEditor.py:1054 -#: flatcamEditors/FlatCAMGrbEditor.py:4980 +#: flatcamEditors/FlatCAMGrbEditor.py:4988 msgid "[WARNING_NOTCL] Transformation cancelled. No shape selected." msgstr "[WARNING_NOTCL] Transformation cancelled. No shape selected." #: flatcamEditors/FlatCAMGeoEditor.py:1075 -#: flatcamEditors/FlatCAMGrbEditor.py:5000 flatcamTools/ToolTransform.py:468 +#: flatcamEditors/FlatCAMGrbEditor.py:5008 flatcamTools/ToolTransform.py:468 msgid "[ERROR_NOTCL] Wrong value format entered for Rotate, use a number." msgstr "[ERROR_NOTCL] Wrong value format entered for Rotate, use a number." #: flatcamEditors/FlatCAMGeoEditor.py:1112 -#: flatcamEditors/FlatCAMGrbEditor.py:5043 flatcamTools/ToolTransform.py:502 +#: flatcamEditors/FlatCAMGrbEditor.py:5051 flatcamTools/ToolTransform.py:502 msgid "[ERROR_NOTCL] Wrong value format entered for Skew X, use a number." msgstr "[ERROR_NOTCL] Wrong value format entered for Skew X, use a number." #: flatcamEditors/FlatCAMGeoEditor.py:1133 -#: flatcamEditors/FlatCAMGrbEditor.py:5070 flatcamTools/ToolTransform.py:520 +#: flatcamEditors/FlatCAMGrbEditor.py:5078 flatcamTools/ToolTransform.py:520 msgid "[ERROR_NOTCL] Wrong value format entered for Skew Y, use a number." msgstr "[ERROR_NOTCL] Wrong value format entered for Skew Y, use a number." #: flatcamEditors/FlatCAMGeoEditor.py:1154 -#: flatcamEditors/FlatCAMGrbEditor.py:5097 flatcamTools/ToolTransform.py:538 +#: flatcamEditors/FlatCAMGrbEditor.py:5105 flatcamTools/ToolTransform.py:538 msgid "[ERROR_NOTCL] Wrong value format entered for Scale X, use a number." msgstr "[ERROR_NOTCL] Wrong value format entered for Scale X, use a number." #: flatcamEditors/FlatCAMGeoEditor.py:1191 -#: flatcamEditors/FlatCAMGrbEditor.py:5138 flatcamTools/ToolTransform.py:572 +#: flatcamEditors/FlatCAMGrbEditor.py:5146 flatcamTools/ToolTransform.py:572 msgid "[ERROR_NOTCL] Wrong value format entered for Scale Y, use a number." msgstr "[ERROR_NOTCL] Wrong value format entered for Scale Y, use a number." #: flatcamEditors/FlatCAMGeoEditor.py:1223 -#: flatcamEditors/FlatCAMGrbEditor.py:5176 flatcamTools/ToolTransform.py:601 +#: flatcamEditors/FlatCAMGrbEditor.py:5184 flatcamTools/ToolTransform.py:601 msgid "[ERROR_NOTCL] Wrong value format entered for Offset X, use a number." msgstr "[ERROR_NOTCL] Wrong value format entered for Offset X, use a number." #: flatcamEditors/FlatCAMGeoEditor.py:1244 -#: flatcamEditors/FlatCAMGrbEditor.py:5202 flatcamTools/ToolTransform.py:619 +#: flatcamEditors/FlatCAMGrbEditor.py:5210 flatcamTools/ToolTransform.py:619 msgid "[ERROR_NOTCL] Wrong value format entered for Offset Y, use a number." msgstr "[ERROR_NOTCL] Wrong value format entered for Offset Y, use a number." #: flatcamEditors/FlatCAMGeoEditor.py:1262 -#: flatcamEditors/FlatCAMGrbEditor.py:5225 +#: flatcamEditors/FlatCAMGrbEditor.py:5233 msgid "[WARNING_NOTCL] No shape selected. Please Select a shape to rotate!" msgstr "[WARNING_NOTCL] No shape selected. Please Select a shape to rotate!" #: flatcamEditors/FlatCAMGeoEditor.py:1265 -#: flatcamEditors/FlatCAMGrbEditor.py:5228 flatcamTools/ToolTransform.py:640 +#: flatcamEditors/FlatCAMGrbEditor.py:5236 flatcamTools/ToolTransform.py:640 msgid "Appying Rotate" msgstr "Appying Rotate" #: flatcamEditors/FlatCAMGeoEditor.py:1293 -#: flatcamEditors/FlatCAMGrbEditor.py:5259 +#: flatcamEditors/FlatCAMGrbEditor.py:5269 msgid "[success] Done. Rotate completed." msgstr "[success] Done. Rotate completed." #: flatcamEditors/FlatCAMGeoEditor.py:1309 -#: flatcamEditors/FlatCAMGrbEditor.py:5278 +#: flatcamEditors/FlatCAMGrbEditor.py:5288 msgid "[WARNING_NOTCL] No shape selected. Please Select a shape to flip!" msgstr "[WARNING_NOTCL] No shape selected. Please Select a shape to flip!" #: flatcamEditors/FlatCAMGeoEditor.py:1312 -#: flatcamEditors/FlatCAMGrbEditor.py:5281 flatcamTools/ToolTransform.py:691 +#: flatcamEditors/FlatCAMGrbEditor.py:5291 flatcamTools/ToolTransform.py:691 msgid "Applying Flip" msgstr "Applying Flip" #: flatcamEditors/FlatCAMGeoEditor.py:1342 -#: flatcamEditors/FlatCAMGrbEditor.py:5318 flatcamTools/ToolTransform.py:733 +#: flatcamEditors/FlatCAMGrbEditor.py:5330 flatcamTools/ToolTransform.py:733 msgid "[success] Flip on the Y axis done ..." msgstr "[success] Flip on the Y axis done ..." #: flatcamEditors/FlatCAMGeoEditor.py:1345 -#: flatcamEditors/FlatCAMGrbEditor.py:5326 flatcamTools/ToolTransform.py:742 +#: flatcamEditors/FlatCAMGrbEditor.py:5338 flatcamTools/ToolTransform.py:742 msgid "[success] Flip on the X axis done ..." msgstr "[success] Flip on the X axis done ..." #: flatcamEditors/FlatCAMGeoEditor.py:1364 -#: flatcamEditors/FlatCAMGrbEditor.py:5346 +#: flatcamEditors/FlatCAMGrbEditor.py:5358 msgid "[WARNING_NOTCL] No shape selected. Please Select a shape to shear/skew!" msgstr "" "[WARNING_NOTCL] No shape selected. Please Select a shape to shear/skew!" #: flatcamEditors/FlatCAMGeoEditor.py:1367 -#: flatcamEditors/FlatCAMGrbEditor.py:5349 flatcamTools/ToolTransform.py:760 +#: flatcamEditors/FlatCAMGrbEditor.py:5361 flatcamTools/ToolTransform.py:760 msgid "Applying Skew" msgstr "Applying Skew" #: flatcamEditors/FlatCAMGeoEditor.py:1392 -#: flatcamEditors/FlatCAMGrbEditor.py:5382 flatcamTools/ToolTransform.py:791 +#: flatcamEditors/FlatCAMGrbEditor.py:5396 flatcamTools/ToolTransform.py:791 #, python-format msgid "[success] Skew on the %s axis done ..." msgstr "[success] Skew on the %s axis done ..." #: flatcamEditors/FlatCAMGeoEditor.py:1396 -#: flatcamEditors/FlatCAMGrbEditor.py:5386 flatcamTools/ToolTransform.py:795 +#: flatcamEditors/FlatCAMGrbEditor.py:5400 flatcamTools/ToolTransform.py:795 #, python-format msgid "[ERROR_NOTCL] Due of %s, Skew action was not executed." msgstr "[ERROR_NOTCL] Due of %s, Skew action was not executed." #: flatcamEditors/FlatCAMGeoEditor.py:1407 -#: flatcamEditors/FlatCAMGrbEditor.py:5405 +#: flatcamEditors/FlatCAMGrbEditor.py:5419 msgid "[WARNING_NOTCL] No shape selected. Please Select a shape to scale!" msgstr "[WARNING_NOTCL] No shape selected. Please Select a shape to scale!" #: flatcamEditors/FlatCAMGeoEditor.py:1410 -#: flatcamEditors/FlatCAMGrbEditor.py:5408 flatcamTools/ToolTransform.py:809 +#: flatcamEditors/FlatCAMGrbEditor.py:5422 flatcamTools/ToolTransform.py:809 msgid "Applying Scale" msgstr "Applying Scale" #: flatcamEditors/FlatCAMGeoEditor.py:1443 -#: flatcamEditors/FlatCAMGrbEditor.py:5444 flatcamTools/ToolTransform.py:848 +#: flatcamEditors/FlatCAMGrbEditor.py:5460 flatcamTools/ToolTransform.py:848 #, python-format msgid "[success] Scale on the %s axis done ..." msgstr "[success] Scale on the %s axis done ..." #: flatcamEditors/FlatCAMGeoEditor.py:1446 -#: flatcamEditors/FlatCAMGrbEditor.py:5447 flatcamTools/ToolTransform.py:851 +#: flatcamEditors/FlatCAMGrbEditor.py:5463 flatcamTools/ToolTransform.py:851 #, python-format msgid "[ERROR_NOTCL] Due of %s, Scale action was not executed." msgstr "[ERROR_NOTCL] Due of %s, Scale action was not executed." #: flatcamEditors/FlatCAMGeoEditor.py:1455 -#: flatcamEditors/FlatCAMGrbEditor.py:5460 +#: flatcamEditors/FlatCAMGrbEditor.py:5476 msgid "[WARNING_NOTCL] No shape selected. Please Select a shape to offset!" msgstr "[WARNING_NOTCL] No shape selected. Please Select a shape to offset!" #: flatcamEditors/FlatCAMGeoEditor.py:1458 -#: flatcamEditors/FlatCAMGrbEditor.py:5463 flatcamTools/ToolTransform.py:861 +#: flatcamEditors/FlatCAMGrbEditor.py:5479 flatcamTools/ToolTransform.py:861 msgid "Applying Offset" msgstr "Applying Offset" #: flatcamEditors/FlatCAMGeoEditor.py:1469 -#: flatcamEditors/FlatCAMGrbEditor.py:5484 flatcamTools/ToolTransform.py:880 +#: flatcamEditors/FlatCAMGrbEditor.py:5501 flatcamTools/ToolTransform.py:880 #, python-format msgid "[success] Offset on the %s axis done ..." msgstr "[success] Offset on the %s axis done ..." #: flatcamEditors/FlatCAMGeoEditor.py:1473 -#: flatcamEditors/FlatCAMGrbEditor.py:5488 flatcamTools/ToolTransform.py:884 +#: flatcamEditors/FlatCAMGrbEditor.py:5505 flatcamTools/ToolTransform.py:884 #, python-format msgid "[ERROR_NOTCL] Due of %s, Offset action was not executed." msgstr "[ERROR_NOTCL] Due of %s, Offset action was not executed." #: flatcamEditors/FlatCAMGeoEditor.py:1477 -#: flatcamEditors/FlatCAMGrbEditor.py:5492 +#: flatcamEditors/FlatCAMGrbEditor.py:5509 msgid "Rotate ..." msgstr "Rotate ..." #: flatcamEditors/FlatCAMGeoEditor.py:1478 #: flatcamEditors/FlatCAMGeoEditor.py:1535 #: flatcamEditors/FlatCAMGeoEditor.py:1552 -#: flatcamEditors/FlatCAMGrbEditor.py:5493 -#: flatcamEditors/FlatCAMGrbEditor.py:5550 +#: flatcamEditors/FlatCAMGrbEditor.py:5510 #: flatcamEditors/FlatCAMGrbEditor.py:5567 +#: flatcamEditors/FlatCAMGrbEditor.py:5584 msgid "Enter an Angle Value (degrees):" msgstr "Enter an Angle Value (degrees):" #: flatcamEditors/FlatCAMGeoEditor.py:1487 -#: flatcamEditors/FlatCAMGrbEditor.py:5502 +#: flatcamEditors/FlatCAMGrbEditor.py:5519 msgid "[success] Geometry shape rotate done..." msgstr "[success] Geometry shape rotate done..." #: flatcamEditors/FlatCAMGeoEditor.py:1492 -#: flatcamEditors/FlatCAMGrbEditor.py:5507 +#: flatcamEditors/FlatCAMGrbEditor.py:5524 msgid "[WARNING_NOTCL] Geometry shape rotate cancelled..." msgstr "[WARNING_NOTCL] Geometry shape rotate cancelled..." #: flatcamEditors/FlatCAMGeoEditor.py:1498 -#: flatcamEditors/FlatCAMGrbEditor.py:5513 +#: flatcamEditors/FlatCAMGrbEditor.py:5530 msgid "Offset on X axis ..." msgstr "Offset on X axis ..." #: flatcamEditors/FlatCAMGeoEditor.py:1499 #: flatcamEditors/FlatCAMGeoEditor.py:1518 -#: flatcamEditors/FlatCAMGrbEditor.py:5514 -#: flatcamEditors/FlatCAMGrbEditor.py:5533 +#: flatcamEditors/FlatCAMGrbEditor.py:5531 +#: flatcamEditors/FlatCAMGrbEditor.py:5550 #, python-format msgid "Enter a distance Value (%s):" msgstr "Enter a distance Value (%s):" #: flatcamEditors/FlatCAMGeoEditor.py:1508 -#: flatcamEditors/FlatCAMGrbEditor.py:5523 +#: flatcamEditors/FlatCAMGrbEditor.py:5540 msgid "[success] Geometry shape offset on X axis done..." msgstr "[success] Geometry shape offset on X axis done..." #: flatcamEditors/FlatCAMGeoEditor.py:1512 -#: flatcamEditors/FlatCAMGrbEditor.py:5527 +#: flatcamEditors/FlatCAMGrbEditor.py:5544 msgid "[WARNING_NOTCL] Geometry shape offset X cancelled..." msgstr "[WARNING_NOTCL] Geometry shape offset X cancelled..." #: flatcamEditors/FlatCAMGeoEditor.py:1517 -#: flatcamEditors/FlatCAMGrbEditor.py:5532 +#: flatcamEditors/FlatCAMGrbEditor.py:5549 msgid "Offset on Y axis ..." msgstr "Offset on Y axis ..." #: flatcamEditors/FlatCAMGeoEditor.py:1527 -#: flatcamEditors/FlatCAMGrbEditor.py:5542 +#: flatcamEditors/FlatCAMGrbEditor.py:5559 msgid "[success] Geometry shape offset on Y axis done..." msgstr "[success] Geometry shape offset on Y axis done..." #: flatcamEditors/FlatCAMGeoEditor.py:1531 -#: flatcamEditors/FlatCAMGrbEditor.py:5546 +#: flatcamEditors/FlatCAMGrbEditor.py:5563 msgid "[WARNING_NOTCL] Geometry shape offset Y cancelled..." msgstr "[WARNING_NOTCL] Geometry shape offset Y cancelled..." #: flatcamEditors/FlatCAMGeoEditor.py:1534 -#: flatcamEditors/FlatCAMGrbEditor.py:5549 +#: flatcamEditors/FlatCAMGrbEditor.py:5566 msgid "Skew on X axis ..." msgstr "Skew on X axis ..." #: flatcamEditors/FlatCAMGeoEditor.py:1544 -#: flatcamEditors/FlatCAMGrbEditor.py:5559 +#: flatcamEditors/FlatCAMGrbEditor.py:5576 msgid "[success] Geometry shape skew on X axis done..." msgstr "[success] Geometry shape skew on X axis done..." #: flatcamEditors/FlatCAMGeoEditor.py:1548 -#: flatcamEditors/FlatCAMGrbEditor.py:5563 +#: flatcamEditors/FlatCAMGrbEditor.py:5580 msgid "[WARNING_NOTCL] Geometry shape skew X cancelled..." msgstr "[WARNING_NOTCL] Geometry shape skew X cancelled..." #: flatcamEditors/FlatCAMGeoEditor.py:1551 -#: flatcamEditors/FlatCAMGrbEditor.py:5566 +#: flatcamEditors/FlatCAMGrbEditor.py:5583 msgid "Skew on Y axis ..." msgstr "Skew on Y axis ..." #: flatcamEditors/FlatCAMGeoEditor.py:1561 -#: flatcamEditors/FlatCAMGrbEditor.py:5576 +#: flatcamEditors/FlatCAMGrbEditor.py:5593 msgid "[success] Geometry shape skew on Y axis done..." msgstr "[success] Geometry shape skew on Y axis done..." #: flatcamEditors/FlatCAMGeoEditor.py:1565 -#: flatcamEditors/FlatCAMGrbEditor.py:5580 +#: flatcamEditors/FlatCAMGrbEditor.py:5597 msgid "[WARNING_NOTCL] Geometry shape skew Y cancelled..." msgstr "[WARNING_NOTCL] Geometry shape skew Y cancelled..." @@ -2981,7 +2986,7 @@ msgid "[WARNING_NOTCL] Buffer cancelled. No shape selected." msgstr "[WARNING_NOTCL] Buffer cancelled. No shape selected." #: flatcamEditors/FlatCAMGeoEditor.py:2711 -#: flatcamEditors/FlatCAMGrbEditor.py:4442 +#: flatcamEditors/FlatCAMGrbEditor.py:4447 msgid "[success] Done. Buffer Tool completed." msgstr "[success] Done. Buffer Tool completed." @@ -3289,23 +3294,23 @@ msgid "Apertures Table for the Gerber Object." msgstr "Apertures Table for the Gerber Object." #: flatcamEditors/FlatCAMGrbEditor.py:2291 -#: flatcamEditors/FlatCAMGrbEditor.py:3602 flatcamGUI/ObjectUI.py:228 +#: flatcamEditors/FlatCAMGrbEditor.py:3601 flatcamGUI/ObjectUI.py:228 msgid "Code" msgstr "Code" #: flatcamEditors/FlatCAMGrbEditor.py:2291 -#: flatcamEditors/FlatCAMGrbEditor.py:3602 flatcamGUI/ObjectUI.py:228 +#: flatcamEditors/FlatCAMGrbEditor.py:3601 flatcamGUI/ObjectUI.py:228 #: flatcamGUI/ObjectUI.py:891 flatcamGUI/ObjectUI.py:1465 msgid "Type" msgstr "Type" #: flatcamEditors/FlatCAMGrbEditor.py:2291 -#: flatcamEditors/FlatCAMGrbEditor.py:3602 flatcamGUI/ObjectUI.py:228 +#: flatcamEditors/FlatCAMGrbEditor.py:3601 flatcamGUI/ObjectUI.py:228 msgid "Size" msgstr "Size" #: flatcamEditors/FlatCAMGrbEditor.py:2291 -#: flatcamEditors/FlatCAMGrbEditor.py:3602 flatcamGUI/ObjectUI.py:228 +#: flatcamEditors/FlatCAMGrbEditor.py:3601 flatcamGUI/ObjectUI.py:228 msgid "Dim" msgstr "Dim" @@ -3553,15 +3558,15 @@ msgstr "[success] Gerber editing finished." msgid "[WARNING_NOTCL] Cancelled. No aperture is selected" msgstr "[WARNING_NOTCL] Cancelled. No aperture is selected" -#: flatcamEditors/FlatCAMGrbEditor.py:4270 +#: flatcamEditors/FlatCAMGrbEditor.py:4280 msgid "[ERROR_NOTCL] Failed. No aperture geometry is selected." msgstr "[ERROR_NOTCL] Failed. No aperture geometry is selected." -#: flatcamEditors/FlatCAMGrbEditor.py:4278 +#: flatcamEditors/FlatCAMGrbEditor.py:4288 msgid "[success] Done. Apertures geometry deleted." msgstr "[success] Done. Apertures geometry deleted." -#: flatcamEditors/FlatCAMGrbEditor.py:4427 +#: flatcamEditors/FlatCAMGrbEditor.py:4431 msgid "" "[WARNING_NOTCL] No aperture to buffer. Select at least one aperture and try " "again." @@ -3569,7 +3574,17 @@ msgstr "" "[WARNING_NOTCL] No aperture to buffer. Select at least one aperture and try " "again." -#: flatcamEditors/FlatCAMGrbEditor.py:4456 +#: flatcamEditors/FlatCAMGrbEditor.py:4444 +#, python-format +#| msgid "[ERROR_NOTCL] Failed to open %s" +msgid "" +"[ERROR_NOTCL] Failed.\n" +"%s" +msgstr "" +"[ERROR_NOTCL] Failed.\n" +"%s" + +#: flatcamEditors/FlatCAMGrbEditor.py:4461 msgid "" "[WARNING_NOTCL] Scale factor value is missing or wrong format. Add it and " "retry." @@ -3577,7 +3592,7 @@ msgstr "" "[WARNING_NOTCL] Scale factor value is missing or wrong format. Add it and " "retry." -#: flatcamEditors/FlatCAMGrbEditor.py:4486 +#: flatcamEditors/FlatCAMGrbEditor.py:4494 msgid "" "[WARNING_NOTCL] No aperture to scale. Select at least one aperture and try " "again." @@ -3585,7 +3600,7 @@ msgstr "" "[WARNING_NOTCL] No aperture to scale. Select at least one aperture and try " "again." -#: flatcamEditors/FlatCAMGrbEditor.py:4502 +#: flatcamEditors/FlatCAMGrbEditor.py:4510 msgid "[success] Done. Scale Tool completed." msgstr "[success] Done. Scale Tool completed." @@ -6476,7 +6491,6 @@ msgstr "" "but require more RAM usage and more processing time." #: flatcamGUI/FlatCAMGUI.py:3992 -#| msgid "Geometry General" msgid "Gerber General" msgstr "Gerber General" @@ -9592,7 +9606,6 @@ msgstr "" "like to add to the beginning of the generated file." #: flatcamGUI/ObjectUI.py:1502 -#| msgid "Append to CNC Code" msgid "Append to CNC Code:" msgstr "Append to CNC Code:" diff --git a/locale/ro/LC_MESSAGES/strings.mo b/locale/ro/LC_MESSAGES/strings.mo index 921af0e22eebdaf2799189c380a1fbe601d9414d..8ba91a203f0d8d05ae69c9aa4d1769c63bb3ad59 100644 GIT binary patch delta 40055 zcmZ|Y1#}hH1GnorIR|%wYw+N~9fG^NTX2Wqa&UJG?(Xiztx&93aVS!xSfR9NzxOwL z^Z&T_t~+Z@pKY^e>&%Iejz1QE%!&B^yYYRq9FE{9j*|kL6mpy?(Hv(%Po+A}Z*v?c z6mMX+sE(6tuH&R8K7Og=q{DR>i06@P=XZ>QFK}Lf<9tSNX0LFZ7&sSW;Yy^O-`P$e zCJD!^7cn{UJD3zdB5iX5SDFfvVX&p5No7qF`ncRB;8=P&P%a(r&1s8jNvqwske?276EqIg6T#-)#OH z)b*bD#yF^5lhVeEVQscWWj}!&WGqhLadP5$R0F=Dwo%-K9w!3^S<9h@urs#8sn`eK zVR7u3$m5j3wWx-_LXAk2#2$B1Cc*;5Q=k|9bqGWu&;Z%?P7Bm3?P%?d>fulupM)wm z2eqn~p&Ggg)$oI;8(u_>=si^Z?@`x%L5)o0B<^*7Cjo(|B&0{(I6JE1f~bOJthG=# zYJn=(9o4Xbs2h$&)e~X!m)Q7v)Qxwb>OF|Tcm^wJ|Gy(pnuOv>Jx(bcj^{j%a{^hk z&Wz+{YEEEp;(z0N?3BXvutiGKu-;gd^ih}%k78SVje0QEOJy3^6JHP?i1W1n+okq6 zJuo21^f(-~Ux%aSa4~XEXAf%5uB0(N{|ze;e~jvRj7T-HOa`u3=)=#LueF*ZIM>k?mK(?40GW$-u|Nl${BvJ$8V zSanprtx>zBcLw&qDx5@uZmKAZltjbFz+q(8xTm@K22g4mhN9H&F~L5Ba5 zUmEp1DH?26e?8PRl~@S}P>2DN(Upcc(W)FRr88lhvTAwPpEe;L*A zN7nbK>wKBbjpCw4Bo(S-Wl`7F@e|M^whgYuF{m5o%3>-khq|DijkiHn+#A)CVW>GC zhnX=^R#RUn1`%(Cdhm>}E=P6b7A)xJa7(27dcjhwN zF>M}WTbxDyIvj_gdCioaLCxWH)Kol1jnpgD>-Q__5$(-q7GEONb0Z5XJs&pE{;xnl zFOQ|DRe1pQQn`X!JTFj>;7Iw+gCi?yNb8_hbvSB-#-grYiW;H4SOV`@Qx-7SH$`1P z8dGq8XB7e6@EC^RO;iOj3YvFAPRvTY8CJsas2*HJm3wOAF$m=;%~Zgd7!?hdMlPf+{#n@x{f*bHq_RQdF%ZCC&` zvQ@3^QHy&7sv&a&cJDWyvNCc{-gwyPzE*k zb+H15p%*uz=6)+`$oHY9-~{Sz_Y3OD7p;O_1E?uUk6L^o*b~d(Fx-u5aG{Fsi1?k( z1oYrogjKL)C66;1C!=;l%F3nz)ldznkD8KJ)_$n%G#S(2CRBqjq8fSwb=`f`)V@Hi zk$>GdV-vZG8G%4+dQ=bcVMZ*84Y56HNROhPV5zH`Ctw(={0P*DO+hta1{T5vsI_wq z)$=!~sZLjo4r*?S6VM{;hVyX}YLR8GZWc`g)JTlSTDTweyog=HJQp&c@@t|RFdVz$ zXw;hc8>?a2njU8k&P0t!_FAkB4Mjl$8k%yb{aqW?!cM4dHySmU6R;F6M)l-()M89n z+k8T*W*veWxlO1MyNbmycOA22 zO@b<)4%PE4)*PsJKyK7j6hw8TB&x&ZQ1`1-m;J8_T9Tj}wMRYKdfEabQFAv9HH7O? zbNvZ51(EA{oT-=+_v0p1e#iP|#QLDhjmH$Y6t!3n+Vs1A0_jQk8`Y3x4NMQypjw{I z#`B?8eJE<^>Y=8pt&I;sjo4%xUyQoZW}AKiwZ`saZ2X2SBj&%MxpC7*=Gh#E@hQ+B zb)$*a1*k={0ad|nn|>0tR<5B&?k%bz-o|FA6QCNJ7L{HY)sf1`ef&;K0;)J1waEO| z8K_6>YRrc(QFE8BiD_UiRE1?w>2*;rvDT=O>x7!paO)7%BX=xn#80`h|NbPPp^4Yj zm=je|RaDFCVi0ygEt<)w8_q}dcr9u~_M>`s2377pY9wD`PIQ`??HGbuOG7cg_WuO} z8tTZ+O^*_xZjcG}y3B`KRFzOSs)y=X8`O=uVK5G|@s+3%*oG>%AJxzksFA*oy6$)M zYtg+X&=WtPR%?eA=0-zNH=crdaXzY|i`L&!H+XOThI}G-qP8@T@|>-B?Ghh^6)3l? zwZ|ENFHjw98^->3=P1nFXb7t1<53Npff|{4s1~n7mEVop-$zhWbqaOe1ys4;P$Tsi z3*dX3o~@0^FNEqyxi)@}(}+L=5+31p%z|^;n*DkVHK+GcYvcoF#RTolVhy#{!64Gx zV-6gLdT#8&H25oO=-;Cn`X6d!qx##MgaoJpDN#2JM)kZnY7tgLt@gI42T5O>KhvhK zKs9hDw#Lh-AurIu<5a|Tm$LB+s0-_1 zF>H->aVfUMe^A@3VHdM@#-aP67WI;vW4(l`Cwf8()`GpkEJ< zQy2q#ng>QT)a$bss$nsEnIVjiil@MDm=<}YIBCK?4$mxSNN+lZH~V;;I^@6W>v0ZY zg?>!A_J7p=X08KKElY=53n8doPz1FtOWE{>sI?J>$uJys-4xUVX94Q^&A1Ww+5Gkc z=qT~ts1c4dko~W@4kVxoGodmH;8-k+CGb3I5yc*4Y=G+VGSm>SK{a3t>NWfmYLOm6 z=GeK5n)`oH4fGB+FQ-I<+5f5_KM86;ar9v|RL^UpDsE)c+o3A%jM^3BQ2To+s^S}{ z`u@c1_#QK1+9Bp+c_mc-1PsO*L)iam2^=6n-=n#Qs`xXi#ew8^#?+__C!%)COw5Q2 zu|FQi0a$#f`6_xZo*Dq=}Ax{m=X2-$b(t140cC8KG{X4AK#8gdXdg}-0`K0+<>Kd>EsMwM$lMkCMu>p>tP`*SdA zPG^iY`*j~?BYt_D`7+xXZ}xk7)DY%CHLM}3VI46&_QeoffV%!1Hp5S-Cuze8W-7a3 zWbOaH1T-{5tYfTGQE$7ssKv9~x(9m_KZlyb(21r;TdjvsJwJzjp^)Xh_qc7GWM#!78Ys3Pbg@Cu*^duuefWe7?igBkU!b0- zpKUzbke68-7Jy z7i+3%U@}}zJOow#3f91Tegd78G0o$Y#099izKcQl4)u&rFx@=)a-w=#1@$~=gsHF< zR>5JYx8r%#$i$psu1|}4y%)or*ci2~{SydeCNLe>;sGp!ZD$(Sqn;0MP>U(^EHkG$ zP(xTA)uWo$Ca95Uheer-UN(KpY%_xUQ5`&wG{EmXB%lhOqZZlUwm{?v^VUm_TD`eZ zLtX{dvlgh4=z|*ak*GPJY2(Xnd^@T^N7218YAPRMbnX8S1XPh{j;SCHYK~K(hB(B= z3)=ijsD?B|HM|R|0sU;_I#=cEf3? z26*Nhqo8ga3w5KUHa#<{fjLoAP!9F{sEZoGF4o@G!PZgp+5cKplSt5o(@|5g6g704 zQ5Ee)t$|B6{ROJwf7^U#f!QrdP;00VYD6ocrm8Kffdfz@HqE+d0sFrf3F}GF_DQ|a z?1s*$g0oQcv^n-#JS z!8v3c!!T^J#C#4og0qQ7T53MuFF-ZGS!RrjYCsTbGiwR|Uv;gj($%P`e`b7LPL$1Fr2#= z?7cP0Rx={Wus7)$P>Xv$YHh^XW=x6NZCTN;Rb7~X7E>r{h-;u0QA1S0)~H3(6V*^Z zY6_;I-tWs$_3THLKZ1HhU&J-|1l52k+s)S#3$ZBiJKNd+%1E}u6bQz&#Pee-hPWYW z(Hz)mhW;rwCLVv6`4XxtZXupyxA`{wJv>T$@*ZQ&y{3GEedeQGckDoZ1Zw0w`xBc$ zg8ioDnNSVNKf{wQxjQzkZAu5!r1Z5V2cafo0&2{rqpF;b8k^TD$7%Cq7>F~7-^a8V{W_3cf|S_aLzp98ex1ox(Mr% zzSV!;{0t<@1v85+uo@W$P#4CyX!2WQsM4`GenoxYE_%s)PM(k5iO2rc;|xVV7DDH; zX=q_=L$nJ{Q8M;Jf9oqIa2xfkt9#Xa>>P?}z%o=%K4E&Ce$5QwZcIQ=ZsK&(Utc#P zHT*Y^^MUwrJdgWtm=2A? zq%XIg!Lr==E#|`l_f12(JTPlv`0wVc#D7uG*bxtn=P@(!q>s!atu&U_v#}F_%4BTD z8u%H@V3o(_Svk#m7)z4=8na`rCnmo+>Jc;YB+Sg@J`@AOVS=a)# z`uk&l+<*fx<9qY`Sc-aHtU~Sg&8XMZUQ|7Sf1B4>+P~TVxiT^XN zEx(_@WO@|L6FV0fyFCGJ3!hJsxRH&iO zf_i}$z>-)IRnG)mk2A0cmWUj{6OjEskU&ck-eU|#qF$5$_qRA&MKu*&MBU(b)T8$m z*23)3j6*Sq_+`wD@2#n#2e_Y|D&R!YyW?p5iv4h8i~y%L_jkS$n1wZC2DopvKTtO; z6Dz=-(;BFF3sjFgqh30FQ6sY+^%egc{c&6bT3U~qo-0$kn!%W00BnWWJbw@pVBT&2M1g62~xE^CB zG;3)O<|KX#^;(aSD8T(mVFw&Wd>pEQF%tU&+?+@mL#KTaaUB&7hzkxjB0t|OabnP%F(DrdD;3Ib>now zW|3A$#rt4$T!y+nAhTIR)lehV150cFFC(BHJwXj^NEXxbeyGK^3)Sp zu7m2yJS>BcQT1fW7T``vII8}gs7HIg>}CzMLp5v(`tuQRa+r+#SeLO&JE~ml{HFezIFk6V{Qdy< zTZ@qk1i0T!$$%R2l31H3R2xi7d~ZSCg2ZoQG<;adOv%f_JfevgDPrQ4i<*&|i+#B6 z4eIsVu9#`iVXRF&Q*kpQ1N{UvXKOJtzC*P%WeL-h7Fd(`9PEM5u>v*;HR&r+<^Mq~ z+QKEx4Z5Ko&Bsvt|1N4b#VcjXRYUC({|K9~5B0=*jhdS*rOky+P*XAm_4Yf28scxL zCt&_EW><_s?TRZ{0>5BJELzq)Xj)?y;^QzFcOduiJ9lh>IOWU}E1xwC%TaI!>XXY& zo1VYC**wOiW-?n73~P2Mx>i7`(v3+xQgmQ)JmquA*dm1 zfm(D6QFHeIwe9j%Ha#4Q+D@xc6-TLJ-YJE#7V&V@6rMtjWYVgpV-+zU_jjf$fG1Jg zb_AYFm9qJr^ohH@jsnYQ*kZGt@B8iO#47Z$n-86?I+Jn(Tkg z(R>0W@hGaNzFNi#sKqrAwQnz=7HQ(z=B-!~)uXAXm(5|+%jGrdx)gQH2sO8kMs;8# zY7JbfW8eRuY=Ja&O@RuispxFuGf|6Y59(3+5cN{ZSStqqvr4eY7W1lUMg8znMK(h zs}Wy>y1`3Kqx{xpWU8We%Q#GnCsFl1L%r>igqbO)XuH)CqNgPQBF zm=J^8m>U(xq{LgG7To~UNUXy+cn7tpUZOtPBx-9PK&Z9Q8r9%Qs19$&RC+(&BA^?7 zvSw&!F06s-Nnh0BnTNF4If}Z`Jq*IA?M=m*Q5~s_xsT^s1E*xYGC{h)X)8$ zf&}#XY>aB*P*j0s*3&ls6>7T%b~KOb!l)bd#vojZsqm=v0jeISlQAQzBUNlX9Q|t1 zJOa9KA8OU!u*T?YE+~c?@;264sC|3_HJ8ter^mRy(Oxr!?7T)LoM2es1By- zZmiv%{jZ8fk)Wa9fo$P#x~#C!mT(qAFg5YRGO>4{o4_%+t#Zc}7$Pm8>05Yho-G!p*22KSPad z+Hljsa;T21;wp>U|3gs?JAppDi&_g0t$}^a7oDY1J+6lu zfv(n>s5P(;^?~FXY6{+>yZ_VmHA5YWy08VRqS2T+fDu7Gcuw~Za2`hGUmjVr}9WaRa0MzQ9kKEVUi!t%2 zjbFfM#DBxc_&aKqKSPaF%rRz;LYG`>(uKiz|KoE9A-Eb;uacn}3#0i^z z2Lp+JMh#`0vF7XlET}b82z7m9RD=4X8ax!WYbK#?ybkrm+=c%51Wpprjc(WiZ*76E z)>z|Aeo9mi@}U-OCDhsoLyh2In?D(~dzRb$W2iN7+s6O3#v9N6S5LEyH`}Kqs>1q` zk3`*3JsWq(torq+{4=Ok{}6*P`e8F-SyB0=Fg7-}cEr=XEc&C?SgCiWT>E!^)1zS| zsAscLL$e;Wi1wp~^c-q`zp#4Vo1smN>Unz9l;p!$SOZmGGt_mxQ1y+o&bMy#6VMF~ zp{C*vs=_z6fah=1^FVYLkF~tD3F?MDP}liUb37H*kpVr(Y&t{FZLDl0&Ey^jF zA7^6}z5mY

Zjkdh)>f8nt@AqUJLC7h_UX4}wu6RtWV(tb$s^ooxCD)RfFd)xQ;0 z|4*njauyS6|34z28+}6ED9TsU;zX#C$cVa8LDUpfw)rh=es`Nc997ROR6Wa3J>P2M zM^FvFh&k~A*3 zAyy{-8CmR3d9T;~6~_Un?dbJ+-EZfm!`H;KqJKMqf7*DB7^VY_QO}1qsJWhq+V?9_Yvn9ztvrw6_quZu z5Yy{ES_4sYmI*cY1#EgnRD+sg9_+4kMq~wQ3iibEx^sUXb;Dbjfc*EUp^p~F>%J2* zBdgxYf$CU(KLIV8GN>V}X>Ejh|F=foMbQSXH9Hvg3M8tMj*Q5|}R zInW!|bT~JvL;lhP)WUi=kQVnrJ(B;5XKolRzNsh)s-lcGo*y+;Wl)Q_MHciY*26$r$o=PPkG?n-7>b=4GR z8!g5ST<|MyL4Qiqz>rj?C&f?=tB4w*TBxaMg<2aOQ6oAOwf`efZ_hQ@lKVSH322DY zr#6eH3aUUG)N1u(PF#e=@jPmE#|knx$cq}GN~qUtd(4g_u@-K#MoQy#KkPO@eKs6{ zemx>r6VP@zipB6IR>LG|%|301T0Aqc0Uks3EJZp~VQ$n^HAStZo~WKqN7cI=wSD)a z7V{xg$Ihf<|7+-;k)R>_%lZk`gMjp=q7c-YD2ZC_)liG573#XKs0UXcRELJ5Mr1x} zt?aelLXFT@RDDS^_`S|C0vR(HpQ9??l+hH}hl-y2Jr1*8$Cjj5%I$T34`2hTqXYAp#T|k9wEwpf z&|LgseUEjCd-9sOt&f`9=BT0WfSQ7Ss4q}Ppw`4`R6Vy*Q}GP7i#}l=OpwoP>j_wv z_#Mov{huzsX<-9wL`J3pUgtOtM?LGy7c>nRXdQ)`(mla0Y6d zEkiBVRag%ta4_xPepy6Ux8Eb6l&4dFK=#?qJnwgWW*rS%VBzKXPs#C z{aXnHlW_^PjXt4PYwU`q<;l<;8PuxJfogeq)U&<5jdw%!%x~jUQ7@?_s1ZAb+3^Od zT$D;)XC%LW;v^xU5m;E+yhK)@8nPEv@SOE7s$s8D4ft%+V^lFu#uTWLD~!5fRn+sM zIqIFz6;&#xw5n#CwZw$PH=-&$h8mH(HvJ#e8i`fS zj9fz0oTst|V^!k0QSXAG7{v3(SwcYj@rd;fs-lmW6+P9>6lF(^NIg^!+u3-3)LI#j zdXCINb!ao{wY(oo;zewL@oN}6p}!&t#|daiW7jk{NQJ5}C+bGUP!(234QXRk&pM(S z6pndu6zUPY54Gw~+4x1&$lXC*_s*t&t!dx?(QBE{eu1chD^WMvkGk<0)D5no7F~?m z#&oC#6tPypx*k4=U}@5~*Wo2a{2weqJhYzId4oey*Y&8+{#Q?j*Edc@wQvz?QLaIa z%w|+W4q4Blrs%r$9%`5Tfok|)R!;--z>15yVLenm?NE!gm!H560;BN^7HQ~pN@3(i z=8;^{+7|VZX#|GgGMj!G^?Z1P+TYO|nNJO0sBx5IE(7I|2hHn__57+ zjjHf7>Vkw#%qq`_S_>sG6V^oK_eb?)JnA{J5c}gv)T27Isc|%BBmN6&Dn243=64D; zGmE7RW+kI4YM=H;wQv$@P0Y9Pt*9YBWaH;iQ*;{(r$_%lqW z_x~rGkgA3GSez48pf+k1hoKtM1$ERXo1P>=efUg` zN-u^gU(u#FM%B|FHC5wKPT>m}4hu8f@$8o678yS1D|Mlc6-P63ynxk$s9B<+h z9E}5enGcfz;pQ`37)By}7it?GKuy_k)W}@Lba)d}<2O`;QuQ{AH49cIUaYs@?Avi9 zXpU#1Dqe=}{V!}SA=haXR3Pa6#XUvGRup}Np)%y*#iz4~^ znom60F*gadQP1$vs1`3oZKt)U2Bhm}(z9U@@q#!C8=^iR+{0nms=wFy6(6Aw44_Z9^@#!>AiywBE7l z&rv=8gz8}=rnnKtMm4Mh>aD1$&!GK3o`B|j3wm)E>WQ`w)x&eB#q}677x#WYwR1F(Zl?~H?p`%(3M!5G^Av4-*f_wdyyYH{ToZsN@`AMt@B%wpM! z>cI^R!N;f@CmLzev!GUee$=9Dgj%FCup#b2t*!W@%v5GZ_xJyE5zvqou$Dp%T~%v6 zRL`1Qd*V>yqfl!j@@P|joOL>?=krldz(uIFwFb5CPoo<0cr^Q8L;8gT%}KN|UiXJX zsZc$sfx2-xYVnLg4c$WPCe&0MLOqbqS?{6hdyCqBk;j^Nb}UA`l#LG^%Ur4@vq(?{ z8?YoEM7?gEai+zotwpgS$qlg*E=M)!73%u`kePJijW_W?R0lGk$`wSdv5Kf&QPodC zL(~M-leX4y>u^-Tsi=l7Mt%6)g&N9BsOw&#rtk}Dq@qkPH%y6o!sftLSP6B%w-|>0 z&jh9sXfe?&lD|-o;3|{M&~?Nh;?u0#P*ZjpwMOov_VY7Tg$XC~xgH0gJ{|vuL6~HU zSp$VoPrioe)BYbuAUg@8aRu(c>MAhRxE3|!A5kqYJtm0O4d zn2Xh@a%pFnH5GyyxjGnG`@aVP^{5|eu12ATdJd`wn^9}wv`zoRrhh}tY2umYx?t3e zil7=&(Z(C1wrxAqqV9!iK!ozO|922jMMqIXdfCQrqaL|0Q4RYW)zhf6%)U>CsyK&@ z7q(VIm2ZVw6TMO8hN7OR6H)cfK=VA6QiDtX)y~1qZ(Qp_23CZ z-KZaGyG=lCw{5 zyb?8K+im(`)G9xPYS2T}5Pz`wfpg9E$*gIt!E@RFS}Zw9(5K!)sGikE-KZUEH}uBL zI0H38KcO1@3u-mrw)*Co{A?IRdJ)uiZGx(&FY28#3pJG+{RAcvID{Rs>U{I9ls%{h zyg}Xg8*0vi7nlZzpc+yb)#Hk&xo(2)Vzc%_O`RXr;C0vy_n{i@&$7^bRay(nlduGT z!Kc_6cP=tdy0nYE&TiseuoGrjVj3{by2QE}HKGSmYvMF6#yhAE4PI&*IKjyKpMZL> z95p1nY=P6L3a+50pVM63fjetO=Nx^sN|!x6>0G zrv3ldO7rD#_$u?wq;sf|2wLrRe}S+)YN+m@`+;JOX=rTJkO!gCv!aGRFXqQkY=(U? z7hb~(7&z#gLF>KlZ#?d?CfH!Ubn1?ID7O$l;3d?eI=#{B z{-W{|Yt>EW8=50NL$T=Ei3vpGn6S&Lm7-3%3P>b zUd&nrwH6wq)@bSyKI>^!Hs57# z*ah{B?vGD!A(p_AyUlk*kKFB8ZGOP( z%p`shyJMT5%!ps}6Hrh7L^Z^7(DWbV%mv{`%q}^2 zj9o)K&v8~a4m@eTSsn9d^EF=|tj2YLXUwC$6;9Xt{{ev-WQ3nJKan_rRf%W)#SCeG zOijGNIrDS8`q+;6VQh`T=gp_wiKuP26?Oen)Ewu(V7_+jie-pj#NwFnqQ29@{;NYk za~y$@=;3v2PyEg$^G)M&zw#s`eHB(BJ@ATYXftd?{5b04b?U2L_g6OiqtdTqbPrk?aC-G!=&B#W%$NpE3P7u&x_5%!Gzzn%+M zJ@>lSdSN~|e8cjj*Z$M|8hbR(>dC0?2v&%k=b|3!TcsQ${>3AO0Ppw`ee z)Z6p}YUG1nv;Qj+Sn}GuG@fGv;`!g0@BL0e#s9GJ(6{D?$8#_WJ-LTdmH(Id;d8%t z<|im=-}Aj4@_$ABdx54O%%|*j|9BmKpUwG*8A$Kp|HS*5K*VQL@aPxjl=v@S%}c}g zpV@}_QTwJ8hz85uuw{Zf-;;Atf{c{OKA&}PN zbN6``)FZb5w!m_z3Rh!X+=+U`p0r*=y}qBI9?c(7L zt=HUW9G)lRIqHG4*XMITI-SH~#2=t~m^zZr{YNPIP&a&rdVqaJ-Pjk|bRa$|o(B6e zqB*f7@zqg$&N8Op8FtVrm>AvX{U|v^!`$dHs>jbzH~56f&=b>VKGmY)#cjMH z>SZ(#)q%M-e--M9dc?-Bp~}5Q_w#?8SmuJ1=p`cyw!j?N2B%;v{2R|Md&RL`rB(n9%2UGcu5%p)Q1t zu@Y*vuR^WX%~%SHB=Wgm9}Gb)qL)~chBr^_b6?9_lb8{xoYahHGt_gW6L!Vz*0jld z?x*5u$^1U|5qf}xf)sd<`7nEOpZkPsjmwG0NMS12jC#bTO6hZdCu9)nL6kX_8KJ?b zo{mNJbOEYk8?Y$;Wb;2EYmjeBr8Ywp54G)5qE>A-)Cd$tRahFesOn=j48vSF4fPy2 zhAMXzHD%9GYv2vm!cW$!L1v1Vpgzd>_Y>$wpl%v7hbK_)gz9O1?nkA0ScUi%9Li9q zNoPiCS$d!QjmcZMPSsJYGB+NGb%SQCM@Q2Kd@B7PQ*{5<~nzAv#sZ&rtlJm zVzd%|pZl8*l}ebo?vL8vKVyB&6lxw6ek??M9cp(xLXAw$l0NqX#%NUfRa8TQO8MMh zIH-%-1v^nw_y9E$=}MdW`}qmzGu=h3hV{z$+%LISVjkkT%bK}ti`|JYN6mGDax5OK zjs0;7w!~=V&AX!$Y8U*1FECF96Hi^yjNoX@LAw760ZoCok{QZ;s8!ttHHUk#IsSoK zOyw*4+*P&XxW{Ll4jb6v+e*6xuOGikb ziaoUd&(d&X>2*-`tVXSo*Vqbcwq*Zn2zLtNKPJAfLYbYW)AOu$g$Cs7@X(#GtjGHuxZ+BQQ-(CYpfCt%^W z=0SAQ8m*mqL|4I51Zv9u!@iiOqu;b} zeMj>Ie1e+0(w)ql??gRt(snk_h3=>ZpSLFMV&*&y)v$%u`>1m1y87Io19n9{FCtL8 z;uY$NTiV~v1eTzl(O=Glxx4L%+y+2bG_qubIoxLvSMw!n>#uYTVB}X%`{S8Nc(2KwUCQ^*1e@gIXk)Q9X@2z}&D1h7%uvdVst} zy%Wk0G}kRb)pHAVeXc>~ZPyid5Z{KnzTIH6Ms8yZ?f-&9%-qgJ_3R&Ph51<+oH@oA_jxQ-pMz%bLWWvJco8N;yEaI+Xsp|*Se5tQft&N>2`ql6>P z`@05eku1RF_!jj5nl;M29Ro(2Ra_Z00)EsJ@;7uJRAbDP4#vu)??P?cfU)KiRVb=s z?a*JEz*++Opz#tlbV1`x&zhnhB+F6nf~Tk{Ni^P!KuJtPd@$z4#TbZJFe5(2tQcp4 zSsO*Hy;0>hPhkJ6=f_A;1HM^vO*B0WL%rYUpc-}>^%{;e$=tAnH5}EzwWvjV9W^4U zCY$$uJ=A?BqTZUPFb{gCFsHh4fhne7M^sOi*!Wc}K|ID()04`mq3nynxYK$U)zB!@ z%x)-vdcAf)jldk#bL6;<$DeLSvbdjs9h9qR7K7V)6krlj%X{?qkA-J z(QdN7M0F_JOq1T+x(L<4JE*CNHOuGzrlmhG0ae%twQq-@3M@xG2hN~w^be|`sb`xJ zs)&h*4?*>C7HVxAK|K%tL`_+$2vdJ!RDFKbZrXt5wf`RyP|vf@F%OtJNQN^DE8rc} zkY}80R&5w+8?Hh%^ckuHap#$MUesD>jEQj^X27MW2i+;uThf{D=zv={nhUqF2lb;@ST^Uq`-Oz*aynLJs;I)en zNyvga_*n42BOm!|`S*v;y2xBW@*pyKP&sWV986|(jNsyI$iGo@_^WH~aohSQWe*cR z{=X{ucujm9_37Y8|4!UUJe){7k71<$Wbr#U|>qWN#k zh5Jb;Z7Zm0t;|LIxvu{mFR1tojro2oBJT}lz8?(;C*&qc@ej)WWbA15Inz=88TtSBVEh|WAwR}(nsauvH~U^d`!^34>DZIQ8nw67H5Cbf1(Z@ zzfhJxzu+E+NRP_N+sNQXPR9mkTyyF$xCQbd$?ulU9)%>KUu!8FdUM zjW?Y0o--q7R`MrPXEYj=p1QgaUPC!O_VmAf`HAxGCgX1}I=Ly(p3MCu{X)hv3h)yT z=K*Is()5k`ak>fN?bw$ae5PDO&H}_Y5HH91C;2+&P=2imy8k^+p8g5lX3hhg?Mcl` z+B-it$i&Tb=+~2V#Gu9Bk1Q0L@3xfT!!u+g;+o&MDSw*L=}Eqh%jEq_x{gZL#^evR zb=I@@7>1`ghmqc%Qx6%3*QC>g!~*uh=qgNR2GW;f94g;I+6eM<6YfU(6&j!;4d+SD z&y@Rq)FzOXvdcIFDBr-ARleR@E&gv=zjNJYKBS=jja>)MUA9-cAid51NO&g|HpbMH z%tWjgfUOhVxgWJKbu zWYa&nxqMfEcs)J z?LYk0PodaUc7=?N6w*=8;Qn_cX;~?ljZ>dM^fR)xoEf>sLz<2;2In3(({TsW*)`Oa za5J0UhwHwPKb&(ZXJ+F5P5h@W1^BnxP8!0$kfCEdE!0t#yrSGF7Y(UTnWDJCWI21t z+eX@t$71S8$hEJz<_YI^TTg2W@fR=L9~1|X)|2yr9`gL*Pxpvv3qH2Js$pGBZhUTf zgp2QUL;Z|Q$FG#{NBl1FC-@N4**cWJjkJ=u&(_oQhdkx;Q#2=K6nFj8dm=hY+CnF} zXfPG(1AlUR!~M3R>@>I=>DM{`Ax)pb)038%Ym;-+0@#LgCuuK;@1;yH>VHf4`;n4x zYwF#}9~p4JExGV}4#u{PDP#SHXQ|{bF8Tv2V`{GB=Y!7A#3vy?oOF(IQ~rs)Q-m9j zBCcb!z3Dy5>DWTPj^?|0(EaZ`{u|RSL?vY6)SpfpO8G%tJ6g}5_0vh~6u|uRhhLl( zs`-awh;2+<(k_#)qZ<``q(Svg6ibQqQXpAjk7n`KPEj6 zJsyN_iPyrRng!fz6W28)ujbzbE|a*9%zwzpNPHa5C$j_TkFWrFudyyR zCG9Ht15n4mr1>~?M5WABeX{V+X=5&{J{pNJZbAVbtES(EBQxBPe!x# zHAoK9bPPoOX@OI=Y--9K1)WCtEb9RTc{24HIjRDB)pzV8`uV& z$6Geu;~u4Z_p_>X^!}E;vVs ztf27sBO&q0WOgMj1s9IA85?bx-Na*2@p3hg@FLC$l)J@sbtsdbcwFLb$^U*_qkJ>s zuSgh5nR1k^&pB0}Z(?)qCG#or%@*f3oX!Oa80NGT((xx#0JUa1XxQTj7Q$8VeO())%a1QSCC+7jpe=G{MH40pCY+ z5B)vkkv6=Ni>q;gjyDFUJ85G%b$p=QSjtx+UWyweC(bWtI04jI%9i1mIGkO!;hU*z zJLNBW>{~^Z%%MP5dy^=(pwc~5@&|df$*aMcnaWT6kk7BNI8*F(hmb$q?YzLMl$l8Q z1ZPvqgxij)PX4-(Gg5KgKLrJADwX3imH&$R;YL2fNyy8=xrMlnFfLreg~y5OtM0R>AM*U;_)h|zB=Bdc-J>lRt|e_LXA~+9 zp!KZ?>)$sWCND9k4iTUH^_)4$|9<$$$Y3LhXh?MOzu3A@lUJHk9e=HF9lRmZpU87= z(vMR|Vk%q7Mc)sNR3a+Kh(#!$l(UyArCedo3xwmd;EHqo413Xe%5*00D5nnoRF!iZ z1M&Ouo0`#tivQ!n>|~_14M<0cL8N!5;=-gw#YMDYI$^IZ6PL8@oK6n>j>ndp}FjhlMpXX_!VWAai$?JpDkb0mg%nf-$jdZbEEIa z8Vbcy4{YJPwm69j+T^v>gF;2 zdCB~Z$RIL~;&UpRO~t2d<*iYFg+a&ZA9{a>_yMkcKxKXH4RYXe(%tV(;sD}n$$!Y{ z9@O3Bdzgf$`c$c-5{YT;BeX3SJtH1rvfTg1Chv}IL`oWTgfct0_5->32*;-U0>Zyz zLDHjh9;4h#@^oC}e9T#j{I@s>b@<~_adX?NuOvR_Y{5mJxY z&~Y3eaPa^x*pE6=*|NVA??Kt!HeGo;Ir9^5O+EURqO;_0;@S*^zaJZ@vj*`hoXNjG z|6@~d0jG`&7(q||#$RlY#^KN8mFE0N`b)fKD-9yAJ!cZzus+;i3uXMAfrPhXQX2Iy zzT=umoMk!Rkf-O5)0K-)*rD>+N)wTOmkZ{Ro{KXomG_~NUF63hPe)EF7|)rMa)-(L zM!B@q)snD|^`z^lXH_^EXJy@(V;|-8PnVtf_NF%o?=X2z8rvHib@AGYpJ6g8?M~`d zZdje`eO zZvX#|VuWgQabN6b8>Gz5wtQ)BJe-?0A-)02+G{V6UY+t^?KRb@qhln-Ka{}tqaB5} zP~giCX*o$d$i-eNJ5Rv`C3CgrOTzD1d(V3iou2@LVA6cfygWP{($z`h%WbA-x0*(oq=o9El*UF3#ditqfaVOFJ?Z zh#w~}4fS6nJciSsnaoB6TDr~Q6AO0W%*_q!+Y1v?S9&h`ne=L$i)?y2jL)??(&7cq zJ%kI|{F#LR=DHokCvjsPCph(ckHKn$et~x_7p)}WECpUtd2`#-R}?7Bxrz(&+X`!u zKasShs2{GBr)nS9GtNv2tb{%|Q!F=}2j7 zQ*<>~RiKu|oGXbpwO1Y?vjBMqDf>6+Q|&c(?A^PNmWOM;AEgNFAU@pY7oeUeHh&v= zy1#RRO7~OI0nV6Ie#+jgBn97+ca$?PdG}FA0`jYpH;}TUZP`gUi@eB`J5M+XwzoIZ zHD!noqkKu~NTqc4cqI?NTyc-Wb2*n%K*wKXhEuQvEe^!>HhnMQNu*^b{~eXQ!1u&A zaPH-tMjd-7n}>2b;!$P=X=Mn9Q1&$bGo$6KK>rF#6(u&AGwJ{9QL~%8tkiIwD|PtD zk4a6dNJ~n*JT=whd`i5ATY_1&ElfcxUfb)GmEWfKrhE$O2q&IYf3c(`nR{%(`zmRV zD-^0rC8aroNbAK-9^fg`BXjBqB~M2q&MJiCQE4a21rtwBygBDi;<<=V;hJB`pJuNK za2v#wXCt8)k*>6C6otPZf4Bu$vs~Dg2KvZ*M47o1sA?zpgBb*qAaZMD$%_!H3cq48+8t;%k(bjQ_{NB{zPs2?n5a~+f4u!rS=Lm!m@9{ms zI_ihsH6s5B*WIvrb+|!Q;yR*o=A_j79X+=02k(P|OpRkT^gmuJXdeV`X(#B6% z6Y85;%S;)kzrE-R4f>A)Yl)X9FUY3NFtxM(iaYp^#(wP+chlCNRBZvxgq^9LM_R@MCpQvb%&Fe?_$&H zbA2+>A5ktd;i@>3yhNO>ez>{n(&67q##IVt!5W;GD3p?mme`)C&?VA`l2(tiuqq`j z2Km7>?htVu?YL<(PA_S*DEESJOzJ8^{%p#6NsC2VPtIUY9bGj4VHCQ}4gRFyL<(*- zdH?%wbn*(?*e&uCQ~oMx(W&G=;yOASoadzL7(x0o^1Bl5#~IE!gzH-1SI({ErzHQf zewa~-NDNw6i&MuCGTzXbGn^}^FdBw)@%JN`v_CnMQGPPlwzW4cie9eOQI>Qc*F3@} zoK4A_i#l%E@~O#xua66jNJznj2QkpjcV%1A47_MBSjYvdXv`3TB!f@VwzSrkq(6NKQfmD*i-e zrE#mR)RuF9nJ^j`KIS}3WnC~E*R3ENLZMHDe<5upr;fbDzaJ+FkEXr~wn5Ep#u?HN zX#a=Wgja;Ga_Wdj;Z(K}v+RXRFG~0+4b-uZ@Fp9c!HxUdawn;yAMtm#5v6QBUvM0G zfj`veuSlVGoCnEF$3@2pS0mhu^8)c%_~UWVMs{-JhMd(o=W)$m%AVx>@d#isAF&;p zO_`=PKR?%eC4AHTD-CnWJZ`jO#;}p*XY9v`6|@vWv+tk2lHdNO(WZc|kKATkeQ1Xs3Kw3*#PlZ(7Z;+E z@5e(Mh+`X&2Pad>BD}$MmA@CndBk;0;rda8<5Mm+@jH~g$$6M~chc8+8_+`AGF?!J z#3jT}QRvzaH{VQJcP{$zi2Or*F!@=ywhC#P2ygYySUNLMuj3QMbSxuhvc`d5|T;t!ye=d{x7nL=% z4LM0>a$EQS`JK2R4rvLe~&TSi4v;=1@%6H)Okp6-4H*q@gi?)uk zRPB@{u@{N!D4=6E@uZw@iT_M5e&OaL$^V7;P%O{c+*Xj@HgX+l!?{LBLEK9ICCb;~ z`jVW#D=*TBMRRs9n&as)&Ko^LuZYmJ0f~3VO&hSfRO)WsdWLoA+A_RNub|f5x_4+3 z78KqssCDNK-CK2Q*)uH1?)6~-tK&z_9TJqQP~kjzA{zA#2>Ko?G-i0;fZfCUdS}E9 zI6h)`qOsn0s|iFz5AkJ)s9n$(KO!{57ey%*LVW4u)_lIe|0Rz3u~@X-CqsOzA_tai z9p0gL*ET_Idi8D@etbj@wRUTMU&4s91$?n~`wRGbcy+J0g?$N9#XmkGsAW*wZoR^T zT6XQ-S>+?9g;O?5Ltj?i?nOgi(TJ=KeTky}fASMY+-m5HlbAaM)$Q7*W#{mgL2deV z=tUJlVQo4_c)kTBj9AiwE~G9I5M_7vM!raqBDy#6m5k`w-1q-`@4A7ASKM=W+kl|I}` zm8yKI|ApKuBSmcM!Hq)$ delta 39793 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şiere recente< pentru a fi salvat " "a eșuat." -#: FlatCAMApp.py:2984 camlib.py:4454 +#: FlatCAMApp.py:2984 camlib.py:4457 msgid "[ERROR_NOTCL] An internal error has ocurred. See shell.\n" msgstr "" "[ERROR_NOTCL] A apărut o eroare internă. Verifică in TCL Shell pt mai multe " @@ -232,7 +232,7 @@ msgstr "" "FlatCAM are fişiere/obiecte care au fost modificate. \n" "Dorești să Salvezi proiectul?" -#: FlatCAMApp.py:3401 FlatCAMApp.py:5879 +#: FlatCAMApp.py:3401 FlatCAMApp.py:5885 msgid "Save changes" msgstr "Salvează modificarile." @@ -283,8 +283,8 @@ msgstr "[success] Un obiect Geometrie a fost convertit la tipul MultiGeo." msgid "[success] A Geometry object was converted to SingleGeo type." msgstr "[success] Un obiect Geometrie a fost convertit la tipul SingleGeo ." -#: FlatCAMApp.py:3736 FlatCAMApp.py:4572 FlatCAMApp.py:6154 FlatCAMApp.py:6165 -#: FlatCAMApp.py:6405 FlatCAMApp.py:6415 +#: FlatCAMApp.py:3736 FlatCAMApp.py:4572 FlatCAMApp.py:6160 FlatCAMApp.py:6171 +#: FlatCAMApp.py:6411 FlatCAMApp.py:6421 msgid "Ok" msgstr "Ok" @@ -295,7 +295,7 @@ msgstr "[success] Conversie unitati la %s" #: FlatCAMApp.py:3789 msgid "[WARNING_NOTCL] Units conversion cancelled." -msgstr "[WARNING_NOTCL] Conversia unitatilor este anulata." +msgstr "[WARNING_NOTCL] Conversia unitatilor este anulată." #: FlatCAMApp.py:4441 msgid "Open file" @@ -330,7 +330,7 @@ msgstr "" #: FlatCAMApp.py:4565 FlatCAMApp.py:4598 FlatCAMApp.py:4609 FlatCAMApp.py:4620 #: flatcamGUI/FlatCAMGUI.py:3001 msgid "[WARNING_NOTCL] Adding Tool cancelled ..." -msgstr "[WARNING_NOTCL] Adăugarea unei unelte anulata ..." +msgstr "[WARNING_NOTCL] Adăugarea unei unelte anulată ..." #: FlatCAMApp.py:4568 msgid "" @@ -376,8 +376,8 @@ msgstr "Coordonate gresite. Introduceți coordonatele in format X,Y." #: flatcamEditors/FlatCAMGrbEditor.py:1141 #: flatcamEditors/FlatCAMGrbEditor.py:1409 #: flatcamEditors/FlatCAMGrbEditor.py:1666 -#: flatcamEditors/FlatCAMGrbEditor.py:3950 -#: flatcamEditors/FlatCAMGrbEditor.py:3964 flatcamGUI/FlatCAMGUI.py:2414 +#: flatcamEditors/FlatCAMGrbEditor.py:3960 +#: flatcamEditors/FlatCAMGrbEditor.py:3974 flatcamGUI/FlatCAMGUI.py:2414 #: flatcamGUI/FlatCAMGUI.py:2426 msgid "[success] Done." msgstr "[success] Executat." @@ -407,7 +407,7 @@ msgstr "[success] Oglindire pe axa Y executată." #: FlatCAMApp.py:5045 FlatCAMApp.py:5085 #: flatcamEditors/FlatCAMGeoEditor.py:1355 -#: flatcamEditors/FlatCAMGrbEditor.py:5331 flatcamTools/ToolTransform.py:748 +#: flatcamEditors/FlatCAMGrbEditor.py:5343 flatcamTools/ToolTransform.py:748 #, python-format msgid "[ERROR_NOTCL] Due of %s, Flip action was not executed." msgstr "[ERROR_NOTCL] Datorita %s, oglindirea a eșuat." @@ -438,7 +438,7 @@ msgid "[success] Rotation done." msgstr "[success] Rotaţie executată." #: FlatCAMApp.py:5133 flatcamEditors/FlatCAMGeoEditor.py:1298 -#: flatcamEditors/FlatCAMGrbEditor.py:5262 flatcamTools/ToolTransform.py:677 +#: flatcamEditors/FlatCAMGrbEditor.py:5272 flatcamTools/ToolTransform.py:677 #, python-format msgid "[ERROR_NOTCL] Due of %s, rotation movement was not executed." msgstr "[ERROR_NOTCL] Datorita %s, Rotatia a eșuat." @@ -459,13 +459,13 @@ msgstr "[WARNING_NOTCL] Nici-un obiect selectat pentru Deformare pe axa Y." msgid "[success] Skew on Y axis done." msgstr "[success] Deformare pe axa Y executată." -#: FlatCAMApp.py:5265 +#: FlatCAMApp.py:5266 msgid "Grid On/Off" msgstr "Grid On/Off" -#: FlatCAMApp.py:5278 flatcamEditors/FlatCAMGeoEditor.py:937 +#: FlatCAMApp.py:5279 flatcamEditors/FlatCAMGeoEditor.py:937 #: flatcamEditors/FlatCAMGrbEditor.py:2381 -#: flatcamEditors/FlatCAMGrbEditor.py:4853 flatcamGUI/ObjectUI.py:991 +#: flatcamEditors/FlatCAMGrbEditor.py:4861 flatcamGUI/ObjectUI.py:991 #: flatcamTools/ToolDblSided.py:160 flatcamTools/ToolDblSided.py:208 #: flatcamTools/ToolNonCopperClear.py:134 flatcamTools/ToolPaint.py:131 #: flatcamTools/ToolSolderPaste.py:115 flatcamTools/ToolSolderPaste.py:479 @@ -473,7 +473,7 @@ msgstr "Grid On/Off" msgid "Add" msgstr "Adaugă" -#: FlatCAMApp.py:5279 FlatCAMObj.py:3270 +#: FlatCAMApp.py:5280 FlatCAMObj.py:3276 #: flatcamEditors/FlatCAMGrbEditor.py:2386 flatcamGUI/FlatCAMGUI.py:527 #: flatcamGUI/FlatCAMGUI.py:724 flatcamGUI/FlatCAMGUI.py:1616 #: flatcamGUI/FlatCAMGUI.py:1953 flatcamGUI/ObjectUI.py:1007 @@ -482,64 +482,68 @@ msgstr "Adaugă" msgid "Delete" msgstr "Șterge" -#: FlatCAMApp.py:5292 +#: FlatCAMApp.py:5293 msgid "New Grid ..." msgstr "Grid nou ..." -#: FlatCAMApp.py:5293 +#: FlatCAMApp.py:5294 msgid "Enter a Grid Value:" msgstr "Introduceti of valoare pt Grid:" -#: FlatCAMApp.py:5301 FlatCAMApp.py:5328 +#: FlatCAMApp.py:5302 FlatCAMApp.py:5329 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:5307 +#: FlatCAMApp.py:5308 msgid "[success] New Grid added ..." msgstr "[success] O noua valoare pt Grila a fost adăugată..." -#: FlatCAMApp.py:5310 +#: FlatCAMApp.py:5311 msgid "[WARNING_NOTCL] Grid already exists ..." -msgstr "[WARNING_NOTCL] Grila exista deja." +msgstr "[WARNING_NOTCL] Grila există deja." -#: FlatCAMApp.py:5313 +#: FlatCAMApp.py:5314 msgid "[WARNING_NOTCL] Adding New Grid cancelled ..." -msgstr "[WARNING_NOTCL] Adăugarea unei valori de Grila a fost anulata ..." +msgstr "[WARNING_NOTCL] Adăugarea unei valori de Grilă a fost anulată ..." -#: FlatCAMApp.py:5335 +#: FlatCAMApp.py:5336 msgid "[ERROR_NOTCL] Grid Value does not exist ..." -msgstr "[ERROR_NOTCL] Valoarea Grilei nu exista ..." +msgstr "[ERROR_NOTCL] Valoarea Grilei nu există ..." -#: FlatCAMApp.py:5338 +#: FlatCAMApp.py:5339 msgid "[success] Grid Value deleted ..." -msgstr "[success] Valoarea Grila a fost stearsa." +msgstr "[success] Valoarea Grila a fost stearsă." -#: FlatCAMApp.py:5341 +#: FlatCAMApp.py:5342 msgid "[WARNING_NOTCL] Delete Grid value cancelled ..." -msgstr "[WARNING_NOTCL] Ștergerea unei valori de Grila a fost anulata ..." +msgstr "[WARNING_NOTCL] Ștergerea unei valori de Grilă a fost anulată ..." -#: FlatCAMApp.py:5380 +#: FlatCAMApp.py:5381 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:5384 +#: FlatCAMApp.py:5385 msgid "Name copied on clipboard ..." msgstr "Numele a fost copiat pe Clipboard ..." -#: FlatCAMApp.py:5677 FlatCAMApp.py:5680 FlatCAMApp.py:5683 FlatCAMApp.py:5686 -#: FlatCAMApp.py:5701 FlatCAMApp.py:5704 FlatCAMApp.py:5707 FlatCAMApp.py:5710 -#: FlatCAMApp.py:5750 FlatCAMApp.py:5753 FlatCAMApp.py:5756 FlatCAMApp.py:5759 +#: FlatCAMApp.py:5427 flatcamEditors/FlatCAMGrbEditor.py:3901 +msgid "[success] Coordinates copied to clipboard." +msgstr "[success] Coordonatele au fost copiate in clipboard." + +#: FlatCAMApp.py:5683 FlatCAMApp.py:5686 FlatCAMApp.py:5689 FlatCAMApp.py:5692 +#: FlatCAMApp.py:5707 FlatCAMApp.py:5710 FlatCAMApp.py:5713 FlatCAMApp.py:5716 +#: FlatCAMApp.py:5756 FlatCAMApp.py:5759 FlatCAMApp.py:5762 FlatCAMApp.py:5765 #: ObjectCollection.py:719 ObjectCollection.py:722 ObjectCollection.py:725 #: ObjectCollection.py:728 #, python-brace-format msgid "[selected]{name} selected" msgstr "[selected]{name} selectat" -#: FlatCAMApp.py:5876 +#: FlatCAMApp.py:5882 msgid "" "There are files/objects opened in FlatCAM.\n" "Creating a New project will delete them.\n" @@ -549,111 +553,111 @@ msgstr "" "Crearea unui nou Proiect le va șterge..\n" "Doriti să Salvati proiectul curentt?" -#: FlatCAMApp.py:5897 +#: FlatCAMApp.py:5903 msgid "[success] New Project created..." msgstr "[success] Un nou Proiect a fost creat..." -#: FlatCAMApp.py:6013 FlatCAMApp.py:6016 flatcamGUI/FlatCAMGUI.py:608 +#: FlatCAMApp.py:6019 FlatCAMApp.py:6022 flatcamGUI/FlatCAMGUI.py:608 #: flatcamGUI/FlatCAMGUI.py:1832 msgid "Open Gerber" msgstr "Încarcă Gerber" -#: FlatCAMApp.py:6021 +#: FlatCAMApp.py:6027 msgid "[WARNING_NOTCL] Open Gerber cancelled." -msgstr "[WARNING_NOTCL] Incărcarea unui fişier Gerber este anulata." +msgstr "[WARNING_NOTCL] Incărcarea unui fişier Gerber este anulată." -#: FlatCAMApp.py:6042 FlatCAMApp.py:6045 flatcamGUI/FlatCAMGUI.py:609 +#: FlatCAMApp.py:6048 FlatCAMApp.py:6051 flatcamGUI/FlatCAMGUI.py:609 #: flatcamGUI/FlatCAMGUI.py:1833 msgid "Open Excellon" msgstr "Încarcă Excellon" -#: FlatCAMApp.py:6050 +#: FlatCAMApp.py:6056 msgid "[WARNING_NOTCL] Open Excellon cancelled." -msgstr "[WARNING_NOTCL] Incărcarea unui fişier Excellon este anulata." +msgstr "[WARNING_NOTCL] Incărcarea unui fişier Excellon este anulată." -#: FlatCAMApp.py:6072 FlatCAMApp.py:6075 +#: FlatCAMApp.py:6078 FlatCAMApp.py:6081 msgid "Open G-Code" msgstr "Încarcă G-Code" -#: FlatCAMApp.py:6080 +#: FlatCAMApp.py:6086 msgid "[WARNING_NOTCL] Open G-Code cancelled." -msgstr "[WARNING_NOTCL] Incărcarea unui fişier G-Code este anulata." +msgstr "[WARNING_NOTCL] Incărcarea unui fişier G-Code este anulată." -#: FlatCAMApp.py:6098 FlatCAMApp.py:6101 +#: FlatCAMApp.py:6104 FlatCAMApp.py:6107 msgid "Open Project" msgstr "Încarcă Project" -#: FlatCAMApp.py:6109 +#: FlatCAMApp.py:6115 msgid "[WARNING_NOTCL] Open Project cancelled." -msgstr "[WARNING_NOTCL] Incărcarea unui Proiect a fost anulata." +msgstr "[WARNING_NOTCL] Incărcarea unui Proiect a fost anulată." -#: FlatCAMApp.py:6128 FlatCAMApp.py:6131 +#: FlatCAMApp.py:6134 FlatCAMApp.py:6137 msgid "Open Configuration File" msgstr "Încarcă un fişier de Configurare" -#: FlatCAMApp.py:6135 +#: FlatCAMApp.py:6141 msgid "[WARNING_NOTCL] Open Config cancelled." msgstr "[WARNING_NOTCL] Incărcarea unui fişier de Configurare este anulată." -#: FlatCAMApp.py:6150 FlatCAMApp.py:6401 FlatCAMApp.py:8551 FlatCAMApp.py:8571 -#: FlatCAMApp.py:8592 FlatCAMApp.py:8614 +#: FlatCAMApp.py:6156 FlatCAMApp.py:6407 FlatCAMApp.py:8560 FlatCAMApp.py:8580 +#: FlatCAMApp.py:8601 FlatCAMApp.py:8623 msgid "[WARNING_NOTCL] No object selected." msgstr "[WARNING_NOTCL] Nici-un obiect selectat." -#: FlatCAMApp.py:6151 FlatCAMApp.py:6402 +#: FlatCAMApp.py:6157 FlatCAMApp.py:6408 msgid "Please Select a Geometry object to export" msgstr "Selectează un obiect Geometrie pentru export" -#: FlatCAMApp.py:6162 +#: FlatCAMApp.py:6168 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:6175 FlatCAMApp.py:6179 +#: FlatCAMApp.py:6181 FlatCAMApp.py:6185 msgid "Export SVG" msgstr "Exporta SVG" -#: FlatCAMApp.py:6184 +#: FlatCAMApp.py:6190 msgid "[WARNING_NOTCL] Export SVG cancelled." msgstr "[WARNING_NOTCL] Exportul SVG este anulat." -#: FlatCAMApp.py:6203 +#: FlatCAMApp.py:6209 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:6209 FlatCAMApp.py:6213 +#: FlatCAMApp.py:6215 FlatCAMApp.py:6219 msgid "Export PNG Image" msgstr "Exporta imagine PNG" -#: FlatCAMApp.py:6218 +#: FlatCAMApp.py:6224 msgid "Export PNG cancelled." msgstr "Exportul imagine PNG este anulat." -#: FlatCAMApp.py:6237 +#: FlatCAMApp.py:6243 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:6242 FlatCAMApp.py:6365 +#: FlatCAMApp.py:6248 FlatCAMApp.py:6371 msgid "" "[ERROR_NOTCL] Failed. Only Gerber objects can be saved as Gerber files..." msgstr "" "[ERROR_NOTCL] Eșuat. Doar obiectele tip Gerber pot fi salvate ca fişiere " "Gerber..." -#: FlatCAMApp.py:6254 +#: FlatCAMApp.py:6260 msgid "Save Gerber source file" msgstr "Salvează codul sursa Gerber ca fişier" -#: FlatCAMApp.py:6259 +#: FlatCAMApp.py:6265 msgid "[WARNING_NOTCL] Save Gerber source file cancelled." -msgstr "[WARNING_NOTCL] Salvarea codului sursa Gerber este anulata." +msgstr "[WARNING_NOTCL] Salvarea codului sursa Gerber este anulată." -#: FlatCAMApp.py:6278 +#: FlatCAMApp.py:6284 msgid "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." @@ -661,22 +665,22 @@ msgstr "" "[WARNING_NOTCL] Nici-un obiect selectat. Selectează un obiect Excellon " "pentru export." -#: FlatCAMApp.py:6283 FlatCAMApp.py:6324 +#: FlatCAMApp.py:6289 FlatCAMApp.py:6330 msgid "" "[ERROR_NOTCL] Failed. Only Excellon objects can be saved as Excellon files..." msgstr "" "[ERROR_NOTCL] Eșuat. Doar obiectele tip Excellon pot fi salvate ca fişiere " "Excellon ..." -#: FlatCAMApp.py:6291 FlatCAMApp.py:6295 +#: FlatCAMApp.py:6297 FlatCAMApp.py:6301 msgid "Save Excellon source file" msgstr "Salvează codul sursa Excellon ca fişier" -#: FlatCAMApp.py:6300 +#: FlatCAMApp.py:6306 msgid "[WARNING_NOTCL] Saving Excellon source file cancelled." -msgstr "[WARNING_NOTCL] Salvarea codului sursa Excellon este anulata." +msgstr "[WARNING_NOTCL] Salvarea codului sursa Excellon este anulată." -#: FlatCAMApp.py:6319 +#: FlatCAMApp.py:6325 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." @@ -684,94 +688,94 @@ msgstr "" "[WARNING_NOTCL] Nici-un obiect selectat. Selectează un obiect Excellon " "pentru export." -#: FlatCAMApp.py:6332 FlatCAMApp.py:6336 +#: FlatCAMApp.py:6338 FlatCAMApp.py:6342 msgid "Export Excellon" msgstr "Exporta Excellon" -#: FlatCAMApp.py:6341 +#: FlatCAMApp.py:6347 msgid "[WARNING_NOTCL] Export Excellon cancelled." msgstr "[WARNING_NOTCL] Exportul Excellon anulat." -#: FlatCAMApp.py:6360 +#: FlatCAMApp.py:6366 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:6373 FlatCAMApp.py:6377 +#: FlatCAMApp.py:6379 FlatCAMApp.py:6383 msgid "Export Gerber" msgstr "Exporta Gerber" -#: FlatCAMApp.py:6382 +#: FlatCAMApp.py:6388 msgid "[WARNING_NOTCL] Export Gerber cancelled." msgstr "[WARNING_NOTCL] Exportul Gerber este anulat." -#: FlatCAMApp.py:6412 +#: FlatCAMApp.py:6418 msgid "[ERROR_NOTCL] Only Geometry objects can be used." msgstr "[ERROR_NOTCL] Doar obiecte tip Geometrie pot fi folosite." -#: FlatCAMApp.py:6426 FlatCAMApp.py:6430 +#: FlatCAMApp.py:6432 FlatCAMApp.py:6436 msgid "Export DXF" msgstr "Exporta DXF" -#: FlatCAMApp.py:6436 +#: FlatCAMApp.py:6442 msgid "[WARNING_NOTCL] Export DXF cancelled." msgstr "[WARNING_NOTCL] Exportul DXF anulat." -#: FlatCAMApp.py:6456 FlatCAMApp.py:6459 +#: FlatCAMApp.py:6462 FlatCAMApp.py:6465 msgid "Import SVG" msgstr "Importa SVG" -#: FlatCAMApp.py:6468 +#: FlatCAMApp.py:6474 msgid "[WARNING_NOTCL] Open SVG cancelled." msgstr "[WARNING_NOTCL] Importul SVG anulat." -#: FlatCAMApp.py:6487 FlatCAMApp.py:6491 +#: FlatCAMApp.py:6493 FlatCAMApp.py:6497 msgid "Import DXF" msgstr "Importa DXF" -#: FlatCAMApp.py:6500 +#: FlatCAMApp.py:6506 msgid "[WARNING_NOTCL] Open DXF cancelled." -msgstr "[WARNING_NOTCL] Incărcarea fişier DXF anulata." +msgstr "[WARNING_NOTCL] Incărcarea fişier DXF anulată." -#: FlatCAMApp.py:6518 +#: FlatCAMApp.py:6524 #, python-format msgid "%s" msgstr "%s" -#: FlatCAMApp.py:6538 +#: FlatCAMApp.py:6544 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:6545 +#: FlatCAMApp.py:6551 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:6553 +#: FlatCAMApp.py:6559 msgid "Source Editor" msgstr "Editor Cod" -#: FlatCAMApp.py:6563 +#: FlatCAMApp.py:6569 #, python-format msgid "[ERROR]App.on_view_source() -->%s" msgstr "[ERROR]App.on_view_source() -->%s" -#: FlatCAMApp.py:6575 FlatCAMApp.py:7717 FlatCAMObj.py:5551 +#: FlatCAMApp.py:6581 FlatCAMApp.py:7723 FlatCAMObj.py:5560 #: flatcamTools/ToolSolderPaste.py:1278 msgid "Code Editor" msgstr "Editor Cod" -#: FlatCAMApp.py:6587 +#: FlatCAMApp.py:6593 msgid "Script Editor" msgstr "Editor Script." -#: FlatCAMApp.py:6590 +#: FlatCAMApp.py:6596 msgid "" "#\n" "# CREATE A NEW FLATCAM TCL SCRIPT\n" @@ -815,99 +819,99 @@ msgstr "" "#\n" "\n" -#: FlatCAMApp.py:6613 FlatCAMApp.py:6616 +#: FlatCAMApp.py:6619 FlatCAMApp.py:6622 msgid "Open TCL script" msgstr "Încarcă TCL script" -#: FlatCAMApp.py:6624 +#: FlatCAMApp.py:6630 msgid "[WARNING_NOTCL] Open TCL script cancelled." -msgstr "[WARNING_NOTCL] Incărcarea TCL script anulata." +msgstr "[WARNING_NOTCL] Incărcarea TCL script anulată." -#: FlatCAMApp.py:6636 +#: FlatCAMApp.py:6642 #, python-format msgid "[ERROR]App.on_fileopenscript() -->%s" msgstr "[ERROR]App.on_fileopenscript() -->%s" -#: FlatCAMApp.py:6662 FlatCAMApp.py:6665 +#: FlatCAMApp.py:6668 FlatCAMApp.py:6671 msgid "Run TCL script" msgstr "Ruleaza TCL script" -#: FlatCAMApp.py:6673 +#: FlatCAMApp.py:6679 msgid "[WARNING_NOTCL] Run TCL script cancelled." -msgstr "[WARNING_NOTCL] Rularea fisierului Script a fost anulata." +msgstr "[WARNING_NOTCL] Rularea fisierului Script a fost anulată." -#: FlatCAMApp.py:6723 FlatCAMApp.py:6727 +#: FlatCAMApp.py:6729 FlatCAMApp.py:6733 msgid "Save Project As ..." msgstr "Salvează Proiectul ca ..." -#: FlatCAMApp.py:6724 +#: FlatCAMApp.py:6730 #, python-brace-format msgid "{l_save}/Project_{date}" msgstr "{l_save}/Proiect_{date}" -#: FlatCAMApp.py:6732 +#: FlatCAMApp.py:6738 msgid "[WARNING_NOTCL] Save Project cancelled." -msgstr "[WARNING_NOTCL] Salvarea Proiect anulata." +msgstr "[WARNING_NOTCL] Salvarea Proiect anulată." -#: FlatCAMApp.py:6776 +#: FlatCAMApp.py:6782 msgid "Exporting SVG" msgstr "SVG in curs de export" -#: FlatCAMApp.py:6810 FlatCAMApp.py:6916 FlatCAMApp.py:7031 +#: FlatCAMApp.py:6816 FlatCAMApp.py:6922 FlatCAMApp.py:7037 #, python-format msgid "[success] SVG file exported to %s" msgstr "[success] Fişier SVG exportat in %s" -#: FlatCAMApp.py:6841 FlatCAMApp.py:6962 +#: FlatCAMApp.py:6847 FlatCAMApp.py:6968 #, 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:6919 FlatCAMApp.py:7034 +#: FlatCAMApp.py:6925 FlatCAMApp.py:7040 msgid "Generating Film ... Please wait." msgstr "Filmul se generează ... Aşteaptă!" -#: FlatCAMApp.py:7182 +#: FlatCAMApp.py:7188 #, python-format msgid "[success] Excellon file exported to %s" msgstr "[success] Fişierul Excellon exportat in %s" -#: FlatCAMApp.py:7189 +#: FlatCAMApp.py:7195 msgid "Exporting Excellon" msgstr "Excellon in curs de export" -#: FlatCAMApp.py:7194 FlatCAMApp.py:7201 +#: FlatCAMApp.py:7200 FlatCAMApp.py:7207 msgid "[ERROR_NOTCL] Could not export Excellon file." msgstr "[ERROR_NOTCL] Fişierul Excellon nu a putut fi exportat." -#: FlatCAMApp.py:7299 +#: FlatCAMApp.py:7305 #, python-format msgid "[success] Gerber file exported to %s" msgstr "[success] Fişier Gerber exportat in %s" -#: FlatCAMApp.py:7306 +#: FlatCAMApp.py:7312 msgid "Exporting Gerber" msgstr "Gerber in curs de export" -#: FlatCAMApp.py:7311 FlatCAMApp.py:7318 +#: FlatCAMApp.py:7317 FlatCAMApp.py:7324 msgid "[ERROR_NOTCL] Could not export Gerber file." msgstr "[ERROR_NOTCL] Fişierul Gerber nu a putut fi exportat." -#: FlatCAMApp.py:7358 +#: FlatCAMApp.py:7364 #, python-format msgid "[success] DXF file exported to %s" msgstr "[success] Fişierul DXF exportat in %s" -#: FlatCAMApp.py:7364 +#: FlatCAMApp.py:7370 msgid "Exporting DXF" msgstr "DXF in curs de export" -#: FlatCAMApp.py:7369 FlatCAMApp.py:7376 +#: FlatCAMApp.py:7375 FlatCAMApp.py:7382 msgid "[[WARNING_NOTCL]] Could not export DXF file." msgstr "[[WARNING_NOTCL]] Fişierul DXF nu a putut fi exportat." -#: FlatCAMApp.py:7396 FlatCAMApp.py:7438 FlatCAMApp.py:7482 +#: FlatCAMApp.py:7402 FlatCAMApp.py:7444 FlatCAMApp.py:7488 msgid "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" @@ -915,102 +919,102 @@ msgstr "" "[ERROR_NOTCL] Typul parametrului nu este compatibil. Doar Geometrie is " "Gerber sunt acceptate." -#: FlatCAMApp.py:7406 +#: FlatCAMApp.py:7412 msgid "Importing SVG" msgstr "SVG in curs de ia fi importat" -#: FlatCAMApp.py:7417 FlatCAMApp.py:7459 FlatCAMApp.py:7502 FlatCAMApp.py:7579 -#: FlatCAMApp.py:7640 FlatCAMApp.py:7703 flatcamTools/ToolPDF.py:212 +#: FlatCAMApp.py:7423 FlatCAMApp.py:7465 FlatCAMApp.py:7508 FlatCAMApp.py:7585 +#: FlatCAMApp.py:7646 FlatCAMApp.py:7709 flatcamTools/ToolPDF.py:212 #, python-format msgid "[success] Opened: %s" msgstr "[success] Incărcat: %s" -#: FlatCAMApp.py:7448 +#: FlatCAMApp.py:7454 msgid "Importing DXF" msgstr "DXF in curs de a fi importat" -#: FlatCAMApp.py:7490 +#: FlatCAMApp.py:7496 msgid "Importing Image" msgstr "Imaginea in curs de a fi importata" -#: FlatCAMApp.py:7531 FlatCAMApp.py:7533 +#: FlatCAMApp.py:7537 FlatCAMApp.py:7539 #, python-format msgid "[ERROR_NOTCL] Failed to open file: %s" msgstr "[ERROR_NOTCL] Eşec in incărcarea fişierului %s" -#: FlatCAMApp.py:7536 +#: FlatCAMApp.py:7542 #, python-brace-format msgid "[ERROR_NOTCL] Failed to parse file: {name}. {error}" msgstr "[ERROR_NOTCL] Eşec in parsarea fişierului: {name}. {error}" -#: FlatCAMApp.py:7543 FlatCAMObj.py:4230 +#: FlatCAMApp.py:7549 FlatCAMObj.py:4239 #: flatcamEditors/FlatCAMExcEditor.py:2077 msgid "[ERROR] An internal error has ocurred. See shell.\n" msgstr "" "[ERROR] A apărut o eroare interna. Verifică in TCL Shell pt mai multe " "detalii.\n" -#: FlatCAMApp.py:7552 +#: FlatCAMApp.py:7558 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:7560 +#: FlatCAMApp.py:7566 msgid "Opening Gerber" msgstr "Gerber in curs de incărcare" -#: FlatCAMApp.py:7570 +#: FlatCAMApp.py:7576 msgid "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." msgstr "" "[ERROR_NOTCL] Incărcarea Gerber a eșuat. Probabil nu este de tip Gerber." -#: FlatCAMApp.py:7603 flatcamTools/ToolPcbWizard.py:421 +#: FlatCAMApp.py:7609 flatcamTools/ToolPcbWizard.py:421 msgid "[ERROR_NOTCL] This is not Excellon file." msgstr "[ERROR_NOTCL] Acesta nu este un fişier Excellon." -#: FlatCAMApp.py:7606 +#: FlatCAMApp.py:7612 #, python-format msgid "[ERROR_NOTCL] Cannot open file: %s" msgstr "[ERROR_NOTCL] Fişierul %s nu se poate incărca." -#: FlatCAMApp.py:7611 flatcamTools/ToolPcbWizard.py:429 +#: FlatCAMApp.py:7617 flatcamTools/ToolPcbWizard.py:429 msgid "[ERROR_NOTCL] An internal error has occurred. See shell.\n" msgstr "" "[ERROR_NOTCL] A apărut o eroare interna. Verifică in TCL Shell pt mai multe " "detalii.\n" -#: FlatCAMApp.py:7624 flatcamTools/ToolPDF.py:262 +#: FlatCAMApp.py:7630 flatcamTools/ToolPDF.py:262 #: flatcamTools/ToolPcbWizard.py:442 #, python-format msgid "[ERROR_NOTCL] No geometry found in file: %s" msgstr "" "[ERROR_NOTCL] Nici-o informaţie de tip geometrie nu s-a gasit in fişierul: %s" -#: FlatCAMApp.py:7627 +#: FlatCAMApp.py:7633 msgid "Opening Excellon." msgstr "Excellon in curs de incărcare" -#: FlatCAMApp.py:7633 +#: FlatCAMApp.py:7639 msgid "[ERROR_NOTCL] Open Excellon file failed. Probable not an Excellon file." msgstr "" "[ERROR_NOTCL] Incărcarea Excellon a eșuat. Probabil nu este de tip Excellon." -#: FlatCAMApp.py:7670 +#: FlatCAMApp.py:7676 #, python-format msgid "[ERROR_NOTCL] Failed to open %s" msgstr "[ERROR_NOTCL] Incărcarea fişierului %s a eșuat." -#: FlatCAMApp.py:7680 +#: FlatCAMApp.py:7686 msgid "[ERROR_NOTCL] This is not GCODE" msgstr "[ERROR_NOTCL] Acest obiect nu este de tip GCode" -#: FlatCAMApp.py:7686 +#: FlatCAMApp.py:7692 msgid "Opening G-Code." msgstr "G-Code in curs de incărcare" -#: FlatCAMApp.py:7694 +#: FlatCAMApp.py:7700 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 " @@ -1021,26 +1025,26 @@ msgstr "" "Incercarea de a crea un obiect CNCJob din G-Code a eșuat in timpul " "procesarii." -#: FlatCAMApp.py:7734 +#: FlatCAMApp.py:7740 #, python-format msgid "[ERROR_NOTCL] Failed to open config file: %s" msgstr "[ERROR_NOTCL] Eşec in incărcarea fişierului de configurare: %s" -#: FlatCAMApp.py:7760 FlatCAMApp.py:7777 +#: FlatCAMApp.py:7766 FlatCAMApp.py:7783 #, python-format msgid "[ERROR_NOTCL] Failed to open project file: %s" msgstr "[ERROR_NOTCL] Eşec in incărcarea fişierului proiect: %s" -#: FlatCAMApp.py:7800 +#: FlatCAMApp.py:7806 #, python-format msgid "[success] Project loaded from: %s" msgstr "[success] Proeictul a fost incărcat din: %s" -#: FlatCAMApp.py:7905 +#: FlatCAMApp.py:7911 msgid "Available commands:\n" msgstr "Comenzi disponibile:\n" -#: FlatCAMApp.py:7907 +#: FlatCAMApp.py:7913 msgid "" "\n" "\n" @@ -1052,27 +1056,27 @@ msgstr "" "Introduceți help pentru utilizare.\n" "Exemplu: help open_gerber" -#: FlatCAMApp.py:8057 +#: FlatCAMApp.py:8063 msgid "Shows list of commands." msgstr "Arata o lista de comenzi." -#: FlatCAMApp.py:8114 +#: FlatCAMApp.py:8120 msgid "[ERROR_NOTCL] Failed to load recent item list." msgstr "[ERROR_NOTCL] Eşec in incărcarea listei cu obiecte recente." -#: FlatCAMApp.py:8121 +#: FlatCAMApp.py:8127 msgid "[ERROR_NOTCL] Failed to parse recent item list." msgstr "[ERROR_NOTCL] Eşec in parsarea listei cu obiecte recente." -#: FlatCAMApp.py:8165 +#: FlatCAMApp.py:8171 msgid "Clear Recent files" msgstr "Sterge fişierele recente" -#: FlatCAMApp.py:8182 flatcamGUI/FlatCAMGUI.py:968 +#: FlatCAMApp.py:8188 flatcamGUI/FlatCAMGUI.py:968 msgid "Shortcut Key List" msgstr "Lista cu taste Shortcut" -#: FlatCAMApp.py:8189 +#: FlatCAMApp.py:8195 msgid "" "\n" "

Selected Tab - Choose an Item from " @@ -1169,27 +1173,27 @@ msgstr "" "\n" " " -#: FlatCAMApp.py:8293 +#: FlatCAMApp.py:8302 msgid "[WARNING_NOTCL] Failed checking for latest version. Could not connect." msgstr "" "[WARNING_NOTCL] Verificarea pentru ultima versiune a eșuat. Nu a fost " "posibilă conectarea la server." -#: FlatCAMApp.py:8300 +#: FlatCAMApp.py:8309 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:8310 +#: FlatCAMApp.py:8319 msgid "[success] FlatCAM is up to date!" msgstr "[success] FlatCAM este la ultima versiune!" -#: FlatCAMApp.py:8315 +#: FlatCAMApp.py:8324 msgid "Newer Version Available" msgstr "O nouă versiune este disponibila" -#: FlatCAMApp.py:8316 +#: FlatCAMApp.py:8325 msgid "" "There is a newer version of FlatCAM available for download:\n" "\n" @@ -1197,97 +1201,97 @@ msgstr "" "O nouă versiune de FlatCAM este disponibilă pentru download::\n" "\n" -#: FlatCAMApp.py:8318 +#: FlatCAMApp.py:8327 msgid "info" msgstr "Informaţie" -#: FlatCAMApp.py:8337 +#: FlatCAMApp.py:8346 msgid "[success] All plots disabled." msgstr "[success] Toate afişările sunt dezactivate." -#: FlatCAMApp.py:8343 +#: FlatCAMApp.py:8352 msgid "[success] All non selected plots disabled." msgstr "[success] Toate afişările care nu sunt selectate sunt dezactivate." -#: FlatCAMApp.py:8349 +#: FlatCAMApp.py:8358 msgid "[success] All plots enabled." msgstr "[success] Toate afişările sunt activate." -#: FlatCAMApp.py:8355 +#: FlatCAMApp.py:8364 msgid "[success] Selected plots enabled..." msgstr "[success] Toate afişările sunt activate..." -#: FlatCAMApp.py:8363 +#: FlatCAMApp.py:8372 msgid "[success] Selected plots disabled..." msgstr "[success] Toate afişările sunt dezactivate..." -#: FlatCAMApp.py:8373 FlatCAMApp.py:8386 +#: FlatCAMApp.py:8382 FlatCAMApp.py:8395 msgid "Working ..." msgstr "Se lucrează..." -#: FlatCAMApp.py:8420 +#: FlatCAMApp.py:8429 msgid "Saving FlatCAM Project" msgstr "Proiectul FlatCAM este in curs de salvare" -#: FlatCAMApp.py:8441 FlatCAMApp.py:8472 +#: FlatCAMApp.py:8450 FlatCAMApp.py:8481 #, python-format msgid "[success] Project saved to: %s" msgstr "[success] Proiectul s-a salvat in: %s" -#: FlatCAMApp.py:8459 +#: FlatCAMApp.py:8468 #, python-format msgid "[ERROR_NOTCL] Failed to verify project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Verificarea proiectului salvat a eșuat: %s. Incearcă să il " "salvezi din nou." -#: FlatCAMApp.py:8466 +#: FlatCAMApp.py:8475 #, python-format msgid "[ERROR_NOTCL] Failed to parse saved project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Parsarea proiectului salvat a eșuat: %s. Incearcă să il " "salvezi din nou." -#: FlatCAMApp.py:8474 +#: FlatCAMApp.py:8483 #, python-format msgid "[ERROR_NOTCL] Failed to save project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Salvarea proiectului a eșuat: %s. Incearcă să il salvezi din " "nou." -#: FlatCAMObj.py:202 +#: FlatCAMObj.py:207 #, python-brace-format msgid "[success] Name changed from {old} to {new}" msgstr "[success] Numele schimbat din {old} in {new}" -#: FlatCAMObj.py:545 FlatCAMObj.py:2031 FlatCAMObj.py:3275 FlatCAMObj.py:5448 +#: FlatCAMObj.py:553 FlatCAMObj.py:2035 FlatCAMObj.py:3281 FlatCAMObj.py:5457 msgid "Basic" msgstr "Baza" -#: FlatCAMObj.py:557 FlatCAMObj.py:2047 FlatCAMObj.py:3297 FlatCAMObj.py:5454 +#: FlatCAMObj.py:565 FlatCAMObj.py:2051 FlatCAMObj.py:3303 FlatCAMObj.py:5463 msgid "Advanced" msgstr "Avansat" -#: FlatCAMObj.py:920 FlatCAMObj.py:975 +#: FlatCAMObj.py:928 FlatCAMObj.py:983 #, python-format msgid "[success] Isolation geometry created: %s" msgstr "[success] Geometria de izolare creată: %s" -#: FlatCAMObj.py:1154 +#: FlatCAMObj.py:1162 msgid "Plotting Apertures" msgstr "Aperturile sunt in curs de afișare" -#: FlatCAMObj.py:1870 flatcamEditors/FlatCAMExcEditor.py:1368 +#: FlatCAMObj.py:1878 flatcamEditors/FlatCAMExcEditor.py:1368 msgid "Total Drills" msgstr "Nr. Tot. Op. Găurire" -#: FlatCAMObj.py:1896 flatcamEditors/FlatCAMExcEditor.py:1400 +#: FlatCAMObj.py:1904 flatcamEditors/FlatCAMExcEditor.py:1400 msgid "Total Slots" msgstr "Nr. Tot. Sloturi" -#: FlatCAMObj.py:2103 FlatCAMObj.py:3348 FlatCAMObj.py:3646 FlatCAMObj.py:3833 -#: FlatCAMObj.py:3846 FlatCAMObj.py:3963 FlatCAMObj.py:4380 FlatCAMObj.py:4618 -#: FlatCAMObj.py:5031 flatcamEditors/FlatCAMExcEditor.py:1474 +#: FlatCAMObj.py:2107 FlatCAMObj.py:3355 FlatCAMObj.py:3655 FlatCAMObj.py:3842 +#: FlatCAMObj.py:3855 FlatCAMObj.py:3972 FlatCAMObj.py:4389 FlatCAMObj.py:4627 +#: FlatCAMObj.py:5040 flatcamEditors/FlatCAMExcEditor.py:1474 #: flatcamTools/ToolCalculators.py:307 flatcamTools/ToolCalculators.py:318 #: flatcamTools/ToolCalculators.py:330 flatcamTools/ToolCalculators.py:345 #: flatcamTools/ToolCalculators.py:358 flatcamTools/ToolCalculators.py:372 @@ -1306,25 +1310,25 @@ msgstr "Nr. Tot. Sloturi" msgid "[ERROR_NOTCL] Wrong value format entered, use a number." msgstr "[ERROR_NOTCL] O valoare gresita a fost introdusa. Foloseşte un număr." -#: FlatCAMObj.py:2327 FlatCAMObj.py:2418 FlatCAMObj.py:2540 +#: FlatCAMObj.py:2331 FlatCAMObj.py:2423 FlatCAMObj.py:2546 msgid "" "[ERROR_NOTCL] Please select one or more tools from the list and try again." msgstr "" "[ERROR_NOTCL] Selectează una sau mai multe unelte din lista și încearcă din " "nou." -#: FlatCAMObj.py:2334 +#: FlatCAMObj.py:2338 msgid "" "[ERROR_NOTCL] Milling tool for DRILLS is larger than hole size. Cancelled." msgstr "" "[ERROR_NOTCL] Anulat. Freza pt frezarea găurilor este mai mare decat " "diametrul găurii." -#: FlatCAMObj.py:2348 FlatCAMObj.py:2442 FlatCAMObj.py:2560 +#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 msgid "Tool_nr" msgstr "Nr. Unealtă" -#: FlatCAMObj.py:2348 FlatCAMObj.py:2442 FlatCAMObj.py:2560 +#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 #: flatcamEditors/FlatCAMExcEditor.py:819 #: flatcamEditors/FlatCAMExcEditor.py:2020 flatcamGUI/ObjectUI.py:556 #: flatcamTools/ToolNonCopperClear.py:83 flatcamTools/ToolPaint.py:80 @@ -1332,21 +1336,21 @@ msgstr "Nr. Unealtă" msgid "Diameter" msgstr "Diametru" -#: FlatCAMObj.py:2348 FlatCAMObj.py:2442 FlatCAMObj.py:2560 +#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 msgid "Drills_Nr" msgstr "Nr. gaura" -#: FlatCAMObj.py:2348 FlatCAMObj.py:2442 FlatCAMObj.py:2560 +#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 msgid "Slots_Nr" msgstr "Nr. slot" -#: FlatCAMObj.py:2428 +#: FlatCAMObj.py:2433 msgid "" "[ERROR_NOTCL] Milling tool for SLOTS is larger than hole size. Cancelled." msgstr "" "[ERROR_NOTCL] Anulat. Freza este mai mare decat diametrul slotului de frezat." -#: FlatCAMObj.py:2602 FlatCAMObj.py:4268 FlatCAMObj.py:4484 FlatCAMObj.py:4801 +#: FlatCAMObj.py:2608 FlatCAMObj.py:4277 FlatCAMObj.py:4493 FlatCAMObj.py:4810 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"z_pdepth\"] or self." "options[\"z_pdepth\"]" @@ -1354,7 +1358,7 @@ msgstr "" "[ERROR_NOTCL] Valoare gresita pt self.defaults[\"z_pdepth\"] sau self." "options[\"z_pdepth\"]" -#: FlatCAMObj.py:2614 FlatCAMObj.py:4280 FlatCAMObj.py:4496 FlatCAMObj.py:4813 +#: FlatCAMObj.py:2620 FlatCAMObj.py:4289 FlatCAMObj.py:4505 FlatCAMObj.py:4822 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"feedrate_probe\"] or " "self.options[\"feedrate_probe\"]" @@ -1362,12 +1366,12 @@ msgstr "" "[ERROR_NOTCL] Valoare gresita pt self.defaults[\"feedrate_probe\"] sau self." "options[\"feedrate_probe\"]" -#: FlatCAMObj.py:2646 FlatCAMObj.py:4689 FlatCAMObj.py:4694 FlatCAMObj.py:4844 +#: FlatCAMObj.py:2652 FlatCAMObj.py:4698 FlatCAMObj.py:4703 FlatCAMObj.py:4853 msgid "Generating CNC Code" msgstr "CNC Code in curs de generare" -#: FlatCAMObj.py:2672 FlatCAMObj.py:4990 camlib.py:5164 camlib.py:5623 -#: camlib.py:5886 +#: FlatCAMObj.py:2678 FlatCAMObj.py:4999 camlib.py:5167 camlib.py:5626 +#: camlib.py:5889 msgid "" "[ERROR]The Toolchange X,Y field in Edit -> Preferences has to be in the " "format (x, y) \n" @@ -1377,58 +1381,58 @@ msgstr "" "să fie in formatul (x, y) \n" "dar are o singură valoare in loc de doua. " -#: FlatCAMObj.py:2984 FlatCAMObj.py:3889 FlatCAMObj.py:3890 FlatCAMObj.py:3899 +#: FlatCAMObj.py:2990 FlatCAMObj.py:3898 FlatCAMObj.py:3899 FlatCAMObj.py:3908 msgid "Iso" msgstr "Izo." -#: FlatCAMObj.py:2984 FlatCAMObj.py:3233 FlatCAMObj.py:3513 +#: FlatCAMObj.py:2990 FlatCAMObj.py:3239 FlatCAMObj.py:3520 msgid "Rough" msgstr "Grosier" -#: FlatCAMObj.py:2984 +#: FlatCAMObj.py:2990 msgid "Finish" msgstr "Finisare" -#: FlatCAMObj.py:3268 flatcamGUI/FlatCAMGUI.py:526 flatcamGUI/FlatCAMGUI.py:722 +#: FlatCAMObj.py:3274 flatcamGUI/FlatCAMGUI.py:526 flatcamGUI/FlatCAMGUI.py:722 #: flatcamGUI/FlatCAMGUI.py:1615 flatcamGUI/FlatCAMGUI.py:1951 #: flatcamGUI/ObjectUI.py:999 msgid "Copy" msgstr "Copiază" -#: FlatCAMObj.py:3483 +#: FlatCAMObj.py:3490 msgid "[ERROR_NOTCL] Please enter the desired tool diameter in Float format." msgstr "[ERROR_NOTCL] Introdu diametrul dorit pt unealtă in format Real." -#: FlatCAMObj.py:3556 +#: FlatCAMObj.py:3565 msgid "[success] Tool added in Tool Table." msgstr "[success] Unealtă adăugată in Tabela de Unelte." -#: FlatCAMObj.py:3561 +#: FlatCAMObj.py:3570 msgid "[ERROR_NOTCL] Default Tool added. Wrong value format entered." msgstr "" "[ERROR_NOTCL] Unealta implicita adăugată dar valoarea are un format gresit." -#: FlatCAMObj.py:3591 FlatCAMObj.py:3601 +#: FlatCAMObj.py:3600 FlatCAMObj.py:3610 msgid "[WARNING_NOTCL] Failed. Select a tool to copy." msgstr "[WARNING_NOTCL] Eșuat. Selectează o unealtă pt copiere." -#: FlatCAMObj.py:3630 +#: FlatCAMObj.py:3639 msgid "[success] Tool was copied in Tool Table." msgstr "[success] Unealta a fost copiata in Tabela de Unelte." -#: FlatCAMObj.py:3663 +#: FlatCAMObj.py:3672 msgid "[success] Tool was edited in Tool Table." msgstr "[success] Unealta a fost editata in Tabela de Unelte." -#: FlatCAMObj.py:3694 FlatCAMObj.py:3704 +#: FlatCAMObj.py:3703 FlatCAMObj.py:3713 msgid "[WARNING_NOTCL] Failed. Select a tool to delete." msgstr "[WARNING_NOTCL] Eșuat. Selectează o unealtă pentru ștergere." -#: FlatCAMObj.py:3728 +#: FlatCAMObj.py:3737 msgid "[success] Tool was deleted in Tool Table." msgstr "[success] Unealta a fost stearsa din Tabela de Unelte." -#: FlatCAMObj.py:4149 +#: FlatCAMObj.py:4158 #, python-format msgid "" "[WARNING_NOTCL] This Geometry can't be processed because it is %s geometry." @@ -1436,23 +1440,23 @@ msgstr "" "[WARNING_NOTCL] Acest obiect Geometrie nu poate fi procesar decoarece este " "Geometrie %s." -#: FlatCAMObj.py:4166 +#: FlatCAMObj.py:4175 msgid "[ERROR_NOTCL] Wrong Tool Dia value format entered, use a number." msgstr "" "[ERROR_NOTCL] Diametrul uneltei este in format gresit, foloseşte un număr " "Real." -#: FlatCAMObj.py:4193 +#: FlatCAMObj.py:4202 msgid "[ERROR_NOTCL] Failed. No tool selected in the tool table ..." msgstr "" "[ERROR_NOTCL] Eșuat. Nici-o unealtă nu este selectată in Tabela de Unelte ..." -#: FlatCAMObj.py:4231 +#: FlatCAMObj.py:4240 #, python-format msgid "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" msgstr "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" -#: FlatCAMObj.py:4389 FlatCAMObj.py:4627 +#: FlatCAMObj.py:4398 FlatCAMObj.py:4636 msgid "" "[WARNING] Tool Offset is selected in Tool Table but no value is provided.\n" "Add a Tool Offset or change the Offset Type." @@ -1461,21 +1465,21 @@ msgstr "" "val. nu este oferita.\n" "Adaugă un ofset pt unealtă sau schimbă Tipul Ofset." -#: FlatCAMObj.py:4508 flatcamTools/ToolSolderPaste.py:1107 +#: FlatCAMObj.py:4517 flatcamTools/ToolSolderPaste.py:1107 #: flatcamTools/ToolSolderPaste.py:1162 msgid "[ERROR_NOTCL] Cancelled. Empty file, it has no geometry..." msgstr "[ERROR_NOTCL] Anulat. Fişier gol, nu are date geometrice." -#: FlatCAMObj.py:4877 FlatCAMObj.py:4887 camlib.py:3347 camlib.py:3356 +#: FlatCAMObj.py:4886 FlatCAMObj.py:4896 camlib.py:3348 camlib.py:3357 msgid "[ERROR_NOTCL] Scale factor has to be a number: integer or float." msgstr "" "[ERROR_NOTCL] Factorul de scalare trebuie să fie un număr: natural sau real." -#: FlatCAMObj.py:4925 +#: FlatCAMObj.py:4934 msgid "[success] Geometry Scale done." msgstr "[success] Scalare Geometrie executată." -#: FlatCAMObj.py:4942 camlib.py:3425 +#: FlatCAMObj.py:4951 camlib.py:3426 msgid "" "[ERROR_NOTCL] An (x,y) pair of values are needed. Probable you entered only " "one value in the Offset field." @@ -1483,29 +1487,29 @@ msgstr "" "[ERROR_NOTCL] O pereche de valori (x,y) este necesară. Probabil că ai " "introdus numai o singură valoare in câmpul Offset." -#: FlatCAMObj.py:4962 +#: FlatCAMObj.py:4971 msgid "[success] Geometry Offset done." msgstr "[success] Ofset Geometrie executat." -#: FlatCAMObj.py:5516 FlatCAMObj.py:5521 flatcamTools/ToolSolderPaste.py:1361 +#: FlatCAMObj.py:5525 FlatCAMObj.py:5530 flatcamTools/ToolSolderPaste.py:1361 msgid "Export Machine Code ..." msgstr "Exporta CNC Cod Masina ..." -#: FlatCAMObj.py:5527 flatcamTools/ToolSolderPaste.py:1364 +#: FlatCAMObj.py:5536 flatcamTools/ToolSolderPaste.py:1364 msgid "[WARNING_NOTCL] Export Machine Code cancelled ..." msgstr "[WARNING_NOTCL] Exportul codului masina CNC a fost anulat ..." -#: FlatCAMObj.py:5540 +#: FlatCAMObj.py:5549 #, python-format msgid "[success] Machine Code file saved to: %s" msgstr "[success] Fişierul cu cod CNC este salvat in: %s" -#: FlatCAMObj.py:5562 +#: FlatCAMObj.py:5571 #, python-format msgid "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" msgstr "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" -#: FlatCAMObj.py:5679 +#: FlatCAMObj.py:5688 #, python-format msgid "" "[WARNING_NOTCL] This CNCJob object can't be processed because it is a %s " @@ -1514,11 +1518,11 @@ msgstr "" "[WARNING_NOTCL] Acest obiect CNCJob nu poate fi procesar deoarece este un " "obiect CNCJob tip %s." -#: FlatCAMObj.py:5732 +#: FlatCAMObj.py:5741 msgid "[ERROR_NOTCL] G-code does not have a units code: either G20 or G21" msgstr "[ERROR_NOTCL] G-code nu contine codul pt unitati: G20 sau G21" -#: FlatCAMObj.py:5745 +#: FlatCAMObj.py:5754 msgid "" "[ERROR_NOTCL] Cancelled. The Toolchange Custom code is enabled but it's " "empty." @@ -1526,17 +1530,17 @@ msgstr "" "[ERROR_NOTCL] Anulat. Codul G-Code din Macro-ul Schimbare unealtă este " "activat dar nuc contine nimic." -#: FlatCAMObj.py:5752 +#: FlatCAMObj.py:5761 msgid "[success] Toolchange G-code was replaced by a custom code." msgstr "" "[success] G-Code-ul pt schimbare unealtă a fost inlocuit cu un cod " "pesonalizat." -#: FlatCAMObj.py:5767 flatcamTools/ToolSolderPaste.py:1390 +#: FlatCAMObj.py:5776 flatcamTools/ToolSolderPaste.py:1390 msgid "[WARNING_NOTCL] No such file or directory" msgstr "[WARNING_NOTCL] Nu exista un asemenea fişier sau director" -#: FlatCAMObj.py:5787 FlatCAMObj.py:5799 +#: FlatCAMObj.py:5796 FlatCAMObj.py:5808 msgid "" "[WARNING_NOTCL] The used postprocessor file has to have in it's name: " "'toolchange_custom'" @@ -1544,7 +1548,7 @@ msgstr "" "[WARNING_NOTCL] Postprocesorul folosit trebuie să aibă in numele sau: " "'toolchange_custom'" -#: FlatCAMObj.py:5805 +#: FlatCAMObj.py:5814 msgid "[ERROR] There is no postprocessor file." msgstr "[ERROR] Nu exista nici-un fişier postprocesor." @@ -1587,17 +1591,17 @@ msgstr "[success] Obiectul a fost deformat ..." msgid "[ERROR_NOTCL] Failed to skew. No object selected" msgstr "[ERROR_NOTCL] Deformare eșuata. Nici-un obiect nu este selectat ..." -#: camlib.py:2727 camlib.py:2812 +#: camlib.py:2728 camlib.py:2813 #, python-format msgid "[WARNING] Coordinates missing, line ignored: %s" msgstr "[WARNING] Coordonatele lipsesc, linia este ignorata: %s" -#: camlib.py:2728 camlib.py:2813 +#: camlib.py:2729 camlib.py:2814 msgid "[WARNING_NOTCL] GERBER file might be CORRUPT. Check the file !!!" msgstr "" "[WARNING_NOTCL] Fişierul Gerber poate fi corrupt. Verificati fişierul!!!" -#: camlib.py:2777 +#: camlib.py:2778 #, python-format msgid "" "[ERROR] Region does not have enough points. File will be processed but there " @@ -1606,7 +1610,7 @@ msgstr "" "[ERROR] Regiunea Gerber nu are suficiente puncte. Fişierul va fi procesat " "dar sunt erori de parsare. Numărul liniei: %s" -#: camlib.py:3169 +#: camlib.py:3170 #, python-format msgid "" "[ERROR]Gerber Parser ERROR.\n" @@ -1615,32 +1619,32 @@ msgstr "" "[ERROR] Eroare in parserul Gerber.\n" "%s:" -#: camlib.py:3393 +#: camlib.py:3394 msgid "[success] Gerber Scale done." msgstr "[success] Scalarea Gerber efectuata." -#: camlib.py:3458 +#: camlib.py:3459 msgid "[success] Gerber Offset done." msgstr "[success] Offsetare Gerber efectuata." -#: camlib.py:3512 +#: camlib.py:3513 msgid "[success] Gerber Mirror done." msgstr "[success] Oglindirea Gerber efectuata." -#: camlib.py:3558 +#: camlib.py:3559 msgid "[success] Gerber Skew done." msgstr "[success] Deformarea Gerber efectuata." -#: camlib.py:3596 +#: camlib.py:3597 msgid "[success] Gerber Rotate done." msgstr "[success] Rotatia Gerber efectuata." -#: camlib.py:3875 +#: camlib.py:3878 #, python-format msgid "[ERROR_NOTCL] This is GCODE mark: %s" msgstr "[ERROR_NOTCL] Acesta este un marcaj Gerber: %s" -#: camlib.py:3990 +#: camlib.py:3993 #, python-format msgid "" "[WARNING] No tool diameter info's. See shell.\n" @@ -1656,7 +1660,7 @@ msgstr "" "Userul trebuie să editeze obictul Excellon rezultat si sa ajusteze " "diametrele a.i sa reflecte diametrele reale." -#: camlib.py:4455 +#: camlib.py:4458 #, python-brace-format msgid "" "[ERROR] Excellon Parser error.\n" @@ -1666,7 +1670,7 @@ msgstr "" "Parsare eșuata. Linia {l_nr}: {line}\n" "\n" -#: camlib.py:4534 +#: camlib.py:4537 msgid "" "[WARNING] Excellon.create_geometry() -> a drill location was skipped due of " "not having a tool associated.\n" @@ -1676,12 +1680,12 @@ msgstr "" "deoarece nu are o unealtă asociata.\n" "Verifică codul G-Code rezultat." -#: camlib.py:5073 +#: camlib.py:5076 #, python-format msgid "[ERROR] There is no such parameter: %s" msgstr "[ERROR] Nu exista un asemenea parametru: %s" -#: camlib.py:5143 +#: camlib.py:5146 msgid "" "[WARNING] The Cut Z parameter has positive value. It is the depth value to " "drill into material.\n" @@ -1694,7 +1698,7 @@ msgstr "" "Se presupune că este o eroare de tastare astfel ca aplicaţia va converti " "intr-o valoare negativă. Verifică codul masina (G-Code etc) rezultat." -#: camlib.py:5150 camlib.py:5646 camlib.py:5909 +#: camlib.py:5153 camlib.py:5649 camlib.py:5912 #, python-format msgid "" "[WARNING] The Cut Z parameter is zero. There will be no cut, skipping %s file" @@ -1702,15 +1706,15 @@ msgstr "" "[WARNING] Parametrul >Z tăiere< este nul. Nu va fi nici-o tăiere prin urmare " "nu procesam fişierul %s" -#: camlib.py:5379 camlib.py:5476 camlib.py:5534 +#: camlib.py:5382 camlib.py:5479 camlib.py:5537 msgid "[ERROR_NOTCL] The loaded Excellon file has no drills ..." msgstr "[ERROR_NOTCL] Fişierul Excellon incărcat nu are găuri ..." -#: camlib.py:5481 +#: camlib.py:5484 msgid "[ERROR_NOTCL] Wrong optimization type selected." msgstr "[ERROR_NOTCL] Un tip de optimizare incorrect a fost selectat." -#: camlib.py:5634 camlib.py:5897 +#: camlib.py:5637 camlib.py:5900 msgid "" "[ERROR_NOTCL] Cut_Z parameter is None or zero. Most likely a bad " "combinations of other parameters." @@ -1718,7 +1722,7 @@ msgstr "" "[ERROR_NOTCL] Parametrul >Z tăiere< este None sau zero. Cel mai probabil o " "combinaţie nefericita de parametri." -#: camlib.py:5639 camlib.py:5902 +#: camlib.py:5642 camlib.py:5905 msgid "" "[WARNING] The Cut Z parameter has positive value. It is the depth value to " "cut into material.\n" @@ -1731,11 +1735,11 @@ msgstr "" "Se presupune că este o eroare de tastare astfel ca aplicaţia va converti " "intr-o valoare negativă. Verifică codul masina (G-Code etc) rezultat." -#: camlib.py:5651 camlib.py:5914 +#: camlib.py:5654 camlib.py:5917 msgid "[ERROR_NOTCL] Travel Z parameter is None or zero." msgstr "[ERROR_NOTCL] Parametrul >Z deplasare< este None sau zero." -#: camlib.py:5655 camlib.py:5918 +#: camlib.py:5658 camlib.py:5921 msgid "" "[WARNING] The Travel Z parameter has negative value. It is the height value " "to travel between cuts.\n" @@ -1749,7 +1753,7 @@ msgstr "" "Se presupune că este o eroare de tastare astfel ca aplicaţia va converti " "intr-o valoare pozitivă. Verifică codul masina (G-Code etc) rezultat." -#: camlib.py:5662 camlib.py:5925 +#: camlib.py:5665 camlib.py:5928 #, python-format msgid "" "[WARNING] The Z Travel parameter is zero. This is dangerous, skipping %s file" @@ -1757,12 +1761,12 @@ msgstr "" "[WARNING] Parametrul >Z deplasare< este zero. Aceasta este periculos, prin " "urmare fişierul %s nu se procesează." -#: camlib.py:5792 +#: camlib.py:5795 #, python-format msgid "[ERROR]Expected a Geometry, got %s" msgstr "[ERROR] Se astepta o Geometrie, am primit in schimb %s" -#: camlib.py:5798 +#: camlib.py:5801 msgid "" "[ERROR_NOTCL] Trying to generate a CNC Job from a Geometry object without " "solid_geometry." @@ -1770,7 +1774,7 @@ msgstr "" "[ERROR_NOTCL] Se încearcă generarea unui CNC Job dintr-un obiect Geometrie " "fără atributul solid_geometry." -#: camlib.py:5837 +#: camlib.py:5840 msgid "" "[ERROR_NOTCL] The Tool Offset value is too negative to use for the " "current_geometry.\n" @@ -1780,7 +1784,7 @@ msgstr "" "fi folosita. \n" "Mareste valoarea absoluta și încearcă din nou." -#: camlib.py:6049 +#: camlib.py:6052 msgid "[ERROR_NOTCL] There is no tool data in the SolderPaste geometry." msgstr "" "[ERROR_NOTCL] Nu exista date cu privier la unealtă in geometria SolderPaste." @@ -2039,7 +2043,7 @@ msgstr "Pas = Distanta între elementele ariei." #: flatcamEditors/FlatCAMGeoEditor.py:665 #: flatcamEditors/FlatCAMGrbEditor.py:2550 #: flatcamEditors/FlatCAMGrbEditor.py:2586 -#: flatcamEditors/FlatCAMGrbEditor.py:4580 flatcamGUI/FlatCAMGUI.py:5107 +#: flatcamEditors/FlatCAMGrbEditor.py:4588 flatcamGUI/FlatCAMGUI.py:5107 #: flatcamTools/ToolTransform.py:68 msgid "Angle:" msgstr "Unghi:" @@ -2123,7 +2127,7 @@ msgid "[success] Done. Drill(s) deleted." msgstr "[success] Executat. Operatiile de găurire șterse." #: flatcamEditors/FlatCAMExcEditor.py:2705 -#: flatcamEditors/FlatCAMGrbEditor.py:4340 +#: flatcamEditors/FlatCAMGrbEditor.py:4350 msgid "Click on the circular array Center position" msgstr "Click pe punctul de Centru al ariei circulare." @@ -2189,7 +2193,7 @@ msgstr "Unealta Bufer" #: flatcamEditors/FlatCAMGeoEditor.py:2700 #: flatcamEditors/FlatCAMGeoEditor.py:2726 #: flatcamEditors/FlatCAMGeoEditor.py:2752 -#: flatcamEditors/FlatCAMGrbEditor.py:4392 +#: flatcamEditors/FlatCAMGrbEditor.py:4402 msgid "" "[WARNING_NOTCL] Buffer distance value is missing or wrong format. Add it and " "retry." @@ -2328,7 +2332,7 @@ msgstr "Unealta Paint" #: flatcamEditors/FlatCAMGeoEditor.py:563 msgid "[WARNING_NOTCL] Paint cancelled. No shape selected." -msgstr "[WARNING_NOTCL] Operaţie Paint anulata. Nici-o forma selectată." +msgstr "[WARNING_NOTCL] Operaţie Paint anulată. Nici-o forma selectată." #: flatcamEditors/FlatCAMGeoEditor.py:574 flatcamTools/ToolCutOut.py:355 #: flatcamTools/ToolCutOut.py:518 flatcamTools/ToolCutOut.py:657 @@ -2365,53 +2369,53 @@ msgstr "Unelte" #: flatcamEditors/FlatCAMGeoEditor.py:617 #: flatcamEditors/FlatCAMGeoEditor.py:990 -#: flatcamEditors/FlatCAMGrbEditor.py:4531 -#: flatcamEditors/FlatCAMGrbEditor.py:4916 flatcamGUI/FlatCAMGUI.py:654 +#: flatcamEditors/FlatCAMGrbEditor.py:4539 +#: flatcamEditors/FlatCAMGrbEditor.py:4924 flatcamGUI/FlatCAMGUI.py:654 #: flatcamGUI/FlatCAMGUI.py:1879 flatcamTools/ToolTransform.py:398 msgid "Transform Tool" msgstr "Unealta Transformare" #: flatcamEditors/FlatCAMGeoEditor.py:618 #: flatcamEditors/FlatCAMGeoEditor.py:679 -#: flatcamEditors/FlatCAMGrbEditor.py:4532 -#: flatcamEditors/FlatCAMGrbEditor.py:4594 flatcamTools/ToolTransform.py:24 +#: flatcamEditors/FlatCAMGrbEditor.py:4540 +#: flatcamEditors/FlatCAMGrbEditor.py:4602 flatcamTools/ToolTransform.py:24 #: flatcamTools/ToolTransform.py:82 msgid "Rotate" msgstr "Rotaţie" #: flatcamEditors/FlatCAMGeoEditor.py:619 -#: flatcamEditors/FlatCAMGrbEditor.py:4533 flatcamTools/ToolTransform.py:25 +#: flatcamEditors/FlatCAMGrbEditor.py:4541 flatcamTools/ToolTransform.py:25 msgid "Skew/Shear" msgstr "Deformare" #: flatcamEditors/FlatCAMGeoEditor.py:620 #: flatcamEditors/FlatCAMGrbEditor.py:2471 -#: flatcamEditors/FlatCAMGrbEditor.py:4534 flatcamGUI/FlatCAMGUI.py:718 +#: flatcamEditors/FlatCAMGrbEditor.py:4542 flatcamGUI/FlatCAMGUI.py:718 #: flatcamGUI/FlatCAMGUI.py:1947 flatcamGUI/ObjectUI.py:100 #: flatcamTools/ToolTransform.py:26 msgid "Scale" msgstr "Scalare" #: flatcamEditors/FlatCAMGeoEditor.py:621 -#: flatcamEditors/FlatCAMGrbEditor.py:4535 flatcamTools/ToolTransform.py:27 +#: flatcamEditors/FlatCAMGrbEditor.py:4543 flatcamTools/ToolTransform.py:27 msgid "Mirror (Flip)" msgstr "Oglindire" #: flatcamEditors/FlatCAMGeoEditor.py:622 -#: flatcamEditors/FlatCAMGrbEditor.py:4536 flatcamGUI/ObjectUI.py:127 +#: flatcamEditors/FlatCAMGrbEditor.py:4544 flatcamGUI/ObjectUI.py:127 #: flatcamGUI/ObjectUI.py:891 flatcamGUI/ObjectUI.py:1465 #: flatcamTools/ToolTransform.py:28 msgid "Offset" msgstr "Ofset" #: flatcamEditors/FlatCAMGeoEditor.py:633 -#: flatcamEditors/FlatCAMGrbEditor.py:4548 +#: flatcamEditors/FlatCAMGrbEditor.py:4556 #, python-format msgid "Editor %s" msgstr "Editor %s" #: flatcamEditors/FlatCAMGeoEditor.py:667 -#: flatcamEditors/FlatCAMGrbEditor.py:4582 flatcamTools/ToolTransform.py:70 +#: flatcamEditors/FlatCAMGrbEditor.py:4590 flatcamTools/ToolTransform.py:70 msgid "" "Angle for Rotation action, in degrees.\n" "Float number between -360 and 359.\n" @@ -2423,7 +2427,7 @@ msgstr "" "Numerele negative inseamna o mișcare in sens invers ace ceasornic." #: flatcamEditors/FlatCAMGeoEditor.py:681 -#: flatcamEditors/FlatCAMGrbEditor.py:4596 +#: flatcamEditors/FlatCAMGrbEditor.py:4604 msgid "" "Rotate the selected shape(s).\n" "The point of reference is the middle of\n" @@ -2435,14 +2439,14 @@ msgstr "" "toate formele selectate." #: flatcamEditors/FlatCAMGeoEditor.py:704 -#: flatcamEditors/FlatCAMGrbEditor.py:4619 flatcamTools/ToolTransform.py:107 +#: flatcamEditors/FlatCAMGrbEditor.py:4627 flatcamTools/ToolTransform.py:107 msgid "Angle X:" msgstr "Unghi X:" #: flatcamEditors/FlatCAMGeoEditor.py:706 #: flatcamEditors/FlatCAMGeoEditor.py:724 -#: flatcamEditors/FlatCAMGrbEditor.py:4621 -#: flatcamEditors/FlatCAMGrbEditor.py:4639 flatcamTools/ToolTransform.py:109 +#: flatcamEditors/FlatCAMGrbEditor.py:4629 +#: flatcamEditors/FlatCAMGrbEditor.py:4647 flatcamTools/ToolTransform.py:109 #: flatcamTools/ToolTransform.py:127 msgid "" "Angle for Skew action, in degrees.\n" @@ -2452,14 +2456,14 @@ msgstr "" "Ia valori Reale între -360 and 359 grade." #: flatcamEditors/FlatCAMGeoEditor.py:715 -#: flatcamEditors/FlatCAMGrbEditor.py:4630 flatcamTools/ToolTransform.py:118 +#: flatcamEditors/FlatCAMGrbEditor.py:4638 flatcamTools/ToolTransform.py:118 msgid "Skew X" msgstr "Deformare X" #: flatcamEditors/FlatCAMGeoEditor.py:717 #: flatcamEditors/FlatCAMGeoEditor.py:735 -#: flatcamEditors/FlatCAMGrbEditor.py:4632 -#: flatcamEditors/FlatCAMGrbEditor.py:4650 +#: flatcamEditors/FlatCAMGrbEditor.py:4640 +#: flatcamEditors/FlatCAMGrbEditor.py:4658 msgid "" "Skew/shear the selected shape(s).\n" "The point of reference is the middle of\n" @@ -2471,34 +2475,34 @@ msgstr "" "toate formele selectate." #: flatcamEditors/FlatCAMGeoEditor.py:722 -#: flatcamEditors/FlatCAMGrbEditor.py:4637 flatcamTools/ToolTransform.py:125 +#: flatcamEditors/FlatCAMGrbEditor.py:4645 flatcamTools/ToolTransform.py:125 msgid "Angle Y:" msgstr "Unghi Y:" #: flatcamEditors/FlatCAMGeoEditor.py:733 -#: flatcamEditors/FlatCAMGrbEditor.py:4648 flatcamTools/ToolTransform.py:136 +#: flatcamEditors/FlatCAMGrbEditor.py:4656 flatcamTools/ToolTransform.py:136 msgid "Skew Y" msgstr "Deformare Y" #: flatcamEditors/FlatCAMGeoEditor.py:761 -#: flatcamEditors/FlatCAMGrbEditor.py:4676 flatcamTools/ToolTransform.py:164 +#: flatcamEditors/FlatCAMGrbEditor.py:4684 flatcamTools/ToolTransform.py:164 msgid "Factor X:" msgstr "Factor X:" #: flatcamEditors/FlatCAMGeoEditor.py:763 -#: flatcamEditors/FlatCAMGrbEditor.py:4678 flatcamTools/ToolTransform.py:166 +#: flatcamEditors/FlatCAMGrbEditor.py:4686 flatcamTools/ToolTransform.py:166 msgid "Factor for Scale action over X axis." msgstr "Factor pentru scalarea pe axa X" #: flatcamEditors/FlatCAMGeoEditor.py:771 -#: flatcamEditors/FlatCAMGrbEditor.py:4686 flatcamTools/ToolTransform.py:174 +#: flatcamEditors/FlatCAMGrbEditor.py:4694 flatcamTools/ToolTransform.py:174 msgid "Scale X" msgstr "Scalează X" #: flatcamEditors/FlatCAMGeoEditor.py:773 #: flatcamEditors/FlatCAMGeoEditor.py:790 -#: flatcamEditors/FlatCAMGrbEditor.py:4688 -#: flatcamEditors/FlatCAMGrbEditor.py:4705 +#: flatcamEditors/FlatCAMGrbEditor.py:4696 +#: flatcamEditors/FlatCAMGrbEditor.py:4713 msgid "" "Scale the selected shape(s).\n" "The point of reference depends on \n" @@ -2509,28 +2513,28 @@ msgstr "" "starea checkbox-ului >Referința scalare<." #: flatcamEditors/FlatCAMGeoEditor.py:778 -#: flatcamEditors/FlatCAMGrbEditor.py:4693 flatcamTools/ToolTransform.py:181 +#: flatcamEditors/FlatCAMGrbEditor.py:4701 flatcamTools/ToolTransform.py:181 msgid "Factor Y:" msgstr "Factor Y:" #: flatcamEditors/FlatCAMGeoEditor.py:780 -#: flatcamEditors/FlatCAMGrbEditor.py:4695 flatcamTools/ToolTransform.py:183 +#: flatcamEditors/FlatCAMGrbEditor.py:4703 flatcamTools/ToolTransform.py:183 msgid "Factor for Scale action over Y axis." msgstr "Factor pentru scalarea pe axa Y." #: flatcamEditors/FlatCAMGeoEditor.py:788 -#: flatcamEditors/FlatCAMGrbEditor.py:4703 flatcamTools/ToolTransform.py:191 +#: flatcamEditors/FlatCAMGrbEditor.py:4711 flatcamTools/ToolTransform.py:191 msgid "Scale Y" msgstr "Scalează Y" #: flatcamEditors/FlatCAMGeoEditor.py:797 -#: flatcamEditors/FlatCAMGrbEditor.py:4712 flatcamGUI/FlatCAMGUI.py:6441 +#: flatcamEditors/FlatCAMGrbEditor.py:4720 flatcamGUI/FlatCAMGUI.py:6441 #: flatcamTools/ToolTransform.py:200 msgid "Link" msgstr "Legatura" #: flatcamEditors/FlatCAMGeoEditor.py:799 -#: flatcamEditors/FlatCAMGrbEditor.py:4714 +#: flatcamEditors/FlatCAMGrbEditor.py:4722 msgid "" "Scale the selected shape(s)\n" "using the Scale Factor X for both axis." @@ -2539,13 +2543,13 @@ msgstr "" "folsoind factorul: Factor X pentru ambele axe." #: flatcamEditors/FlatCAMGeoEditor.py:805 -#: flatcamEditors/FlatCAMGrbEditor.py:4720 flatcamGUI/FlatCAMGUI.py:6449 +#: flatcamEditors/FlatCAMGrbEditor.py:4728 flatcamGUI/FlatCAMGUI.py:6449 #: flatcamTools/ToolTransform.py:208 msgid "Scale Reference" msgstr "Referința scalare" #: flatcamEditors/FlatCAMGeoEditor.py:807 -#: flatcamEditors/FlatCAMGrbEditor.py:4722 +#: flatcamEditors/FlatCAMGrbEditor.py:4730 msgid "" "Scale the selected shape(s)\n" "using the origin reference when checked,\n" @@ -2559,24 +2563,24 @@ msgstr "" "bifat și este originea când este bifat." #: flatcamEditors/FlatCAMGeoEditor.py:835 -#: flatcamEditors/FlatCAMGrbEditor.py:4751 flatcamTools/ToolTransform.py:238 +#: flatcamEditors/FlatCAMGrbEditor.py:4759 flatcamTools/ToolTransform.py:238 msgid "Value X:" msgstr "Valoare X:" #: flatcamEditors/FlatCAMGeoEditor.py:837 -#: flatcamEditors/FlatCAMGrbEditor.py:4753 flatcamTools/ToolTransform.py:240 +#: flatcamEditors/FlatCAMGrbEditor.py:4761 flatcamTools/ToolTransform.py:240 msgid "Value for Offset action on X axis." msgstr "Valoare pentru deplasarea pe axa X." #: flatcamEditors/FlatCAMGeoEditor.py:845 -#: flatcamEditors/FlatCAMGrbEditor.py:4761 flatcamTools/ToolTransform.py:248 +#: flatcamEditors/FlatCAMGrbEditor.py:4769 flatcamTools/ToolTransform.py:248 msgid "Offset X" msgstr "Ofset pe X" #: flatcamEditors/FlatCAMGeoEditor.py:847 #: flatcamEditors/FlatCAMGeoEditor.py:865 -#: flatcamEditors/FlatCAMGrbEditor.py:4763 -#: flatcamEditors/FlatCAMGrbEditor.py:4781 +#: flatcamEditors/FlatCAMGrbEditor.py:4771 +#: flatcamEditors/FlatCAMGrbEditor.py:4789 msgid "" "Offset the selected shape(s).\n" "The point of reference is the middle of\n" @@ -2588,29 +2592,29 @@ msgstr "" "toate formele selectate.\n" #: flatcamEditors/FlatCAMGeoEditor.py:853 -#: flatcamEditors/FlatCAMGrbEditor.py:4769 flatcamTools/ToolTransform.py:255 +#: flatcamEditors/FlatCAMGrbEditor.py:4777 flatcamTools/ToolTransform.py:255 msgid "Value Y:" msgstr "Valoare Y:" #: flatcamEditors/FlatCAMGeoEditor.py:855 -#: flatcamEditors/FlatCAMGrbEditor.py:4771 flatcamTools/ToolTransform.py:257 +#: flatcamEditors/FlatCAMGrbEditor.py:4779 flatcamTools/ToolTransform.py:257 msgid "Value for Offset action on Y axis." msgstr "Valoare pentru deplasarea pe axa Y." #: flatcamEditors/FlatCAMGeoEditor.py:863 -#: flatcamEditors/FlatCAMGrbEditor.py:4779 flatcamTools/ToolTransform.py:265 +#: flatcamEditors/FlatCAMGrbEditor.py:4787 flatcamTools/ToolTransform.py:265 msgid "Offset Y" msgstr "Ofset pe Y" #: flatcamEditors/FlatCAMGeoEditor.py:894 -#: flatcamEditors/FlatCAMGrbEditor.py:4810 flatcamTools/ToolTransform.py:295 +#: flatcamEditors/FlatCAMGrbEditor.py:4818 flatcamTools/ToolTransform.py:295 msgid "Flip on X" msgstr "Oglindește pe X" #: flatcamEditors/FlatCAMGeoEditor.py:896 #: flatcamEditors/FlatCAMGeoEditor.py:904 -#: flatcamEditors/FlatCAMGrbEditor.py:4812 #: flatcamEditors/FlatCAMGrbEditor.py:4820 +#: flatcamEditors/FlatCAMGrbEditor.py:4828 msgid "" "Flip the selected shape(s) over the X axis.\n" "Does not create a new shape." @@ -2619,17 +2623,17 @@ msgstr "" "Nu crează noi forme." #: flatcamEditors/FlatCAMGeoEditor.py:902 -#: flatcamEditors/FlatCAMGrbEditor.py:4818 flatcamTools/ToolTransform.py:303 +#: flatcamEditors/FlatCAMGrbEditor.py:4826 flatcamTools/ToolTransform.py:303 msgid "Flip on Y" msgstr "Oglindește pe Y" #: flatcamEditors/FlatCAMGeoEditor.py:911 -#: flatcamEditors/FlatCAMGrbEditor.py:4827 flatcamTools/ToolTransform.py:312 +#: flatcamEditors/FlatCAMGrbEditor.py:4835 flatcamTools/ToolTransform.py:312 msgid "Ref Pt" msgstr "Pt ref" #: flatcamEditors/FlatCAMGeoEditor.py:913 -#: flatcamEditors/FlatCAMGrbEditor.py:4829 +#: flatcamEditors/FlatCAMGrbEditor.py:4837 msgid "" "Flip the selected shape(s)\n" "around the point in Point Entry Field.\n" @@ -2653,12 +2657,12 @@ msgstr "" "La final click pe >Oglindește pe X(Y)<." #: flatcamEditors/FlatCAMGeoEditor.py:925 -#: flatcamEditors/FlatCAMGrbEditor.py:4841 flatcamTools/ToolTransform.py:325 +#: flatcamEditors/FlatCAMGrbEditor.py:4849 flatcamTools/ToolTransform.py:325 msgid "Point:" msgstr "Punct:" #: flatcamEditors/FlatCAMGeoEditor.py:927 -#: flatcamEditors/FlatCAMGrbEditor.py:4843 +#: flatcamEditors/FlatCAMGrbEditor.py:4851 msgid "" "Coordinates in format (x, y) used as reference for mirroring.\n" "The 'x' in (x, y) will be used when using Flip on X and\n" @@ -2669,7 +2673,7 @@ msgstr "" "și valoarea 'y' in (x, y) va fi folosita când se face oglindire pe Y." #: flatcamEditors/FlatCAMGeoEditor.py:939 -#: flatcamEditors/FlatCAMGrbEditor.py:4855 flatcamTools/ToolTransform.py:339 +#: flatcamEditors/FlatCAMGrbEditor.py:4863 flatcamTools/ToolTransform.py:339 msgid "" "The point coordinates can be captured by\n" "left click on canvas together with pressing\n" @@ -2681,259 +2685,259 @@ msgstr "" "La final, apasa butonul >Adaugă< pt a le insera." #: flatcamEditors/FlatCAMGeoEditor.py:1054 -#: flatcamEditors/FlatCAMGrbEditor.py:4980 +#: flatcamEditors/FlatCAMGrbEditor.py:4988 msgid "[WARNING_NOTCL] Transformation cancelled. No shape selected." -msgstr "[WARNING_NOTCL] Transformare anulata. Nici-o forma nu este selectată." +msgstr "[WARNING_NOTCL] Transformare anulată. Nici-o formă nu este selectată." #: flatcamEditors/FlatCAMGeoEditor.py:1075 -#: flatcamEditors/FlatCAMGrbEditor.py:5000 flatcamTools/ToolTransform.py:468 +#: flatcamEditors/FlatCAMGrbEditor.py:5008 flatcamTools/ToolTransform.py:468 msgid "[ERROR_NOTCL] Wrong value format entered for Rotate, use a number." msgstr "" "[ERROR_NOTCL] Valoare incorecta intodusa pentru Rotaţie, foloseşte un număr " "Real." #: flatcamEditors/FlatCAMGeoEditor.py:1112 -#: flatcamEditors/FlatCAMGrbEditor.py:5043 flatcamTools/ToolTransform.py:502 +#: flatcamEditors/FlatCAMGrbEditor.py:5051 flatcamTools/ToolTransform.py:502 msgid "[ERROR_NOTCL] Wrong value format entered for Skew X, use a number." msgstr "" "[ERROR_NOTCL] Valoare incorecta intodusa pentru Deformare X, foloseşte un " "număr Real." #: flatcamEditors/FlatCAMGeoEditor.py:1133 -#: flatcamEditors/FlatCAMGrbEditor.py:5070 flatcamTools/ToolTransform.py:520 +#: flatcamEditors/FlatCAMGrbEditor.py:5078 flatcamTools/ToolTransform.py:520 msgid "[ERROR_NOTCL] Wrong value format entered for Skew Y, use a number." msgstr "" "[ERROR_NOTCL] Valoare incorecta intodusa pentru Deformare Y, foloseşte un " "număr Real." #: flatcamEditors/FlatCAMGeoEditor.py:1154 -#: flatcamEditors/FlatCAMGrbEditor.py:5097 flatcamTools/ToolTransform.py:538 +#: flatcamEditors/FlatCAMGrbEditor.py:5105 flatcamTools/ToolTransform.py:538 msgid "[ERROR_NOTCL] Wrong value format entered for Scale X, use a number." msgstr "" "[ERROR_NOTCL] Valoare incorecta intodusa pentru Scalare X, foloseşte un " "număr Real." #: flatcamEditors/FlatCAMGeoEditor.py:1191 -#: flatcamEditors/FlatCAMGrbEditor.py:5138 flatcamTools/ToolTransform.py:572 +#: flatcamEditors/FlatCAMGrbEditor.py:5146 flatcamTools/ToolTransform.py:572 msgid "[ERROR_NOTCL] Wrong value format entered for Scale Y, use a number." msgstr "" "[ERROR_NOTCL] Valoare incorecta intodusa pentru Scalare Y, foloseşte un " "număr Real." #: flatcamEditors/FlatCAMGeoEditor.py:1223 -#: flatcamEditors/FlatCAMGrbEditor.py:5176 flatcamTools/ToolTransform.py:601 +#: flatcamEditors/FlatCAMGrbEditor.py:5184 flatcamTools/ToolTransform.py:601 msgid "[ERROR_NOTCL] Wrong value format entered for Offset X, use a number." msgstr "" "[ERROR_NOTCL] Valoare incorecta intodusa pentru Ofset pe X, foloseşte un " "număr Real." #: flatcamEditors/FlatCAMGeoEditor.py:1244 -#: flatcamEditors/FlatCAMGrbEditor.py:5202 flatcamTools/ToolTransform.py:619 +#: flatcamEditors/FlatCAMGrbEditor.py:5210 flatcamTools/ToolTransform.py:619 msgid "[ERROR_NOTCL] Wrong value format entered for Offset Y, use a number." msgstr "" "[ERROR_NOTCL] Valoare incorecta intodusa pentru Ofset pe Y, foloseşte un " "număr Real." #: flatcamEditors/FlatCAMGeoEditor.py:1262 -#: flatcamEditors/FlatCAMGrbEditor.py:5225 +#: flatcamEditors/FlatCAMGrbEditor.py:5233 msgid "[WARNING_NOTCL] No shape selected. Please Select a shape to rotate!" msgstr "" "[WARNING_NOTCL] Nici-o forma nu este selectată. Selectează o forma pentru a " "putea face Rotaţie!" #: flatcamEditors/FlatCAMGeoEditor.py:1265 -#: flatcamEditors/FlatCAMGrbEditor.py:5228 flatcamTools/ToolTransform.py:640 +#: flatcamEditors/FlatCAMGrbEditor.py:5236 flatcamTools/ToolTransform.py:640 msgid "Appying Rotate" msgstr "Execuţie Rotaţie" #: flatcamEditors/FlatCAMGeoEditor.py:1293 -#: flatcamEditors/FlatCAMGrbEditor.py:5259 +#: flatcamEditors/FlatCAMGrbEditor.py:5269 msgid "[success] Done. Rotate completed." msgstr "[success] Executat. Rotaţie finalizata." #: flatcamEditors/FlatCAMGeoEditor.py:1309 -#: flatcamEditors/FlatCAMGrbEditor.py:5278 +#: flatcamEditors/FlatCAMGrbEditor.py:5288 msgid "[WARNING_NOTCL] No shape selected. Please Select a shape to flip!" msgstr "" "[WARNING_NOTCL] Nici-o forma nu este selectată. Selectează o forma pentru a " "putea face Oglindire!" #: flatcamEditors/FlatCAMGeoEditor.py:1312 -#: flatcamEditors/FlatCAMGrbEditor.py:5281 flatcamTools/ToolTransform.py:691 +#: flatcamEditors/FlatCAMGrbEditor.py:5291 flatcamTools/ToolTransform.py:691 msgid "Applying Flip" msgstr "Execuţie Oglindire" #: flatcamEditors/FlatCAMGeoEditor.py:1342 -#: flatcamEditors/FlatCAMGrbEditor.py:5318 flatcamTools/ToolTransform.py:733 +#: flatcamEditors/FlatCAMGrbEditor.py:5330 flatcamTools/ToolTransform.py:733 msgid "[success] Flip on the Y axis done ..." msgstr "Oglindirea pe axa X efectuata ..." #: flatcamEditors/FlatCAMGeoEditor.py:1345 -#: flatcamEditors/FlatCAMGrbEditor.py:5326 flatcamTools/ToolTransform.py:742 +#: flatcamEditors/FlatCAMGrbEditor.py:5338 flatcamTools/ToolTransform.py:742 msgid "[success] Flip on the X axis done ..." msgstr "Oglindirea pe axa Y efectuata ..." #: flatcamEditors/FlatCAMGeoEditor.py:1364 -#: flatcamEditors/FlatCAMGrbEditor.py:5346 +#: flatcamEditors/FlatCAMGrbEditor.py:5358 msgid "[WARNING_NOTCL] No shape selected. Please Select a shape to shear/skew!" msgstr "" "[WARNING_NOTCL] Nici-o forma nu este selectată. Selectează o forma pentru a " "putea face Deformare!" #: flatcamEditors/FlatCAMGeoEditor.py:1367 -#: flatcamEditors/FlatCAMGrbEditor.py:5349 flatcamTools/ToolTransform.py:760 +#: flatcamEditors/FlatCAMGrbEditor.py:5361 flatcamTools/ToolTransform.py:760 msgid "Applying Skew" msgstr "Execuţie Deformare" #: flatcamEditors/FlatCAMGeoEditor.py:1392 -#: flatcamEditors/FlatCAMGrbEditor.py:5382 flatcamTools/ToolTransform.py:791 +#: flatcamEditors/FlatCAMGrbEditor.py:5396 flatcamTools/ToolTransform.py:791 #, python-format msgid "[success] Skew on the %s axis done ..." msgstr "[success] Deformarea pe axa %s executată ..." #: flatcamEditors/FlatCAMGeoEditor.py:1396 -#: flatcamEditors/FlatCAMGrbEditor.py:5386 flatcamTools/ToolTransform.py:795 +#: flatcamEditors/FlatCAMGrbEditor.py:5400 flatcamTools/ToolTransform.py:795 #, python-format msgid "[ERROR_NOTCL] Due of %s, Skew action was not executed." -msgstr "[ERROR_NOTCL] Datorita erorii: %s, Deformarea a fost anulata." +msgstr "[ERROR_NOTCL] Datorită erorii: %s, Deformarea a fost anulată." #: flatcamEditors/FlatCAMGeoEditor.py:1407 -#: flatcamEditors/FlatCAMGrbEditor.py:5405 +#: flatcamEditors/FlatCAMGrbEditor.py:5419 msgid "[WARNING_NOTCL] No shape selected. Please Select a shape to scale!" msgstr "" "[WARNING_NOTCL] Nici-o forma nu este selectată. Selectează o forma pentru a " "putea face Scalare!" #: flatcamEditors/FlatCAMGeoEditor.py:1410 -#: flatcamEditors/FlatCAMGrbEditor.py:5408 flatcamTools/ToolTransform.py:809 +#: flatcamEditors/FlatCAMGrbEditor.py:5422 flatcamTools/ToolTransform.py:809 msgid "Applying Scale" msgstr "Execuţie Scalare" #: flatcamEditors/FlatCAMGeoEditor.py:1443 -#: flatcamEditors/FlatCAMGrbEditor.py:5444 flatcamTools/ToolTransform.py:848 +#: flatcamEditors/FlatCAMGrbEditor.py:5460 flatcamTools/ToolTransform.py:848 #, python-format msgid "[success] Scale on the %s axis done ..." msgstr "[success] Scalarea pe axa %s executată ..." #: flatcamEditors/FlatCAMGeoEditor.py:1446 -#: flatcamEditors/FlatCAMGrbEditor.py:5447 flatcamTools/ToolTransform.py:851 +#: flatcamEditors/FlatCAMGrbEditor.py:5463 flatcamTools/ToolTransform.py:851 #, python-format msgid "[ERROR_NOTCL] Due of %s, Scale action was not executed." -msgstr "[ERROR_NOTCL] Datorita erorii: %s, Scalarea a fost anulata ..." +msgstr "[ERROR_NOTCL] Datorită erorii: %s, Scalarea a fost anulată ..." #: flatcamEditors/FlatCAMGeoEditor.py:1455 -#: flatcamEditors/FlatCAMGrbEditor.py:5460 +#: flatcamEditors/FlatCAMGrbEditor.py:5476 msgid "[WARNING_NOTCL] No shape selected. Please Select a shape to offset!" msgstr "" "[WARNING_NOTCL] Nici-o forma nu este selectată. Selectează o forma pentru a " "putea face Ofset!" #: flatcamEditors/FlatCAMGeoEditor.py:1458 -#: flatcamEditors/FlatCAMGrbEditor.py:5463 flatcamTools/ToolTransform.py:861 +#: flatcamEditors/FlatCAMGrbEditor.py:5479 flatcamTools/ToolTransform.py:861 msgid "Applying Offset" msgstr "Execuţie Ofset" #: flatcamEditors/FlatCAMGeoEditor.py:1469 -#: flatcamEditors/FlatCAMGrbEditor.py:5484 flatcamTools/ToolTransform.py:880 +#: flatcamEditors/FlatCAMGrbEditor.py:5501 flatcamTools/ToolTransform.py:880 #, python-format msgid "[success] Offset on the %s axis done ..." msgstr "[success] Deplasarea pe axa %s executată ..." #: flatcamEditors/FlatCAMGeoEditor.py:1473 -#: flatcamEditors/FlatCAMGrbEditor.py:5488 flatcamTools/ToolTransform.py:884 +#: flatcamEditors/FlatCAMGrbEditor.py:5505 flatcamTools/ToolTransform.py:884 #, python-format msgid "[ERROR_NOTCL] Due of %s, Offset action was not executed." -msgstr "[ERROR_NOTCL] Datorita erorii: %s, Deplasarea a fost anulata." +msgstr "[ERROR_NOTCL] Datorită erorii: %s, Deplasarea a fost anulată." #: flatcamEditors/FlatCAMGeoEditor.py:1477 -#: flatcamEditors/FlatCAMGrbEditor.py:5492 +#: flatcamEditors/FlatCAMGrbEditor.py:5509 msgid "Rotate ..." msgstr "Rotaţie ..." #: flatcamEditors/FlatCAMGeoEditor.py:1478 #: flatcamEditors/FlatCAMGeoEditor.py:1535 #: flatcamEditors/FlatCAMGeoEditor.py:1552 -#: flatcamEditors/FlatCAMGrbEditor.py:5493 -#: flatcamEditors/FlatCAMGrbEditor.py:5550 +#: flatcamEditors/FlatCAMGrbEditor.py:5510 #: flatcamEditors/FlatCAMGrbEditor.py:5567 +#: flatcamEditors/FlatCAMGrbEditor.py:5584 msgid "Enter an Angle Value (degrees):" msgstr "Introdu o valoare in grade pt Unghi:" #: flatcamEditors/FlatCAMGeoEditor.py:1487 -#: flatcamEditors/FlatCAMGrbEditor.py:5502 +#: flatcamEditors/FlatCAMGrbEditor.py:5519 msgid "[success] Geometry shape rotate done..." msgstr "[success] Rotatia formei geometrice executată ..." #: flatcamEditors/FlatCAMGeoEditor.py:1492 -#: flatcamEditors/FlatCAMGrbEditor.py:5507 +#: flatcamEditors/FlatCAMGrbEditor.py:5524 msgid "[WARNING_NOTCL] Geometry shape rotate cancelled..." -msgstr "[WARNING_NOTCL] Rotatia formei geometrice anulata ..." +msgstr "[WARNING_NOTCL] Rotatia formei geometrice anulată ..." #: flatcamEditors/FlatCAMGeoEditor.py:1498 -#: flatcamEditors/FlatCAMGrbEditor.py:5513 +#: flatcamEditors/FlatCAMGrbEditor.py:5530 msgid "Offset on X axis ..." msgstr "Ofset pe axa X ..." #: flatcamEditors/FlatCAMGeoEditor.py:1499 #: flatcamEditors/FlatCAMGeoEditor.py:1518 -#: flatcamEditors/FlatCAMGrbEditor.py:5514 -#: flatcamEditors/FlatCAMGrbEditor.py:5533 +#: flatcamEditors/FlatCAMGrbEditor.py:5531 +#: flatcamEditors/FlatCAMGrbEditor.py:5550 #, python-format msgid "Enter a distance Value (%s):" msgstr "Introdu of valoare pt Distanta (%s):" #: flatcamEditors/FlatCAMGeoEditor.py:1508 -#: flatcamEditors/FlatCAMGrbEditor.py:5523 +#: flatcamEditors/FlatCAMGrbEditor.py:5540 msgid "[success] Geometry shape offset on X axis done..." msgstr "[success] Deplasarea formei geometrice pe axa X executată ..." #: flatcamEditors/FlatCAMGeoEditor.py:1512 -#: flatcamEditors/FlatCAMGrbEditor.py:5527 +#: flatcamEditors/FlatCAMGrbEditor.py:5544 msgid "[WARNING_NOTCL] Geometry shape offset X cancelled..." -msgstr "[WARNING_NOTCL] Deplasarea formei geometrice pe axa X anulata ..." +msgstr "[WARNING_NOTCL] Deplasarea formei geometrice pe axa X anulată ..." #: flatcamEditors/FlatCAMGeoEditor.py:1517 -#: flatcamEditors/FlatCAMGrbEditor.py:5532 +#: flatcamEditors/FlatCAMGrbEditor.py:5549 msgid "Offset on Y axis ..." msgstr "Ofset pe axa Y ..." #: flatcamEditors/FlatCAMGeoEditor.py:1527 -#: flatcamEditors/FlatCAMGrbEditor.py:5542 +#: flatcamEditors/FlatCAMGrbEditor.py:5559 msgid "[success] Geometry shape offset on Y axis done..." msgstr "[success] Deplasarea formei geometrice pe axa Y executată ..." #: flatcamEditors/FlatCAMGeoEditor.py:1531 -#: flatcamEditors/FlatCAMGrbEditor.py:5546 +#: flatcamEditors/FlatCAMGrbEditor.py:5563 msgid "[WARNING_NOTCL] Geometry shape offset Y cancelled..." -msgstr "[WARNING_NOTCL] Deplasarea formei geometrice pe axa Y anulata ..." +msgstr "[WARNING_NOTCL] Deplasarea formei geometrice pe axa Y anulată ..." #: flatcamEditors/FlatCAMGeoEditor.py:1534 -#: flatcamEditors/FlatCAMGrbEditor.py:5549 +#: flatcamEditors/FlatCAMGrbEditor.py:5566 msgid "Skew on X axis ..." msgstr "Deformare pe axa X ..." #: flatcamEditors/FlatCAMGeoEditor.py:1544 -#: flatcamEditors/FlatCAMGrbEditor.py:5559 +#: flatcamEditors/FlatCAMGrbEditor.py:5576 msgid "[success] Geometry shape skew on X axis done..." msgstr "[success] Deformarea formei geometrice pe axa X executată ..." #: flatcamEditors/FlatCAMGeoEditor.py:1548 -#: flatcamEditors/FlatCAMGrbEditor.py:5563 +#: flatcamEditors/FlatCAMGrbEditor.py:5580 msgid "[WARNING_NOTCL] Geometry shape skew X cancelled..." -msgstr "[WARNING_NOTCL] Deformarea formei geometrice pe axa X anulata ..." +msgstr "[WARNING_NOTCL] Deformarea formei geometrice pe axa X anulată ..." #: flatcamEditors/FlatCAMGeoEditor.py:1551 -#: flatcamEditors/FlatCAMGrbEditor.py:5566 +#: flatcamEditors/FlatCAMGrbEditor.py:5583 msgid "Skew on Y axis ..." msgstr "Deformare pe axa Y ..." #: flatcamEditors/FlatCAMGeoEditor.py:1561 -#: flatcamEditors/FlatCAMGrbEditor.py:5576 +#: flatcamEditors/FlatCAMGrbEditor.py:5593 msgid "[success] Geometry shape skew on Y axis done..." msgstr "[success] Deformarea formei geometrice pe axa Y executată ..." #: flatcamEditors/FlatCAMGeoEditor.py:1565 -#: flatcamEditors/FlatCAMGrbEditor.py:5580 +#: flatcamEditors/FlatCAMGrbEditor.py:5597 msgid "[WARNING_NOTCL] Geometry shape skew Y cancelled..." msgstr "[success] Deformarea formei geometrice pe axa Y executată ..." @@ -3092,7 +3096,7 @@ msgstr "" "nu este selectată." #: flatcamEditors/FlatCAMGeoEditor.py:2711 -#: flatcamEditors/FlatCAMGrbEditor.py:4442 +#: flatcamEditors/FlatCAMGrbEditor.py:4447 msgid "[success] Done. Buffer Tool completed." msgstr "[success] Executat. Unealta Bufer terminată." @@ -3146,7 +3150,7 @@ msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:3793 msgid "[WARNING_NOTCL] Copy cancelled. No shape selected." msgstr "" -"[WARNING_NOTCL] Copiere anulata. Nici-o forma geometrică nu este selectată." +"[WARNING_NOTCL] Copiere anulată. Nici-o forma geometrică nu este selectată." #: flatcamEditors/FlatCAMGeoEditor.py:3800 flatcamGUI/FlatCAMGUI.py:2727 #: flatcamGUI/FlatCAMGUI.py:2773 flatcamGUI/FlatCAMGUI.py:2791 @@ -3412,23 +3416,23 @@ msgid "Apertures Table for the Gerber Object." msgstr "Tabela de aperturi pt obiectul Gerber." #: flatcamEditors/FlatCAMGrbEditor.py:2291 -#: flatcamEditors/FlatCAMGrbEditor.py:3602 flatcamGUI/ObjectUI.py:228 +#: flatcamEditors/FlatCAMGrbEditor.py:3601 flatcamGUI/ObjectUI.py:228 msgid "Code" msgstr "Cod" #: flatcamEditors/FlatCAMGrbEditor.py:2291 -#: flatcamEditors/FlatCAMGrbEditor.py:3602 flatcamGUI/ObjectUI.py:228 +#: flatcamEditors/FlatCAMGrbEditor.py:3601 flatcamGUI/ObjectUI.py:228 #: flatcamGUI/ObjectUI.py:891 flatcamGUI/ObjectUI.py:1465 msgid "Type" msgstr "Tip" #: flatcamEditors/FlatCAMGrbEditor.py:2291 -#: flatcamEditors/FlatCAMGrbEditor.py:3602 flatcamGUI/ObjectUI.py:228 +#: flatcamEditors/FlatCAMGrbEditor.py:3601 flatcamGUI/ObjectUI.py:228 msgid "Size" msgstr "Dimens." #: flatcamEditors/FlatCAMGrbEditor.py:2291 -#: flatcamEditors/FlatCAMGrbEditor.py:3602 flatcamGUI/ObjectUI.py:228 +#: flatcamEditors/FlatCAMGrbEditor.py:3601 flatcamGUI/ObjectUI.py:228 msgid "Dim" msgstr "Dim" @@ -3682,24 +3686,34 @@ msgstr "[success] Editarea Gerber a fost terminată." msgid "[WARNING_NOTCL] Cancelled. No aperture is selected" msgstr "[WARNING_NOTCL] Anulat. Nici-o apertură nu este selectată." -#: flatcamEditors/FlatCAMGrbEditor.py:4270 +#: flatcamEditors/FlatCAMGrbEditor.py:4280 msgid "[ERROR_NOTCL] Failed. No aperture geometry is selected." msgstr "" "[WARNING_NOTCL] Anulat. Nici-o geometrie de apertură nu este selectată." -#: flatcamEditors/FlatCAMGrbEditor.py:4278 +#: flatcamEditors/FlatCAMGrbEditor.py:4288 msgid "[success] Done. Apertures geometry deleted." msgstr "[success] Executat. Geometriile aperturilor au fost șterse." -#: flatcamEditors/FlatCAMGrbEditor.py:4427 +#: flatcamEditors/FlatCAMGrbEditor.py:4431 msgid "" "[WARNING_NOTCL] No aperture to buffer. Select at least one aperture and try " "again." msgstr "" -"[WARNING_NOTCL] Nici-o apertura sel. pt a face bufer. Selectează cel puțin o " -"apertura și încearcă din nou." +"[WARNING_NOTCL] Nici-o apertură sel. pt a face bufer. Selectează cel puțin o " +"apertură și încearcă din nou." -#: flatcamEditors/FlatCAMGrbEditor.py:4456 +#: flatcamEditors/FlatCAMGrbEditor.py:4444 +#, python-format +#| msgid "[ERROR_NOTCL] Failed to open %s" +msgid "" +"[ERROR_NOTCL] Failed.\n" +"%s" +msgstr "" +"[ERROR_NOTCL] Actiune esuată.\n" +"%s" + +#: flatcamEditors/FlatCAMGrbEditor.py:4461 msgid "" "[WARNING_NOTCL] Scale factor value is missing or wrong format. Add it and " "retry." @@ -3707,7 +3721,7 @@ msgstr "" "[WARNING_NOTCL] Valoarea factorului de scalare lipseste sau este in format " "gresit. Adaugă din nou și reîncearcă." -#: flatcamEditors/FlatCAMGrbEditor.py:4486 +#: flatcamEditors/FlatCAMGrbEditor.py:4494 msgid "" "[WARNING_NOTCL] No aperture to scale. Select at least one aperture and try " "again." @@ -3715,7 +3729,7 @@ msgstr "" "[WARNING_NOTCL] Nici-o apertură sel. pt scalare. Selectează cel puțin o " "apertură și încearcă din nou." -#: flatcamEditors/FlatCAMGrbEditor.py:4502 +#: flatcamEditors/FlatCAMGrbEditor.py:4510 msgid "[success] Done. Scale Tool completed." msgstr "[success] Executat. Unealta Scalare a terminat." @@ -10884,7 +10898,7 @@ msgstr "MUTARE: Click pe punctul de Start ..." #: flatcamTools/ToolMove.py:88 msgid "[WARNING_NOTCL] MOVE action cancelled. No object(s) to move." msgstr "" -"[WARNING_NOTCL] Actiunea de Mutare a fost anulata. Nu sunt obiecte care să " +"[WARNING_NOTCL] Actiunea de Mutare a fost anulată. Nu sunt obiecte care să " "fie mutate ..." #: flatcamTools/ToolMove.py:110 @@ -10917,7 +10931,7 @@ msgstr "" #: flatcamTools/ToolMove.py:202 msgid "[WARNING_NOTCL] Move action cancelled." -msgstr "[WARNING_NOTCL] Actiunea de mutare a fost anulata." +msgstr "[WARNING_NOTCL] Actiunea de mutare a fost anulată." #: flatcamTools/ToolMove.py:214 msgid "[WARNING_NOTCL] Object(s) not selected" @@ -11039,7 +11053,7 @@ msgstr "" #: flatcamTools/ToolNonCopperClear.py:513 flatcamTools/ToolPaint.py:568 msgid "[WARNING_NOTCL] Adding tool cancelled. Tool already in Tool Table." msgstr "" -"[WARNING_NOTCL] Adăugarea unei unelte noi este anulata. Unealta exista deja " +"[WARNING_NOTCL] Adăugarea unei unelte noi este anulată. Unealta există deja " "in Tabela de Unelte." #: flatcamTools/ToolNonCopperClear.py:518 flatcamTools/ToolPaint.py:573 @@ -11133,7 +11147,7 @@ msgstr "Încarcă PDF" #: flatcamTools/ToolPDF.py:159 msgid "[WARNING_NOTCL] Open PDF cancelled." -msgstr "[WARNING_NOTCL] Incărcarea fişier PDF anulata." +msgstr "[WARNING_NOTCL] Incărcarea fişier PDF anulată." #: flatcamTools/ToolPDF.py:186 msgid "Parsing PDF file ..." @@ -11882,7 +11896,7 @@ msgstr "Șterge Obiectul" msgid "" "[WARNING_NOTCL] Adding Nozzle tool cancelled. Tool already in Tool Table." msgstr "" -"[WARNING_NOTCL] Adăugarea unei unelte Nozzle a fost anulata. Unealta exista " +"[WARNING_NOTCL] Adăugarea unei unelte Nozzle a fost anulată. Unealta exista " "deja in Tabela de Unelte." #: flatcamTools/ToolSolderPaste.py:794 diff --git a/locale_template/strings.pot b/locale_template/strings.pot index cfb7147a..975f0020 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-06-11 23:00+0300\n" +"POT-Creation-Date: 2019-06-20 19:31+0300\n" "PO-Revision-Date: 2019-03-25 15:08+0200\n" "Last-Translator: \n" "Language-Team: \n" @@ -63,17 +63,17 @@ msgstr "" msgid "Close Editor" msgstr "" -#: FlatCAMApp.py:2311 FlatCAMApp.py:3403 FlatCAMApp.py:5881 +#: FlatCAMApp.py:2311 FlatCAMApp.py:3403 FlatCAMApp.py:5887 #: FlatCAMTranslation.py:89 flatcamGUI/FlatCAMGUI.py:3730 msgid "Yes" msgstr "" -#: FlatCAMApp.py:2312 FlatCAMApp.py:3404 FlatCAMApp.py:5882 +#: FlatCAMApp.py:2312 FlatCAMApp.py:3404 FlatCAMApp.py:5888 #: FlatCAMTranslation.py:90 flatcamGUI/FlatCAMGUI.py:3731 msgid "No" msgstr "" -#: FlatCAMApp.py:2313 FlatCAMApp.py:3405 FlatCAMApp.py:3737 FlatCAMApp.py:5883 +#: FlatCAMApp.py:2313 FlatCAMApp.py:3405 FlatCAMApp.py:3737 FlatCAMApp.py:5889 msgid "Cancel" msgstr "" @@ -135,7 +135,7 @@ msgstr "" msgid "[ERROR_NOTCL] Failed to open recent files file for writing." msgstr "" -#: FlatCAMApp.py:2984 camlib.py:4454 +#: FlatCAMApp.py:2984 camlib.py:4457 msgid "[ERROR_NOTCL] An internal error has ocurred. See shell.\n" msgstr "" @@ -201,7 +201,7 @@ msgid "" "Do you want to Save the project?" msgstr "" -#: FlatCAMApp.py:3401 FlatCAMApp.py:5879 +#: FlatCAMApp.py:3401 FlatCAMApp.py:5885 msgid "Save changes" msgstr "" @@ -240,8 +240,8 @@ msgstr "" msgid "[success] A Geometry object was converted to SingleGeo type." msgstr "" -#: FlatCAMApp.py:3736 FlatCAMApp.py:4572 FlatCAMApp.py:6154 FlatCAMApp.py:6165 -#: FlatCAMApp.py:6405 FlatCAMApp.py:6415 +#: FlatCAMApp.py:3736 FlatCAMApp.py:4572 FlatCAMApp.py:6160 FlatCAMApp.py:6171 +#: FlatCAMApp.py:6411 FlatCAMApp.py:6421 msgid "Ok" msgstr "" @@ -329,8 +329,8 @@ msgstr "" #: flatcamEditors/FlatCAMGrbEditor.py:1141 #: flatcamEditors/FlatCAMGrbEditor.py:1409 #: flatcamEditors/FlatCAMGrbEditor.py:1666 -#: flatcamEditors/FlatCAMGrbEditor.py:3950 -#: flatcamEditors/FlatCAMGrbEditor.py:3964 flatcamGUI/FlatCAMGUI.py:2414 +#: flatcamEditors/FlatCAMGrbEditor.py:3960 +#: flatcamEditors/FlatCAMGrbEditor.py:3974 flatcamGUI/FlatCAMGUI.py:2414 #: flatcamGUI/FlatCAMGUI.py:2426 msgid "[success] Done." msgstr "" @@ -357,7 +357,7 @@ msgstr "" #: FlatCAMApp.py:5045 FlatCAMApp.py:5085 #: flatcamEditors/FlatCAMGeoEditor.py:1355 -#: flatcamEditors/FlatCAMGrbEditor.py:5331 flatcamTools/ToolTransform.py:748 +#: flatcamEditors/FlatCAMGrbEditor.py:5343 flatcamTools/ToolTransform.py:748 #, python-format msgid "[ERROR_NOTCL] Due of %s, Flip action was not executed." msgstr "" @@ -387,7 +387,7 @@ msgid "[success] Rotation done." msgstr "" #: FlatCAMApp.py:5133 flatcamEditors/FlatCAMGeoEditor.py:1298 -#: flatcamEditors/FlatCAMGrbEditor.py:5262 flatcamTools/ToolTransform.py:677 +#: flatcamEditors/FlatCAMGrbEditor.py:5272 flatcamTools/ToolTransform.py:677 #, python-format msgid "[ERROR_NOTCL] Due of %s, rotation movement was not executed." msgstr "" @@ -408,13 +408,13 @@ msgstr "" msgid "[success] Skew on Y axis done." msgstr "" -#: FlatCAMApp.py:5265 +#: FlatCAMApp.py:5266 msgid "Grid On/Off" msgstr "" -#: FlatCAMApp.py:5278 flatcamEditors/FlatCAMGeoEditor.py:937 +#: FlatCAMApp.py:5279 flatcamEditors/FlatCAMGeoEditor.py:937 #: flatcamEditors/FlatCAMGrbEditor.py:2381 -#: flatcamEditors/FlatCAMGrbEditor.py:4853 flatcamGUI/ObjectUI.py:991 +#: flatcamEditors/FlatCAMGrbEditor.py:4861 flatcamGUI/ObjectUI.py:991 #: flatcamTools/ToolDblSided.py:160 flatcamTools/ToolDblSided.py:208 #: flatcamTools/ToolNonCopperClear.py:134 flatcamTools/ToolPaint.py:131 #: flatcamTools/ToolSolderPaste.py:115 flatcamTools/ToolSolderPaste.py:479 @@ -422,7 +422,7 @@ msgstr "" msgid "Add" msgstr "" -#: FlatCAMApp.py:5279 FlatCAMObj.py:3270 +#: FlatCAMApp.py:5280 FlatCAMObj.py:3276 #: flatcamEditors/FlatCAMGrbEditor.py:2386 flatcamGUI/FlatCAMGUI.py:527 #: flatcamGUI/FlatCAMGUI.py:724 flatcamGUI/FlatCAMGUI.py:1616 #: flatcamGUI/FlatCAMGUI.py:1953 flatcamGUI/ObjectUI.py:1007 @@ -431,274 +431,278 @@ msgstr "" msgid "Delete" msgstr "" -#: FlatCAMApp.py:5292 +#: FlatCAMApp.py:5293 msgid "New Grid ..." msgstr "" -#: FlatCAMApp.py:5293 +#: FlatCAMApp.py:5294 msgid "Enter a Grid Value:" msgstr "" -#: FlatCAMApp.py:5301 FlatCAMApp.py:5328 +#: FlatCAMApp.py:5302 FlatCAMApp.py:5329 msgid "" "[WARNING_NOTCL] Please enter a grid value with non-zero value, in Float " "format." msgstr "" -#: FlatCAMApp.py:5307 +#: FlatCAMApp.py:5308 msgid "[success] New Grid added ..." msgstr "" -#: FlatCAMApp.py:5310 +#: FlatCAMApp.py:5311 msgid "[WARNING_NOTCL] Grid already exists ..." msgstr "" -#: FlatCAMApp.py:5313 +#: FlatCAMApp.py:5314 msgid "[WARNING_NOTCL] Adding New Grid cancelled ..." msgstr "" -#: FlatCAMApp.py:5335 +#: FlatCAMApp.py:5336 msgid "[ERROR_NOTCL] Grid Value does not exist ..." msgstr "" -#: FlatCAMApp.py:5338 +#: FlatCAMApp.py:5339 msgid "[success] Grid Value deleted ..." msgstr "" -#: FlatCAMApp.py:5341 +#: FlatCAMApp.py:5342 msgid "[WARNING_NOTCL] Delete Grid value cancelled ..." msgstr "" -#: FlatCAMApp.py:5380 +#: FlatCAMApp.py:5381 msgid "[WARNING_NOTCL] No object selected to copy it's name" msgstr "" -#: FlatCAMApp.py:5384 +#: FlatCAMApp.py:5385 msgid "Name copied on clipboard ..." msgstr "" -#: FlatCAMApp.py:5677 FlatCAMApp.py:5680 FlatCAMApp.py:5683 FlatCAMApp.py:5686 -#: FlatCAMApp.py:5701 FlatCAMApp.py:5704 FlatCAMApp.py:5707 FlatCAMApp.py:5710 -#: FlatCAMApp.py:5750 FlatCAMApp.py:5753 FlatCAMApp.py:5756 FlatCAMApp.py:5759 +#: FlatCAMApp.py:5427 flatcamEditors/FlatCAMGrbEditor.py:3901 +msgid "[success] Coordinates copied to clipboard." +msgstr "" + +#: FlatCAMApp.py:5683 FlatCAMApp.py:5686 FlatCAMApp.py:5689 FlatCAMApp.py:5692 +#: FlatCAMApp.py:5707 FlatCAMApp.py:5710 FlatCAMApp.py:5713 FlatCAMApp.py:5716 +#: FlatCAMApp.py:5756 FlatCAMApp.py:5759 FlatCAMApp.py:5762 FlatCAMApp.py:5765 #: ObjectCollection.py:719 ObjectCollection.py:722 ObjectCollection.py:725 #: ObjectCollection.py:728 #, python-brace-format msgid "[selected]{name} selected" msgstr "" -#: FlatCAMApp.py:5876 +#: FlatCAMApp.py:5882 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:5897 +#: FlatCAMApp.py:5903 msgid "[success] New Project created..." msgstr "" -#: FlatCAMApp.py:6013 FlatCAMApp.py:6016 flatcamGUI/FlatCAMGUI.py:608 +#: FlatCAMApp.py:6019 FlatCAMApp.py:6022 flatcamGUI/FlatCAMGUI.py:608 #: flatcamGUI/FlatCAMGUI.py:1832 msgid "Open Gerber" msgstr "" -#: FlatCAMApp.py:6021 +#: FlatCAMApp.py:6027 msgid "[WARNING_NOTCL] Open Gerber cancelled." msgstr "" -#: FlatCAMApp.py:6042 FlatCAMApp.py:6045 flatcamGUI/FlatCAMGUI.py:609 +#: FlatCAMApp.py:6048 FlatCAMApp.py:6051 flatcamGUI/FlatCAMGUI.py:609 #: flatcamGUI/FlatCAMGUI.py:1833 msgid "Open Excellon" msgstr "" -#: FlatCAMApp.py:6050 +#: FlatCAMApp.py:6056 msgid "[WARNING_NOTCL] Open Excellon cancelled." msgstr "" -#: FlatCAMApp.py:6072 FlatCAMApp.py:6075 +#: FlatCAMApp.py:6078 FlatCAMApp.py:6081 msgid "Open G-Code" msgstr "" -#: FlatCAMApp.py:6080 +#: FlatCAMApp.py:6086 msgid "[WARNING_NOTCL] Open G-Code cancelled." msgstr "" -#: FlatCAMApp.py:6098 FlatCAMApp.py:6101 +#: FlatCAMApp.py:6104 FlatCAMApp.py:6107 msgid "Open Project" msgstr "" -#: FlatCAMApp.py:6109 +#: FlatCAMApp.py:6115 msgid "[WARNING_NOTCL] Open Project cancelled." msgstr "" -#: FlatCAMApp.py:6128 FlatCAMApp.py:6131 +#: FlatCAMApp.py:6134 FlatCAMApp.py:6137 msgid "Open Configuration File" msgstr "" -#: FlatCAMApp.py:6135 +#: FlatCAMApp.py:6141 msgid "[WARNING_NOTCL] Open Config cancelled." msgstr "" -#: FlatCAMApp.py:6150 FlatCAMApp.py:6401 FlatCAMApp.py:8551 FlatCAMApp.py:8571 -#: FlatCAMApp.py:8592 FlatCAMApp.py:8614 +#: FlatCAMApp.py:6156 FlatCAMApp.py:6407 FlatCAMApp.py:8560 FlatCAMApp.py:8580 +#: FlatCAMApp.py:8601 FlatCAMApp.py:8623 msgid "[WARNING_NOTCL] No object selected." msgstr "" -#: FlatCAMApp.py:6151 FlatCAMApp.py:6402 +#: FlatCAMApp.py:6157 FlatCAMApp.py:6408 msgid "Please Select a Geometry object to export" msgstr "" -#: FlatCAMApp.py:6162 +#: FlatCAMApp.py:6168 msgid "[ERROR_NOTCL] Only Geometry, Gerber and CNCJob objects can be used." msgstr "" -#: FlatCAMApp.py:6175 FlatCAMApp.py:6179 +#: FlatCAMApp.py:6181 FlatCAMApp.py:6185 msgid "Export SVG" msgstr "" -#: FlatCAMApp.py:6184 +#: FlatCAMApp.py:6190 msgid "[WARNING_NOTCL] Export SVG cancelled." msgstr "" -#: FlatCAMApp.py:6203 +#: FlatCAMApp.py:6209 msgid "[[WARNING_NOTCL]] Data must be a 3D array with last dimension 3 or 4" msgstr "" -#: FlatCAMApp.py:6209 FlatCAMApp.py:6213 +#: FlatCAMApp.py:6215 FlatCAMApp.py:6219 msgid "Export PNG Image" msgstr "" -#: FlatCAMApp.py:6218 +#: FlatCAMApp.py:6224 msgid "Export PNG cancelled." msgstr "" -#: FlatCAMApp.py:6237 +#: FlatCAMApp.py:6243 msgid "" "[WARNING_NOTCL] No object selected. Please select an Gerber object to export." msgstr "" -#: FlatCAMApp.py:6242 FlatCAMApp.py:6365 +#: FlatCAMApp.py:6248 FlatCAMApp.py:6371 msgid "" "[ERROR_NOTCL] Failed. Only Gerber objects can be saved as Gerber files..." msgstr "" -#: FlatCAMApp.py:6254 +#: FlatCAMApp.py:6260 msgid "Save Gerber source file" msgstr "" -#: FlatCAMApp.py:6259 +#: FlatCAMApp.py:6265 msgid "[WARNING_NOTCL] Save Gerber source file cancelled." msgstr "" -#: FlatCAMApp.py:6278 +#: FlatCAMApp.py:6284 msgid "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." msgstr "" -#: FlatCAMApp.py:6283 FlatCAMApp.py:6324 +#: FlatCAMApp.py:6289 FlatCAMApp.py:6330 msgid "" "[ERROR_NOTCL] Failed. Only Excellon objects can be saved as Excellon files..." msgstr "" -#: FlatCAMApp.py:6291 FlatCAMApp.py:6295 +#: FlatCAMApp.py:6297 FlatCAMApp.py:6301 msgid "Save Excellon source file" msgstr "" -#: FlatCAMApp.py:6300 +#: FlatCAMApp.py:6306 msgid "[WARNING_NOTCL] Saving Excellon source file cancelled." msgstr "" -#: FlatCAMApp.py:6319 +#: FlatCAMApp.py:6325 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." msgstr "" -#: FlatCAMApp.py:6332 FlatCAMApp.py:6336 +#: FlatCAMApp.py:6338 FlatCAMApp.py:6342 msgid "Export Excellon" msgstr "" -#: FlatCAMApp.py:6341 +#: FlatCAMApp.py:6347 msgid "[WARNING_NOTCL] Export Excellon cancelled." msgstr "" -#: FlatCAMApp.py:6360 +#: FlatCAMApp.py:6366 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Gerber object to export." msgstr "" -#: FlatCAMApp.py:6373 FlatCAMApp.py:6377 +#: FlatCAMApp.py:6379 FlatCAMApp.py:6383 msgid "Export Gerber" msgstr "" -#: FlatCAMApp.py:6382 +#: FlatCAMApp.py:6388 msgid "[WARNING_NOTCL] Export Gerber cancelled." msgstr "" -#: FlatCAMApp.py:6412 +#: FlatCAMApp.py:6418 msgid "[ERROR_NOTCL] Only Geometry objects can be used." msgstr "" -#: FlatCAMApp.py:6426 FlatCAMApp.py:6430 +#: FlatCAMApp.py:6432 FlatCAMApp.py:6436 msgid "Export DXF" msgstr "" -#: FlatCAMApp.py:6436 +#: FlatCAMApp.py:6442 msgid "[WARNING_NOTCL] Export DXF cancelled." msgstr "" -#: FlatCAMApp.py:6456 FlatCAMApp.py:6459 +#: FlatCAMApp.py:6462 FlatCAMApp.py:6465 msgid "Import SVG" msgstr "" -#: FlatCAMApp.py:6468 +#: FlatCAMApp.py:6474 msgid "[WARNING_NOTCL] Open SVG cancelled." msgstr "" -#: FlatCAMApp.py:6487 FlatCAMApp.py:6491 +#: FlatCAMApp.py:6493 FlatCAMApp.py:6497 msgid "Import DXF" msgstr "" -#: FlatCAMApp.py:6500 +#: FlatCAMApp.py:6506 msgid "[WARNING_NOTCL] Open DXF cancelled." msgstr "" -#: FlatCAMApp.py:6518 +#: FlatCAMApp.py:6524 #, python-format msgid "%s" msgstr "" -#: FlatCAMApp.py:6538 +#: FlatCAMApp.py:6544 msgid "" "[WARNING_NOTCL] Select an Gerber or Excellon file to view it's source file." msgstr "" -#: FlatCAMApp.py:6545 +#: FlatCAMApp.py:6551 msgid "" "[WARNING_NOTCL] There is no selected object for which to see it's source " "file code." msgstr "" -#: FlatCAMApp.py:6553 +#: FlatCAMApp.py:6559 msgid "Source Editor" msgstr "" -#: FlatCAMApp.py:6563 +#: FlatCAMApp.py:6569 #, python-format msgid "[ERROR]App.on_view_source() -->%s" msgstr "" -#: FlatCAMApp.py:6575 FlatCAMApp.py:7717 FlatCAMObj.py:5551 +#: FlatCAMApp.py:6581 FlatCAMApp.py:7723 FlatCAMObj.py:5560 #: flatcamTools/ToolSolderPaste.py:1278 msgid "Code Editor" msgstr "" -#: FlatCAMApp.py:6587 +#: FlatCAMApp.py:6593 msgid "Script Editor" msgstr "" -#: FlatCAMApp.py:6590 +#: FlatCAMApp.py:6596 msgid "" "#\n" "# CREATE A NEW FLATCAM TCL SCRIPT\n" @@ -722,216 +726,216 @@ msgid "" "\n" msgstr "" -#: FlatCAMApp.py:6613 FlatCAMApp.py:6616 +#: FlatCAMApp.py:6619 FlatCAMApp.py:6622 msgid "Open TCL script" msgstr "" -#: FlatCAMApp.py:6624 +#: FlatCAMApp.py:6630 msgid "[WARNING_NOTCL] Open TCL script cancelled." msgstr "" -#: FlatCAMApp.py:6636 +#: FlatCAMApp.py:6642 #, python-format msgid "[ERROR]App.on_fileopenscript() -->%s" msgstr "" -#: FlatCAMApp.py:6662 FlatCAMApp.py:6665 +#: FlatCAMApp.py:6668 FlatCAMApp.py:6671 msgid "Run TCL script" msgstr "" -#: FlatCAMApp.py:6673 +#: FlatCAMApp.py:6679 msgid "[WARNING_NOTCL] Run TCL script cancelled." msgstr "" -#: FlatCAMApp.py:6723 FlatCAMApp.py:6727 +#: FlatCAMApp.py:6729 FlatCAMApp.py:6733 msgid "Save Project As ..." msgstr "" -#: FlatCAMApp.py:6724 +#: FlatCAMApp.py:6730 #, python-brace-format msgid "{l_save}/Project_{date}" msgstr "" -#: FlatCAMApp.py:6732 +#: FlatCAMApp.py:6738 msgid "[WARNING_NOTCL] Save Project cancelled." msgstr "" -#: FlatCAMApp.py:6776 +#: FlatCAMApp.py:6782 msgid "Exporting SVG" msgstr "" -#: FlatCAMApp.py:6810 FlatCAMApp.py:6916 FlatCAMApp.py:7031 +#: FlatCAMApp.py:6816 FlatCAMApp.py:6922 FlatCAMApp.py:7037 #, python-format msgid "[success] SVG file exported to %s" msgstr "" -#: FlatCAMApp.py:6841 FlatCAMApp.py:6962 +#: FlatCAMApp.py:6847 FlatCAMApp.py:6968 #, python-format msgid "[WARNING_NOTCL] No object Box. Using instead %s" msgstr "" -#: FlatCAMApp.py:6919 FlatCAMApp.py:7034 +#: FlatCAMApp.py:6925 FlatCAMApp.py:7040 msgid "Generating Film ... Please wait." msgstr "" -#: FlatCAMApp.py:7182 +#: FlatCAMApp.py:7188 #, python-format msgid "[success] Excellon file exported to %s" msgstr "" -#: FlatCAMApp.py:7189 +#: FlatCAMApp.py:7195 msgid "Exporting Excellon" msgstr "" -#: FlatCAMApp.py:7194 FlatCAMApp.py:7201 +#: FlatCAMApp.py:7200 FlatCAMApp.py:7207 msgid "[ERROR_NOTCL] Could not export Excellon file." msgstr "" -#: FlatCAMApp.py:7299 +#: FlatCAMApp.py:7305 #, python-format msgid "[success] Gerber file exported to %s" msgstr "" -#: FlatCAMApp.py:7306 +#: FlatCAMApp.py:7312 msgid "Exporting Gerber" msgstr "" -#: FlatCAMApp.py:7311 FlatCAMApp.py:7318 +#: FlatCAMApp.py:7317 FlatCAMApp.py:7324 msgid "[ERROR_NOTCL] Could not export Gerber file." msgstr "" -#: FlatCAMApp.py:7358 +#: FlatCAMApp.py:7364 #, python-format msgid "[success] DXF file exported to %s" msgstr "" -#: FlatCAMApp.py:7364 +#: FlatCAMApp.py:7370 msgid "Exporting DXF" msgstr "" -#: FlatCAMApp.py:7369 FlatCAMApp.py:7376 +#: FlatCAMApp.py:7375 FlatCAMApp.py:7382 msgid "[[WARNING_NOTCL]] Could not export DXF file." msgstr "" -#: FlatCAMApp.py:7396 FlatCAMApp.py:7438 FlatCAMApp.py:7482 +#: FlatCAMApp.py:7402 FlatCAMApp.py:7444 FlatCAMApp.py:7488 msgid "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" msgstr "" -#: FlatCAMApp.py:7406 +#: FlatCAMApp.py:7412 msgid "Importing SVG" msgstr "" -#: FlatCAMApp.py:7417 FlatCAMApp.py:7459 FlatCAMApp.py:7502 FlatCAMApp.py:7579 -#: FlatCAMApp.py:7640 FlatCAMApp.py:7703 flatcamTools/ToolPDF.py:212 +#: FlatCAMApp.py:7423 FlatCAMApp.py:7465 FlatCAMApp.py:7508 FlatCAMApp.py:7585 +#: FlatCAMApp.py:7646 FlatCAMApp.py:7709 flatcamTools/ToolPDF.py:212 #, python-format msgid "[success] Opened: %s" msgstr "" -#: FlatCAMApp.py:7448 +#: FlatCAMApp.py:7454 msgid "Importing DXF" msgstr "" -#: FlatCAMApp.py:7490 +#: FlatCAMApp.py:7496 msgid "Importing Image" msgstr "" -#: FlatCAMApp.py:7531 FlatCAMApp.py:7533 +#: FlatCAMApp.py:7537 FlatCAMApp.py:7539 #, python-format msgid "[ERROR_NOTCL] Failed to open file: %s" msgstr "" -#: FlatCAMApp.py:7536 +#: FlatCAMApp.py:7542 #, python-brace-format msgid "[ERROR_NOTCL] Failed to parse file: {name}. {error}" msgstr "" -#: FlatCAMApp.py:7543 FlatCAMObj.py:4230 +#: FlatCAMApp.py:7549 FlatCAMObj.py:4239 #: flatcamEditors/FlatCAMExcEditor.py:2077 msgid "[ERROR] An internal error has ocurred. See shell.\n" msgstr "" -#: FlatCAMApp.py:7552 +#: FlatCAMApp.py:7558 msgid "" "[ERROR_NOTCL] Object is not Gerber file or empty. Aborting object creation." msgstr "" -#: FlatCAMApp.py:7560 +#: FlatCAMApp.py:7566 msgid "Opening Gerber" msgstr "" -#: FlatCAMApp.py:7570 +#: FlatCAMApp.py:7576 msgid "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." msgstr "" -#: FlatCAMApp.py:7603 flatcamTools/ToolPcbWizard.py:421 +#: FlatCAMApp.py:7609 flatcamTools/ToolPcbWizard.py:421 msgid "[ERROR_NOTCL] This is not Excellon file." msgstr "" -#: FlatCAMApp.py:7606 +#: FlatCAMApp.py:7612 #, python-format msgid "[ERROR_NOTCL] Cannot open file: %s" msgstr "" -#: FlatCAMApp.py:7611 flatcamTools/ToolPcbWizard.py:429 +#: FlatCAMApp.py:7617 flatcamTools/ToolPcbWizard.py:429 msgid "[ERROR_NOTCL] An internal error has occurred. See shell.\n" msgstr "" -#: FlatCAMApp.py:7624 flatcamTools/ToolPDF.py:262 +#: FlatCAMApp.py:7630 flatcamTools/ToolPDF.py:262 #: flatcamTools/ToolPcbWizard.py:442 #, python-format msgid "[ERROR_NOTCL] No geometry found in file: %s" msgstr "" -#: FlatCAMApp.py:7627 +#: FlatCAMApp.py:7633 msgid "Opening Excellon." msgstr "" -#: FlatCAMApp.py:7633 +#: FlatCAMApp.py:7639 msgid "[ERROR_NOTCL] Open Excellon file failed. Probable not an Excellon file." msgstr "" -#: FlatCAMApp.py:7670 +#: FlatCAMApp.py:7676 #, python-format msgid "[ERROR_NOTCL] Failed to open %s" msgstr "" -#: FlatCAMApp.py:7680 +#: FlatCAMApp.py:7686 msgid "[ERROR_NOTCL] This is not GCODE" msgstr "" -#: FlatCAMApp.py:7686 +#: FlatCAMApp.py:7692 msgid "Opening G-Code." msgstr "" -#: FlatCAMApp.py:7694 +#: FlatCAMApp.py:7700 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:7734 +#: FlatCAMApp.py:7740 #, python-format msgid "[ERROR_NOTCL] Failed to open config file: %s" msgstr "" -#: FlatCAMApp.py:7760 FlatCAMApp.py:7777 +#: FlatCAMApp.py:7766 FlatCAMApp.py:7783 #, python-format msgid "[ERROR_NOTCL] Failed to open project file: %s" msgstr "" -#: FlatCAMApp.py:7800 +#: FlatCAMApp.py:7806 #, python-format msgid "[success] Project loaded from: %s" msgstr "" -#: FlatCAMApp.py:7905 +#: FlatCAMApp.py:7911 msgid "Available commands:\n" msgstr "" -#: FlatCAMApp.py:7907 +#: FlatCAMApp.py:7913 msgid "" "\n" "\n" @@ -939,27 +943,27 @@ msgid "" " Example: help open_gerber" msgstr "" -#: FlatCAMApp.py:8057 +#: FlatCAMApp.py:8063 msgid "Shows list of commands." msgstr "" -#: FlatCAMApp.py:8114 +#: FlatCAMApp.py:8120 msgid "[ERROR_NOTCL] Failed to load recent item list." msgstr "" -#: FlatCAMApp.py:8121 +#: FlatCAMApp.py:8127 msgid "[ERROR_NOTCL] Failed to parse recent item list." msgstr "" -#: FlatCAMApp.py:8165 +#: FlatCAMApp.py:8171 msgid "Clear Recent files" msgstr "" -#: FlatCAMApp.py:8182 flatcamGUI/FlatCAMGUI.py:968 +#: FlatCAMApp.py:8188 flatcamGUI/FlatCAMGUI.py:968 msgid "Shortcut Key List" msgstr "" -#: FlatCAMApp.py:8189 +#: FlatCAMApp.py:8195 msgid "" "\n" "

Selected Tab - Choose an Item from " @@ -1009,113 +1013,113 @@ msgid "" " " msgstr "" -#: FlatCAMApp.py:8293 +#: FlatCAMApp.py:8302 msgid "[WARNING_NOTCL] Failed checking for latest version. Could not connect." msgstr "" -#: FlatCAMApp.py:8300 +#: FlatCAMApp.py:8309 msgid "[ERROR_NOTCL] Could not parse information about latest version." msgstr "" -#: FlatCAMApp.py:8310 +#: FlatCAMApp.py:8319 msgid "[success] FlatCAM is up to date!" msgstr "" -#: FlatCAMApp.py:8315 +#: FlatCAMApp.py:8324 msgid "Newer Version Available" msgstr "" -#: FlatCAMApp.py:8316 +#: FlatCAMApp.py:8325 msgid "" "There is a newer version of FlatCAM available for download:\n" "\n" msgstr "" -#: FlatCAMApp.py:8318 +#: FlatCAMApp.py:8327 msgid "info" msgstr "" -#: FlatCAMApp.py:8337 +#: FlatCAMApp.py:8346 msgid "[success] All plots disabled." msgstr "" -#: FlatCAMApp.py:8343 +#: FlatCAMApp.py:8352 msgid "[success] All non selected plots disabled." msgstr "" -#: FlatCAMApp.py:8349 +#: FlatCAMApp.py:8358 msgid "[success] All plots enabled." msgstr "" -#: FlatCAMApp.py:8355 +#: FlatCAMApp.py:8364 msgid "[success] Selected plots enabled..." msgstr "" -#: FlatCAMApp.py:8363 +#: FlatCAMApp.py:8372 msgid "[success] Selected plots disabled..." msgstr "" -#: FlatCAMApp.py:8373 FlatCAMApp.py:8386 +#: FlatCAMApp.py:8382 FlatCAMApp.py:8395 msgid "Working ..." msgstr "" -#: FlatCAMApp.py:8420 +#: FlatCAMApp.py:8429 msgid "Saving FlatCAM Project" msgstr "" -#: FlatCAMApp.py:8441 FlatCAMApp.py:8472 +#: FlatCAMApp.py:8450 FlatCAMApp.py:8481 #, python-format msgid "[success] Project saved to: %s" msgstr "" -#: FlatCAMApp.py:8459 +#: FlatCAMApp.py:8468 #, python-format msgid "[ERROR_NOTCL] Failed to verify project file: %s. Retry to save it." msgstr "" -#: FlatCAMApp.py:8466 +#: FlatCAMApp.py:8475 #, python-format msgid "[ERROR_NOTCL] Failed to parse saved project file: %s. Retry to save it." msgstr "" -#: FlatCAMApp.py:8474 +#: FlatCAMApp.py:8483 #, python-format msgid "[ERROR_NOTCL] Failed to save project file: %s. Retry to save it." msgstr "" -#: FlatCAMObj.py:202 +#: FlatCAMObj.py:207 #, python-brace-format msgid "[success] Name changed from {old} to {new}" msgstr "" -#: FlatCAMObj.py:545 FlatCAMObj.py:2031 FlatCAMObj.py:3275 FlatCAMObj.py:5448 +#: FlatCAMObj.py:553 FlatCAMObj.py:2035 FlatCAMObj.py:3281 FlatCAMObj.py:5457 msgid "Basic" msgstr "" -#: FlatCAMObj.py:557 FlatCAMObj.py:2047 FlatCAMObj.py:3297 FlatCAMObj.py:5454 +#: FlatCAMObj.py:565 FlatCAMObj.py:2051 FlatCAMObj.py:3303 FlatCAMObj.py:5463 msgid "Advanced" msgstr "" -#: FlatCAMObj.py:920 FlatCAMObj.py:975 +#: FlatCAMObj.py:928 FlatCAMObj.py:983 #, python-format msgid "[success] Isolation geometry created: %s" msgstr "" -#: FlatCAMObj.py:1154 +#: FlatCAMObj.py:1162 msgid "Plotting Apertures" msgstr "" -#: FlatCAMObj.py:1870 flatcamEditors/FlatCAMExcEditor.py:1368 +#: FlatCAMObj.py:1878 flatcamEditors/FlatCAMExcEditor.py:1368 msgid "Total Drills" msgstr "" -#: FlatCAMObj.py:1896 flatcamEditors/FlatCAMExcEditor.py:1400 +#: FlatCAMObj.py:1904 flatcamEditors/FlatCAMExcEditor.py:1400 msgid "Total Slots" msgstr "" -#: FlatCAMObj.py:2103 FlatCAMObj.py:3348 FlatCAMObj.py:3646 FlatCAMObj.py:3833 -#: FlatCAMObj.py:3846 FlatCAMObj.py:3963 FlatCAMObj.py:4380 FlatCAMObj.py:4618 -#: FlatCAMObj.py:5031 flatcamEditors/FlatCAMExcEditor.py:1474 +#: FlatCAMObj.py:2107 FlatCAMObj.py:3355 FlatCAMObj.py:3655 FlatCAMObj.py:3842 +#: FlatCAMObj.py:3855 FlatCAMObj.py:3972 FlatCAMObj.py:4389 FlatCAMObj.py:4627 +#: FlatCAMObj.py:5040 flatcamEditors/FlatCAMExcEditor.py:1474 #: flatcamTools/ToolCalculators.py:307 flatcamTools/ToolCalculators.py:318 #: flatcamTools/ToolCalculators.py:330 flatcamTools/ToolCalculators.py:345 #: flatcamTools/ToolCalculators.py:358 flatcamTools/ToolCalculators.py:372 @@ -1134,21 +1138,21 @@ msgstr "" msgid "[ERROR_NOTCL] Wrong value format entered, use a number." msgstr "" -#: FlatCAMObj.py:2327 FlatCAMObj.py:2418 FlatCAMObj.py:2540 +#: FlatCAMObj.py:2331 FlatCAMObj.py:2423 FlatCAMObj.py:2546 msgid "" "[ERROR_NOTCL] Please select one or more tools from the list and try again." msgstr "" -#: FlatCAMObj.py:2334 +#: FlatCAMObj.py:2338 msgid "" "[ERROR_NOTCL] Milling tool for DRILLS is larger than hole size. Cancelled." msgstr "" -#: FlatCAMObj.py:2348 FlatCAMObj.py:2442 FlatCAMObj.py:2560 +#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 msgid "Tool_nr" msgstr "" -#: FlatCAMObj.py:2348 FlatCAMObj.py:2442 FlatCAMObj.py:2560 +#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 #: flatcamEditors/FlatCAMExcEditor.py:819 #: flatcamEditors/FlatCAMExcEditor.py:2020 flatcamGUI/ObjectUI.py:556 #: flatcamTools/ToolNonCopperClear.py:83 flatcamTools/ToolPaint.py:80 @@ -1156,191 +1160,191 @@ msgstr "" msgid "Diameter" msgstr "" -#: FlatCAMObj.py:2348 FlatCAMObj.py:2442 FlatCAMObj.py:2560 +#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 msgid "Drills_Nr" msgstr "" -#: FlatCAMObj.py:2348 FlatCAMObj.py:2442 FlatCAMObj.py:2560 +#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 msgid "Slots_Nr" msgstr "" -#: FlatCAMObj.py:2428 +#: FlatCAMObj.py:2433 msgid "" "[ERROR_NOTCL] Milling tool for SLOTS is larger than hole size. Cancelled." msgstr "" -#: FlatCAMObj.py:2602 FlatCAMObj.py:4268 FlatCAMObj.py:4484 FlatCAMObj.py:4801 +#: FlatCAMObj.py:2608 FlatCAMObj.py:4277 FlatCAMObj.py:4493 FlatCAMObj.py:4810 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"z_pdepth\"] or self." "options[\"z_pdepth\"]" msgstr "" -#: FlatCAMObj.py:2614 FlatCAMObj.py:4280 FlatCAMObj.py:4496 FlatCAMObj.py:4813 +#: FlatCAMObj.py:2620 FlatCAMObj.py:4289 FlatCAMObj.py:4505 FlatCAMObj.py:4822 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"feedrate_probe\"] or " "self.options[\"feedrate_probe\"]" msgstr "" -#: FlatCAMObj.py:2646 FlatCAMObj.py:4689 FlatCAMObj.py:4694 FlatCAMObj.py:4844 +#: FlatCAMObj.py:2652 FlatCAMObj.py:4698 FlatCAMObj.py:4703 FlatCAMObj.py:4853 msgid "Generating CNC Code" msgstr "" -#: FlatCAMObj.py:2672 FlatCAMObj.py:4990 camlib.py:5164 camlib.py:5623 -#: camlib.py:5886 +#: FlatCAMObj.py:2678 FlatCAMObj.py:4999 camlib.py:5167 camlib.py:5626 +#: camlib.py:5889 msgid "" "[ERROR]The Toolchange X,Y field in Edit -> Preferences has to be in the " "format (x, y) \n" "but now there is only one value, not two. " msgstr "" -#: FlatCAMObj.py:2984 FlatCAMObj.py:3889 FlatCAMObj.py:3890 FlatCAMObj.py:3899 +#: FlatCAMObj.py:2990 FlatCAMObj.py:3898 FlatCAMObj.py:3899 FlatCAMObj.py:3908 msgid "Iso" msgstr "" -#: FlatCAMObj.py:2984 FlatCAMObj.py:3233 FlatCAMObj.py:3513 +#: FlatCAMObj.py:2990 FlatCAMObj.py:3239 FlatCAMObj.py:3520 msgid "Rough" msgstr "" -#: FlatCAMObj.py:2984 +#: FlatCAMObj.py:2990 msgid "Finish" msgstr "" -#: FlatCAMObj.py:3268 flatcamGUI/FlatCAMGUI.py:526 flatcamGUI/FlatCAMGUI.py:722 +#: FlatCAMObj.py:3274 flatcamGUI/FlatCAMGUI.py:526 flatcamGUI/FlatCAMGUI.py:722 #: flatcamGUI/FlatCAMGUI.py:1615 flatcamGUI/FlatCAMGUI.py:1951 #: flatcamGUI/ObjectUI.py:999 msgid "Copy" msgstr "" -#: FlatCAMObj.py:3483 +#: FlatCAMObj.py:3490 msgid "[ERROR_NOTCL] Please enter the desired tool diameter in Float format." msgstr "" -#: FlatCAMObj.py:3556 +#: FlatCAMObj.py:3565 msgid "[success] Tool added in Tool Table." msgstr "" -#: FlatCAMObj.py:3561 +#: FlatCAMObj.py:3570 msgid "[ERROR_NOTCL] Default Tool added. Wrong value format entered." msgstr "" -#: FlatCAMObj.py:3591 FlatCAMObj.py:3601 +#: FlatCAMObj.py:3600 FlatCAMObj.py:3610 msgid "[WARNING_NOTCL] Failed. Select a tool to copy." msgstr "" -#: FlatCAMObj.py:3630 +#: FlatCAMObj.py:3639 msgid "[success] Tool was copied in Tool Table." msgstr "" -#: FlatCAMObj.py:3663 +#: FlatCAMObj.py:3672 msgid "[success] Tool was edited in Tool Table." msgstr "" -#: FlatCAMObj.py:3694 FlatCAMObj.py:3704 +#: FlatCAMObj.py:3703 FlatCAMObj.py:3713 msgid "[WARNING_NOTCL] Failed. Select a tool to delete." msgstr "" -#: FlatCAMObj.py:3728 +#: FlatCAMObj.py:3737 msgid "[success] Tool was deleted in Tool Table." msgstr "" -#: FlatCAMObj.py:4149 +#: FlatCAMObj.py:4158 #, python-format msgid "" "[WARNING_NOTCL] This Geometry can't be processed because it is %s geometry." msgstr "" -#: FlatCAMObj.py:4166 +#: FlatCAMObj.py:4175 msgid "[ERROR_NOTCL] Wrong Tool Dia value format entered, use a number." msgstr "" -#: FlatCAMObj.py:4193 +#: FlatCAMObj.py:4202 msgid "[ERROR_NOTCL] Failed. No tool selected in the tool table ..." msgstr "" -#: FlatCAMObj.py:4231 +#: FlatCAMObj.py:4240 #, python-format msgid "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" msgstr "" -#: FlatCAMObj.py:4389 FlatCAMObj.py:4627 +#: FlatCAMObj.py:4398 FlatCAMObj.py:4636 msgid "" "[WARNING] Tool Offset is selected in Tool Table but no value is provided.\n" "Add a Tool Offset or change the Offset Type." msgstr "" -#: FlatCAMObj.py:4508 flatcamTools/ToolSolderPaste.py:1107 +#: FlatCAMObj.py:4517 flatcamTools/ToolSolderPaste.py:1107 #: flatcamTools/ToolSolderPaste.py:1162 msgid "[ERROR_NOTCL] Cancelled. Empty file, it has no geometry..." msgstr "" -#: FlatCAMObj.py:4877 FlatCAMObj.py:4887 camlib.py:3347 camlib.py:3356 +#: FlatCAMObj.py:4886 FlatCAMObj.py:4896 camlib.py:3348 camlib.py:3357 msgid "[ERROR_NOTCL] Scale factor has to be a number: integer or float." msgstr "" -#: FlatCAMObj.py:4925 +#: FlatCAMObj.py:4934 msgid "[success] Geometry Scale done." msgstr "" -#: FlatCAMObj.py:4942 camlib.py:3425 +#: FlatCAMObj.py:4951 camlib.py:3426 msgid "" "[ERROR_NOTCL] An (x,y) pair of values are needed. Probable you entered only " "one value in the Offset field." msgstr "" -#: FlatCAMObj.py:4962 +#: FlatCAMObj.py:4971 msgid "[success] Geometry Offset done." msgstr "" -#: FlatCAMObj.py:5516 FlatCAMObj.py:5521 flatcamTools/ToolSolderPaste.py:1361 +#: FlatCAMObj.py:5525 FlatCAMObj.py:5530 flatcamTools/ToolSolderPaste.py:1361 msgid "Export Machine Code ..." msgstr "" -#: FlatCAMObj.py:5527 flatcamTools/ToolSolderPaste.py:1364 +#: FlatCAMObj.py:5536 flatcamTools/ToolSolderPaste.py:1364 msgid "[WARNING_NOTCL] Export Machine Code cancelled ..." msgstr "" -#: FlatCAMObj.py:5540 +#: FlatCAMObj.py:5549 #, python-format msgid "[success] Machine Code file saved to: %s" msgstr "" -#: FlatCAMObj.py:5562 +#: FlatCAMObj.py:5571 #, python-format msgid "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" msgstr "" -#: FlatCAMObj.py:5679 +#: FlatCAMObj.py:5688 #, python-format msgid "" "[WARNING_NOTCL] This CNCJob object can't be processed because it is a %s " "CNCJob object." msgstr "" -#: FlatCAMObj.py:5732 +#: FlatCAMObj.py:5741 msgid "[ERROR_NOTCL] G-code does not have a units code: either G20 or G21" msgstr "" -#: FlatCAMObj.py:5745 +#: FlatCAMObj.py:5754 msgid "" "[ERROR_NOTCL] Cancelled. The Toolchange Custom code is enabled but it's " "empty." msgstr "" -#: FlatCAMObj.py:5752 +#: FlatCAMObj.py:5761 msgid "[success] Toolchange G-code was replaced by a custom code." msgstr "" -#: FlatCAMObj.py:5767 flatcamTools/ToolSolderPaste.py:1390 +#: FlatCAMObj.py:5776 flatcamTools/ToolSolderPaste.py:1390 msgid "[WARNING_NOTCL] No such file or directory" msgstr "" -#: FlatCAMObj.py:5787 FlatCAMObj.py:5799 +#: FlatCAMObj.py:5796 FlatCAMObj.py:5808 msgid "" "[WARNING_NOTCL] The used postprocessor file has to have in it's name: " "'toolchange_custom'" msgstr "" -#: FlatCAMObj.py:5805 +#: FlatCAMObj.py:5814 msgid "[ERROR] There is no postprocessor file." msgstr "" @@ -1382,55 +1386,55 @@ msgstr "" msgid "[ERROR_NOTCL] Failed to skew. No object selected" msgstr "" -#: camlib.py:2727 camlib.py:2812 +#: camlib.py:2728 camlib.py:2813 #, python-format msgid "[WARNING] Coordinates missing, line ignored: %s" msgstr "" -#: camlib.py:2728 camlib.py:2813 +#: camlib.py:2729 camlib.py:2814 msgid "[WARNING_NOTCL] GERBER file might be CORRUPT. Check the file !!!" msgstr "" -#: camlib.py:2777 +#: camlib.py:2778 #, python-format msgid "" "[ERROR] Region does not have enough points. File will be processed but there " "are parser errors. Line number: %s" msgstr "" -#: camlib.py:3169 +#: camlib.py:3170 #, python-format msgid "" "[ERROR]Gerber Parser ERROR.\n" "%s:" msgstr "" -#: camlib.py:3393 +#: camlib.py:3394 msgid "[success] Gerber Scale done." msgstr "" -#: camlib.py:3458 +#: camlib.py:3459 msgid "[success] Gerber Offset done." msgstr "" -#: camlib.py:3512 +#: camlib.py:3513 msgid "[success] Gerber Mirror done." msgstr "" -#: camlib.py:3558 +#: camlib.py:3559 msgid "[success] Gerber Skew done." msgstr "" -#: camlib.py:3596 +#: camlib.py:3597 msgid "[success] Gerber Rotate done." msgstr "" -#: camlib.py:3875 +#: camlib.py:3878 #, python-format msgid "[ERROR_NOTCL] This is GCODE mark: %s" msgstr "" -#: camlib.py:3990 +#: camlib.py:3993 #, python-format msgid "" "[WARNING] No tool diameter info's. See shell.\n" @@ -1441,26 +1445,26 @@ msgid "" "diameters to reflect the real diameters." msgstr "" -#: camlib.py:4455 +#: camlib.py:4458 #, python-brace-format msgid "" "[ERROR] Excellon Parser error.\n" "Parsing Failed. Line {l_nr}: {line}\n" msgstr "" -#: camlib.py:4534 +#: camlib.py:4537 msgid "" "[WARNING] Excellon.create_geometry() -> a drill location was skipped due of " "not having a tool associated.\n" "Check the resulting GCode." msgstr "" -#: camlib.py:5073 +#: camlib.py:5076 #, python-format msgid "[ERROR] There is no such parameter: %s" msgstr "" -#: camlib.py:5143 +#: camlib.py:5146 msgid "" "[WARNING] The Cut Z parameter has positive value. It is the depth value to " "drill into material.\n" @@ -1469,27 +1473,27 @@ msgid "" "CNC code (Gcode etc)." msgstr "" -#: camlib.py:5150 camlib.py:5646 camlib.py:5909 +#: camlib.py:5153 camlib.py:5649 camlib.py:5912 #, python-format msgid "" "[WARNING] The Cut Z parameter is zero. There will be no cut, skipping %s file" msgstr "" -#: camlib.py:5379 camlib.py:5476 camlib.py:5534 +#: camlib.py:5382 camlib.py:5479 camlib.py:5537 msgid "[ERROR_NOTCL] The loaded Excellon file has no drills ..." msgstr "" -#: camlib.py:5481 +#: camlib.py:5484 msgid "[ERROR_NOTCL] Wrong optimization type selected." msgstr "" -#: camlib.py:5634 camlib.py:5897 +#: camlib.py:5637 camlib.py:5900 msgid "" "[ERROR_NOTCL] Cut_Z parameter is None or zero. Most likely a bad " "combinations of other parameters." msgstr "" -#: camlib.py:5639 camlib.py:5902 +#: camlib.py:5642 camlib.py:5905 msgid "" "[WARNING] The Cut Z parameter has positive value. It is the depth value to " "cut into material.\n" @@ -1498,11 +1502,11 @@ msgid "" "code (Gcode etc)." msgstr "" -#: camlib.py:5651 camlib.py:5914 +#: camlib.py:5654 camlib.py:5917 msgid "[ERROR_NOTCL] Travel Z parameter is None or zero." msgstr "" -#: camlib.py:5655 camlib.py:5918 +#: camlib.py:5658 camlib.py:5921 msgid "" "[WARNING] The Travel Z parameter has negative value. It is the height value " "to travel between cuts.\n" @@ -1511,31 +1515,31 @@ msgid "" "code (Gcode etc)." msgstr "" -#: camlib.py:5662 camlib.py:5925 +#: camlib.py:5665 camlib.py:5928 #, python-format msgid "" "[WARNING] The Z Travel parameter is zero. This is dangerous, skipping %s file" msgstr "" -#: camlib.py:5792 +#: camlib.py:5795 #, python-format msgid "[ERROR]Expected a Geometry, got %s" msgstr "" -#: camlib.py:5798 +#: camlib.py:5801 msgid "" "[ERROR_NOTCL] Trying to generate a CNC Job from a Geometry object without " "solid_geometry." msgstr "" -#: camlib.py:5837 +#: camlib.py:5840 msgid "" "[ERROR_NOTCL] The Tool Offset value is too negative to use for the " "current_geometry.\n" "Raise the value (in module) and try again." msgstr "" -#: camlib.py:6049 +#: camlib.py:6052 msgid "[ERROR_NOTCL] There is no tool data in the SolderPaste geometry." msgstr "" @@ -1766,7 +1770,7 @@ msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:665 #: flatcamEditors/FlatCAMGrbEditor.py:2550 #: flatcamEditors/FlatCAMGrbEditor.py:2586 -#: flatcamEditors/FlatCAMGrbEditor.py:4580 flatcamGUI/FlatCAMGUI.py:5107 +#: flatcamEditors/FlatCAMGrbEditor.py:4588 flatcamGUI/FlatCAMGUI.py:5107 #: flatcamTools/ToolTransform.py:68 msgid "Angle:" msgstr "" @@ -1836,7 +1840,7 @@ msgid "[success] Done. Drill(s) deleted." msgstr "" #: flatcamEditors/FlatCAMExcEditor.py:2705 -#: flatcamEditors/FlatCAMGrbEditor.py:4340 +#: flatcamEditors/FlatCAMGrbEditor.py:4350 msgid "Click on the circular array Center position" msgstr "" @@ -1897,7 +1901,7 @@ msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:2700 #: flatcamEditors/FlatCAMGeoEditor.py:2726 #: flatcamEditors/FlatCAMGeoEditor.py:2752 -#: flatcamEditors/FlatCAMGrbEditor.py:4392 +#: flatcamEditors/FlatCAMGrbEditor.py:4402 msgid "" "[WARNING_NOTCL] Buffer distance value is missing or wrong format. Add it and " "retry." @@ -2042,53 +2046,53 @@ msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:617 #: flatcamEditors/FlatCAMGeoEditor.py:990 -#: flatcamEditors/FlatCAMGrbEditor.py:4531 -#: flatcamEditors/FlatCAMGrbEditor.py:4916 flatcamGUI/FlatCAMGUI.py:654 +#: flatcamEditors/FlatCAMGrbEditor.py:4539 +#: flatcamEditors/FlatCAMGrbEditor.py:4924 flatcamGUI/FlatCAMGUI.py:654 #: flatcamGUI/FlatCAMGUI.py:1879 flatcamTools/ToolTransform.py:398 msgid "Transform Tool" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:618 #: flatcamEditors/FlatCAMGeoEditor.py:679 -#: flatcamEditors/FlatCAMGrbEditor.py:4532 -#: flatcamEditors/FlatCAMGrbEditor.py:4594 flatcamTools/ToolTransform.py:24 +#: flatcamEditors/FlatCAMGrbEditor.py:4540 +#: flatcamEditors/FlatCAMGrbEditor.py:4602 flatcamTools/ToolTransform.py:24 #: flatcamTools/ToolTransform.py:82 msgid "Rotate" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:619 -#: flatcamEditors/FlatCAMGrbEditor.py:4533 flatcamTools/ToolTransform.py:25 +#: flatcamEditors/FlatCAMGrbEditor.py:4541 flatcamTools/ToolTransform.py:25 msgid "Skew/Shear" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:620 #: flatcamEditors/FlatCAMGrbEditor.py:2471 -#: flatcamEditors/FlatCAMGrbEditor.py:4534 flatcamGUI/FlatCAMGUI.py:718 +#: flatcamEditors/FlatCAMGrbEditor.py:4542 flatcamGUI/FlatCAMGUI.py:718 #: flatcamGUI/FlatCAMGUI.py:1947 flatcamGUI/ObjectUI.py:100 #: flatcamTools/ToolTransform.py:26 msgid "Scale" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:621 -#: flatcamEditors/FlatCAMGrbEditor.py:4535 flatcamTools/ToolTransform.py:27 +#: flatcamEditors/FlatCAMGrbEditor.py:4543 flatcamTools/ToolTransform.py:27 msgid "Mirror (Flip)" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:622 -#: flatcamEditors/FlatCAMGrbEditor.py:4536 flatcamGUI/ObjectUI.py:127 +#: flatcamEditors/FlatCAMGrbEditor.py:4544 flatcamGUI/ObjectUI.py:127 #: flatcamGUI/ObjectUI.py:891 flatcamGUI/ObjectUI.py:1465 #: flatcamTools/ToolTransform.py:28 msgid "Offset" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:633 -#: flatcamEditors/FlatCAMGrbEditor.py:4548 +#: flatcamEditors/FlatCAMGrbEditor.py:4556 #, python-format msgid "Editor %s" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:667 -#: flatcamEditors/FlatCAMGrbEditor.py:4582 flatcamTools/ToolTransform.py:70 +#: flatcamEditors/FlatCAMGrbEditor.py:4590 flatcamTools/ToolTransform.py:70 msgid "" "Angle for Rotation action, in degrees.\n" "Float number between -360 and 359.\n" @@ -2097,7 +2101,7 @@ msgid "" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:681 -#: flatcamEditors/FlatCAMGrbEditor.py:4596 +#: flatcamEditors/FlatCAMGrbEditor.py:4604 msgid "" "Rotate the selected shape(s).\n" "The point of reference is the middle of\n" @@ -2105,14 +2109,14 @@ msgid "" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:704 -#: flatcamEditors/FlatCAMGrbEditor.py:4619 flatcamTools/ToolTransform.py:107 +#: flatcamEditors/FlatCAMGrbEditor.py:4627 flatcamTools/ToolTransform.py:107 msgid "Angle X:" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:706 #: flatcamEditors/FlatCAMGeoEditor.py:724 -#: flatcamEditors/FlatCAMGrbEditor.py:4621 -#: flatcamEditors/FlatCAMGrbEditor.py:4639 flatcamTools/ToolTransform.py:109 +#: flatcamEditors/FlatCAMGrbEditor.py:4629 +#: flatcamEditors/FlatCAMGrbEditor.py:4647 flatcamTools/ToolTransform.py:109 #: flatcamTools/ToolTransform.py:127 msgid "" "Angle for Skew action, in degrees.\n" @@ -2120,14 +2124,14 @@ msgid "" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:715 -#: flatcamEditors/FlatCAMGrbEditor.py:4630 flatcamTools/ToolTransform.py:118 +#: flatcamEditors/FlatCAMGrbEditor.py:4638 flatcamTools/ToolTransform.py:118 msgid "Skew X" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:717 #: flatcamEditors/FlatCAMGeoEditor.py:735 -#: flatcamEditors/FlatCAMGrbEditor.py:4632 -#: flatcamEditors/FlatCAMGrbEditor.py:4650 +#: flatcamEditors/FlatCAMGrbEditor.py:4640 +#: flatcamEditors/FlatCAMGrbEditor.py:4658 msgid "" "Skew/shear the selected shape(s).\n" "The point of reference is the middle of\n" @@ -2135,34 +2139,34 @@ msgid "" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:722 -#: flatcamEditors/FlatCAMGrbEditor.py:4637 flatcamTools/ToolTransform.py:125 +#: flatcamEditors/FlatCAMGrbEditor.py:4645 flatcamTools/ToolTransform.py:125 msgid "Angle Y:" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:733 -#: flatcamEditors/FlatCAMGrbEditor.py:4648 flatcamTools/ToolTransform.py:136 +#: flatcamEditors/FlatCAMGrbEditor.py:4656 flatcamTools/ToolTransform.py:136 msgid "Skew Y" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:761 -#: flatcamEditors/FlatCAMGrbEditor.py:4676 flatcamTools/ToolTransform.py:164 +#: flatcamEditors/FlatCAMGrbEditor.py:4684 flatcamTools/ToolTransform.py:164 msgid "Factor X:" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:763 -#: flatcamEditors/FlatCAMGrbEditor.py:4678 flatcamTools/ToolTransform.py:166 +#: flatcamEditors/FlatCAMGrbEditor.py:4686 flatcamTools/ToolTransform.py:166 msgid "Factor for Scale action over X axis." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:771 -#: flatcamEditors/FlatCAMGrbEditor.py:4686 flatcamTools/ToolTransform.py:174 +#: flatcamEditors/FlatCAMGrbEditor.py:4694 flatcamTools/ToolTransform.py:174 msgid "Scale X" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:773 #: flatcamEditors/FlatCAMGeoEditor.py:790 -#: flatcamEditors/FlatCAMGrbEditor.py:4688 -#: flatcamEditors/FlatCAMGrbEditor.py:4705 +#: flatcamEditors/FlatCAMGrbEditor.py:4696 +#: flatcamEditors/FlatCAMGrbEditor.py:4713 msgid "" "Scale the selected shape(s).\n" "The point of reference depends on \n" @@ -2170,41 +2174,41 @@ msgid "" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:778 -#: flatcamEditors/FlatCAMGrbEditor.py:4693 flatcamTools/ToolTransform.py:181 +#: flatcamEditors/FlatCAMGrbEditor.py:4701 flatcamTools/ToolTransform.py:181 msgid "Factor Y:" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:780 -#: flatcamEditors/FlatCAMGrbEditor.py:4695 flatcamTools/ToolTransform.py:183 +#: flatcamEditors/FlatCAMGrbEditor.py:4703 flatcamTools/ToolTransform.py:183 msgid "Factor for Scale action over Y axis." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:788 -#: flatcamEditors/FlatCAMGrbEditor.py:4703 flatcamTools/ToolTransform.py:191 +#: flatcamEditors/FlatCAMGrbEditor.py:4711 flatcamTools/ToolTransform.py:191 msgid "Scale Y" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:797 -#: flatcamEditors/FlatCAMGrbEditor.py:4712 flatcamGUI/FlatCAMGUI.py:6441 +#: flatcamEditors/FlatCAMGrbEditor.py:4720 flatcamGUI/FlatCAMGUI.py:6441 #: flatcamTools/ToolTransform.py:200 msgid "Link" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:799 -#: flatcamEditors/FlatCAMGrbEditor.py:4714 +#: flatcamEditors/FlatCAMGrbEditor.py:4722 msgid "" "Scale the selected shape(s)\n" "using the Scale Factor X for both axis." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:805 -#: flatcamEditors/FlatCAMGrbEditor.py:4720 flatcamGUI/FlatCAMGUI.py:6449 +#: flatcamEditors/FlatCAMGrbEditor.py:4728 flatcamGUI/FlatCAMGUI.py:6449 #: flatcamTools/ToolTransform.py:208 msgid "Scale Reference" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:807 -#: flatcamEditors/FlatCAMGrbEditor.py:4722 +#: flatcamEditors/FlatCAMGrbEditor.py:4730 msgid "" "Scale the selected shape(s)\n" "using the origin reference when checked,\n" @@ -2213,24 +2217,24 @@ msgid "" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:835 -#: flatcamEditors/FlatCAMGrbEditor.py:4751 flatcamTools/ToolTransform.py:238 +#: flatcamEditors/FlatCAMGrbEditor.py:4759 flatcamTools/ToolTransform.py:238 msgid "Value X:" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:837 -#: flatcamEditors/FlatCAMGrbEditor.py:4753 flatcamTools/ToolTransform.py:240 +#: flatcamEditors/FlatCAMGrbEditor.py:4761 flatcamTools/ToolTransform.py:240 msgid "Value for Offset action on X axis." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:845 -#: flatcamEditors/FlatCAMGrbEditor.py:4761 flatcamTools/ToolTransform.py:248 +#: flatcamEditors/FlatCAMGrbEditor.py:4769 flatcamTools/ToolTransform.py:248 msgid "Offset X" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:847 #: flatcamEditors/FlatCAMGeoEditor.py:865 -#: flatcamEditors/FlatCAMGrbEditor.py:4763 -#: flatcamEditors/FlatCAMGrbEditor.py:4781 +#: flatcamEditors/FlatCAMGrbEditor.py:4771 +#: flatcamEditors/FlatCAMGrbEditor.py:4789 msgid "" "Offset the selected shape(s).\n" "The point of reference is the middle of\n" @@ -2238,46 +2242,46 @@ msgid "" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:853 -#: flatcamEditors/FlatCAMGrbEditor.py:4769 flatcamTools/ToolTransform.py:255 +#: flatcamEditors/FlatCAMGrbEditor.py:4777 flatcamTools/ToolTransform.py:255 msgid "Value Y:" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:855 -#: flatcamEditors/FlatCAMGrbEditor.py:4771 flatcamTools/ToolTransform.py:257 +#: flatcamEditors/FlatCAMGrbEditor.py:4779 flatcamTools/ToolTransform.py:257 msgid "Value for Offset action on Y axis." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:863 -#: flatcamEditors/FlatCAMGrbEditor.py:4779 flatcamTools/ToolTransform.py:265 +#: flatcamEditors/FlatCAMGrbEditor.py:4787 flatcamTools/ToolTransform.py:265 msgid "Offset Y" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:894 -#: flatcamEditors/FlatCAMGrbEditor.py:4810 flatcamTools/ToolTransform.py:295 +#: flatcamEditors/FlatCAMGrbEditor.py:4818 flatcamTools/ToolTransform.py:295 msgid "Flip on X" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:896 #: flatcamEditors/FlatCAMGeoEditor.py:904 -#: flatcamEditors/FlatCAMGrbEditor.py:4812 #: flatcamEditors/FlatCAMGrbEditor.py:4820 +#: flatcamEditors/FlatCAMGrbEditor.py:4828 msgid "" "Flip the selected shape(s) over the X axis.\n" "Does not create a new shape." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:902 -#: flatcamEditors/FlatCAMGrbEditor.py:4818 flatcamTools/ToolTransform.py:303 +#: flatcamEditors/FlatCAMGrbEditor.py:4826 flatcamTools/ToolTransform.py:303 msgid "Flip on Y" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:911 -#: flatcamEditors/FlatCAMGrbEditor.py:4827 flatcamTools/ToolTransform.py:312 +#: flatcamEditors/FlatCAMGrbEditor.py:4835 flatcamTools/ToolTransform.py:312 msgid "Ref Pt" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:913 -#: flatcamEditors/FlatCAMGrbEditor.py:4829 +#: flatcamEditors/FlatCAMGrbEditor.py:4837 msgid "" "Flip the selected shape(s)\n" "around the point in Point Entry Field.\n" @@ -2291,12 +2295,12 @@ msgid "" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:925 -#: flatcamEditors/FlatCAMGrbEditor.py:4841 flatcamTools/ToolTransform.py:325 +#: flatcamEditors/FlatCAMGrbEditor.py:4849 flatcamTools/ToolTransform.py:325 msgid "Point:" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:927 -#: flatcamEditors/FlatCAMGrbEditor.py:4843 +#: flatcamEditors/FlatCAMGrbEditor.py:4851 msgid "" "Coordinates in format (x, y) used as reference for mirroring.\n" "The 'x' in (x, y) will be used when using Flip on X and\n" @@ -2304,7 +2308,7 @@ msgid "" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:939 -#: flatcamEditors/FlatCAMGrbEditor.py:4855 flatcamTools/ToolTransform.py:339 +#: flatcamEditors/FlatCAMGrbEditor.py:4863 flatcamTools/ToolTransform.py:339 msgid "" "The point coordinates can be captured by\n" "left click on canvas together with pressing\n" @@ -2312,235 +2316,235 @@ msgid "" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1054 -#: flatcamEditors/FlatCAMGrbEditor.py:4980 +#: flatcamEditors/FlatCAMGrbEditor.py:4988 msgid "[WARNING_NOTCL] Transformation cancelled. No shape selected." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1075 -#: flatcamEditors/FlatCAMGrbEditor.py:5000 flatcamTools/ToolTransform.py:468 +#: flatcamEditors/FlatCAMGrbEditor.py:5008 flatcamTools/ToolTransform.py:468 msgid "[ERROR_NOTCL] Wrong value format entered for Rotate, use a number." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1112 -#: flatcamEditors/FlatCAMGrbEditor.py:5043 flatcamTools/ToolTransform.py:502 +#: flatcamEditors/FlatCAMGrbEditor.py:5051 flatcamTools/ToolTransform.py:502 msgid "[ERROR_NOTCL] Wrong value format entered for Skew X, use a number." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1133 -#: flatcamEditors/FlatCAMGrbEditor.py:5070 flatcamTools/ToolTransform.py:520 +#: flatcamEditors/FlatCAMGrbEditor.py:5078 flatcamTools/ToolTransform.py:520 msgid "[ERROR_NOTCL] Wrong value format entered for Skew Y, use a number." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1154 -#: flatcamEditors/FlatCAMGrbEditor.py:5097 flatcamTools/ToolTransform.py:538 +#: flatcamEditors/FlatCAMGrbEditor.py:5105 flatcamTools/ToolTransform.py:538 msgid "[ERROR_NOTCL] Wrong value format entered for Scale X, use a number." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1191 -#: flatcamEditors/FlatCAMGrbEditor.py:5138 flatcamTools/ToolTransform.py:572 +#: flatcamEditors/FlatCAMGrbEditor.py:5146 flatcamTools/ToolTransform.py:572 msgid "[ERROR_NOTCL] Wrong value format entered for Scale Y, use a number." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1223 -#: flatcamEditors/FlatCAMGrbEditor.py:5176 flatcamTools/ToolTransform.py:601 +#: flatcamEditors/FlatCAMGrbEditor.py:5184 flatcamTools/ToolTransform.py:601 msgid "[ERROR_NOTCL] Wrong value format entered for Offset X, use a number." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1244 -#: flatcamEditors/FlatCAMGrbEditor.py:5202 flatcamTools/ToolTransform.py:619 +#: flatcamEditors/FlatCAMGrbEditor.py:5210 flatcamTools/ToolTransform.py:619 msgid "[ERROR_NOTCL] Wrong value format entered for Offset Y, use a number." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1262 -#: flatcamEditors/FlatCAMGrbEditor.py:5225 +#: flatcamEditors/FlatCAMGrbEditor.py:5233 msgid "[WARNING_NOTCL] No shape selected. Please Select a shape to rotate!" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1265 -#: flatcamEditors/FlatCAMGrbEditor.py:5228 flatcamTools/ToolTransform.py:640 +#: flatcamEditors/FlatCAMGrbEditor.py:5236 flatcamTools/ToolTransform.py:640 msgid "Appying Rotate" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1293 -#: flatcamEditors/FlatCAMGrbEditor.py:5259 +#: flatcamEditors/FlatCAMGrbEditor.py:5269 msgid "[success] Done. Rotate completed." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1309 -#: flatcamEditors/FlatCAMGrbEditor.py:5278 +#: flatcamEditors/FlatCAMGrbEditor.py:5288 msgid "[WARNING_NOTCL] No shape selected. Please Select a shape to flip!" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1312 -#: flatcamEditors/FlatCAMGrbEditor.py:5281 flatcamTools/ToolTransform.py:691 +#: flatcamEditors/FlatCAMGrbEditor.py:5291 flatcamTools/ToolTransform.py:691 msgid "Applying Flip" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1342 -#: flatcamEditors/FlatCAMGrbEditor.py:5318 flatcamTools/ToolTransform.py:733 +#: flatcamEditors/FlatCAMGrbEditor.py:5330 flatcamTools/ToolTransform.py:733 msgid "[success] Flip on the Y axis done ..." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1345 -#: flatcamEditors/FlatCAMGrbEditor.py:5326 flatcamTools/ToolTransform.py:742 +#: flatcamEditors/FlatCAMGrbEditor.py:5338 flatcamTools/ToolTransform.py:742 msgid "[success] Flip on the X axis done ..." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1364 -#: flatcamEditors/FlatCAMGrbEditor.py:5346 +#: flatcamEditors/FlatCAMGrbEditor.py:5358 msgid "[WARNING_NOTCL] No shape selected. Please Select a shape to shear/skew!" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1367 -#: flatcamEditors/FlatCAMGrbEditor.py:5349 flatcamTools/ToolTransform.py:760 +#: flatcamEditors/FlatCAMGrbEditor.py:5361 flatcamTools/ToolTransform.py:760 msgid "Applying Skew" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1392 -#: flatcamEditors/FlatCAMGrbEditor.py:5382 flatcamTools/ToolTransform.py:791 +#: flatcamEditors/FlatCAMGrbEditor.py:5396 flatcamTools/ToolTransform.py:791 #, python-format msgid "[success] Skew on the %s axis done ..." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1396 -#: flatcamEditors/FlatCAMGrbEditor.py:5386 flatcamTools/ToolTransform.py:795 +#: flatcamEditors/FlatCAMGrbEditor.py:5400 flatcamTools/ToolTransform.py:795 #, python-format msgid "[ERROR_NOTCL] Due of %s, Skew action was not executed." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1407 -#: flatcamEditors/FlatCAMGrbEditor.py:5405 +#: flatcamEditors/FlatCAMGrbEditor.py:5419 msgid "[WARNING_NOTCL] No shape selected. Please Select a shape to scale!" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1410 -#: flatcamEditors/FlatCAMGrbEditor.py:5408 flatcamTools/ToolTransform.py:809 +#: flatcamEditors/FlatCAMGrbEditor.py:5422 flatcamTools/ToolTransform.py:809 msgid "Applying Scale" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1443 -#: flatcamEditors/FlatCAMGrbEditor.py:5444 flatcamTools/ToolTransform.py:848 +#: flatcamEditors/FlatCAMGrbEditor.py:5460 flatcamTools/ToolTransform.py:848 #, python-format msgid "[success] Scale on the %s axis done ..." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1446 -#: flatcamEditors/FlatCAMGrbEditor.py:5447 flatcamTools/ToolTransform.py:851 +#: flatcamEditors/FlatCAMGrbEditor.py:5463 flatcamTools/ToolTransform.py:851 #, python-format msgid "[ERROR_NOTCL] Due of %s, Scale action was not executed." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1455 -#: flatcamEditors/FlatCAMGrbEditor.py:5460 +#: flatcamEditors/FlatCAMGrbEditor.py:5476 msgid "[WARNING_NOTCL] No shape selected. Please Select a shape to offset!" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1458 -#: flatcamEditors/FlatCAMGrbEditor.py:5463 flatcamTools/ToolTransform.py:861 +#: flatcamEditors/FlatCAMGrbEditor.py:5479 flatcamTools/ToolTransform.py:861 msgid "Applying Offset" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1469 -#: flatcamEditors/FlatCAMGrbEditor.py:5484 flatcamTools/ToolTransform.py:880 +#: flatcamEditors/FlatCAMGrbEditor.py:5501 flatcamTools/ToolTransform.py:880 #, python-format msgid "[success] Offset on the %s axis done ..." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1473 -#: flatcamEditors/FlatCAMGrbEditor.py:5488 flatcamTools/ToolTransform.py:884 +#: flatcamEditors/FlatCAMGrbEditor.py:5505 flatcamTools/ToolTransform.py:884 #, python-format msgid "[ERROR_NOTCL] Due of %s, Offset action was not executed." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1477 -#: flatcamEditors/FlatCAMGrbEditor.py:5492 +#: flatcamEditors/FlatCAMGrbEditor.py:5509 msgid "Rotate ..." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1478 #: flatcamEditors/FlatCAMGeoEditor.py:1535 #: flatcamEditors/FlatCAMGeoEditor.py:1552 -#: flatcamEditors/FlatCAMGrbEditor.py:5493 -#: flatcamEditors/FlatCAMGrbEditor.py:5550 +#: flatcamEditors/FlatCAMGrbEditor.py:5510 #: flatcamEditors/FlatCAMGrbEditor.py:5567 +#: flatcamEditors/FlatCAMGrbEditor.py:5584 msgid "Enter an Angle Value (degrees):" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1487 -#: flatcamEditors/FlatCAMGrbEditor.py:5502 +#: flatcamEditors/FlatCAMGrbEditor.py:5519 msgid "[success] Geometry shape rotate done..." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1492 -#: flatcamEditors/FlatCAMGrbEditor.py:5507 +#: flatcamEditors/FlatCAMGrbEditor.py:5524 msgid "[WARNING_NOTCL] Geometry shape rotate cancelled..." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1498 -#: flatcamEditors/FlatCAMGrbEditor.py:5513 +#: flatcamEditors/FlatCAMGrbEditor.py:5530 msgid "Offset on X axis ..." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1499 #: flatcamEditors/FlatCAMGeoEditor.py:1518 -#: flatcamEditors/FlatCAMGrbEditor.py:5514 -#: flatcamEditors/FlatCAMGrbEditor.py:5533 +#: flatcamEditors/FlatCAMGrbEditor.py:5531 +#: flatcamEditors/FlatCAMGrbEditor.py:5550 #, python-format msgid "Enter a distance Value (%s):" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1508 -#: flatcamEditors/FlatCAMGrbEditor.py:5523 +#: flatcamEditors/FlatCAMGrbEditor.py:5540 msgid "[success] Geometry shape offset on X axis done..." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1512 -#: flatcamEditors/FlatCAMGrbEditor.py:5527 +#: flatcamEditors/FlatCAMGrbEditor.py:5544 msgid "[WARNING_NOTCL] Geometry shape offset X cancelled..." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1517 -#: flatcamEditors/FlatCAMGrbEditor.py:5532 +#: flatcamEditors/FlatCAMGrbEditor.py:5549 msgid "Offset on Y axis ..." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1527 -#: flatcamEditors/FlatCAMGrbEditor.py:5542 +#: flatcamEditors/FlatCAMGrbEditor.py:5559 msgid "[success] Geometry shape offset on Y axis done..." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1531 -#: flatcamEditors/FlatCAMGrbEditor.py:5546 +#: flatcamEditors/FlatCAMGrbEditor.py:5563 msgid "[WARNING_NOTCL] Geometry shape offset Y cancelled..." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1534 -#: flatcamEditors/FlatCAMGrbEditor.py:5549 +#: flatcamEditors/FlatCAMGrbEditor.py:5566 msgid "Skew on X axis ..." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1544 -#: flatcamEditors/FlatCAMGrbEditor.py:5559 +#: flatcamEditors/FlatCAMGrbEditor.py:5576 msgid "[success] Geometry shape skew on X axis done..." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1548 -#: flatcamEditors/FlatCAMGrbEditor.py:5563 +#: flatcamEditors/FlatCAMGrbEditor.py:5580 msgid "[WARNING_NOTCL] Geometry shape skew X cancelled..." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1551 -#: flatcamEditors/FlatCAMGrbEditor.py:5566 +#: flatcamEditors/FlatCAMGrbEditor.py:5583 msgid "Skew on Y axis ..." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1561 -#: flatcamEditors/FlatCAMGrbEditor.py:5576 +#: flatcamEditors/FlatCAMGrbEditor.py:5593 msgid "[success] Geometry shape skew on Y axis done..." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:1565 -#: flatcamEditors/FlatCAMGrbEditor.py:5580 +#: flatcamEditors/FlatCAMGrbEditor.py:5597 msgid "[WARNING_NOTCL] Geometry shape skew Y cancelled..." msgstr "" @@ -2691,7 +2695,7 @@ msgid "[WARNING_NOTCL] Buffer cancelled. No shape selected." msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:2711 -#: flatcamEditors/FlatCAMGrbEditor.py:4442 +#: flatcamEditors/FlatCAMGrbEditor.py:4447 msgid "[success] Done. Buffer Tool completed." msgstr "" @@ -2981,23 +2985,23 @@ msgid "Apertures Table for the Gerber Object." msgstr "" #: flatcamEditors/FlatCAMGrbEditor.py:2291 -#: flatcamEditors/FlatCAMGrbEditor.py:3602 flatcamGUI/ObjectUI.py:228 +#: flatcamEditors/FlatCAMGrbEditor.py:3601 flatcamGUI/ObjectUI.py:228 msgid "Code" msgstr "" #: flatcamEditors/FlatCAMGrbEditor.py:2291 -#: flatcamEditors/FlatCAMGrbEditor.py:3602 flatcamGUI/ObjectUI.py:228 +#: flatcamEditors/FlatCAMGrbEditor.py:3601 flatcamGUI/ObjectUI.py:228 #: flatcamGUI/ObjectUI.py:891 flatcamGUI/ObjectUI.py:1465 msgid "Type" msgstr "" #: flatcamEditors/FlatCAMGrbEditor.py:2291 -#: flatcamEditors/FlatCAMGrbEditor.py:3602 flatcamGUI/ObjectUI.py:228 +#: flatcamEditors/FlatCAMGrbEditor.py:3601 flatcamGUI/ObjectUI.py:228 msgid "Size" msgstr "" #: flatcamEditors/FlatCAMGrbEditor.py:2291 -#: flatcamEditors/FlatCAMGrbEditor.py:3602 flatcamGUI/ObjectUI.py:228 +#: flatcamEditors/FlatCAMGrbEditor.py:3601 flatcamGUI/ObjectUI.py:228 msgid "Dim" msgstr "" @@ -3213,33 +3217,40 @@ msgstr "" msgid "[WARNING_NOTCL] Cancelled. No aperture is selected" msgstr "" -#: flatcamEditors/FlatCAMGrbEditor.py:4270 +#: flatcamEditors/FlatCAMGrbEditor.py:4280 msgid "[ERROR_NOTCL] Failed. No aperture geometry is selected." msgstr "" -#: flatcamEditors/FlatCAMGrbEditor.py:4278 +#: flatcamEditors/FlatCAMGrbEditor.py:4288 msgid "[success] Done. Apertures geometry deleted." msgstr "" -#: flatcamEditors/FlatCAMGrbEditor.py:4427 +#: flatcamEditors/FlatCAMGrbEditor.py:4431 msgid "" "[WARNING_NOTCL] No aperture to buffer. Select at least one aperture and try " "again." msgstr "" -#: flatcamEditors/FlatCAMGrbEditor.py:4456 +#: flatcamEditors/FlatCAMGrbEditor.py:4444 +#, python-format +msgid "" +"[ERROR_NOTCL] Failed.\n" +"%s" +msgstr "" + +#: flatcamEditors/FlatCAMGrbEditor.py:4461 msgid "" "[WARNING_NOTCL] Scale factor value is missing or wrong format. Add it and " "retry." msgstr "" -#: flatcamEditors/FlatCAMGrbEditor.py:4486 +#: flatcamEditors/FlatCAMGrbEditor.py:4494 msgid "" "[WARNING_NOTCL] No aperture to scale. Select at least one aperture and try " "again." msgstr "" -#: flatcamEditors/FlatCAMGrbEditor.py:4502 +#: flatcamEditors/FlatCAMGrbEditor.py:4510 msgid "[success] Done. Scale Tool completed." msgstr "" From 1132c43f05e253a5034398ed51261ecdc0b4d699 Mon Sep 17 00:00:00 2001 From: Marius Stanciu Date: Thu, 20 Jun 2019 19:49:40 +0300 Subject: [PATCH 08/15] - fixed Scale and Buffer Tool in Gerber Editor --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index c181d969..1e7d2afe 100644 --- a/README.md +++ b/README.md @@ -11,6 +11,7 @@ CAD program, and create G-Code for Isolation routing. 20.06.2019 +- fixed Scale and Buffer Tool in Gerber Editor - fixed Editor Transform Tool in Gerber Editor - added a message in the status bar when copying coordinates to clipboard with SHIFT + LMB click combo - languages update From 68bdfaf062251360b65021b00caa28fc01fa1011 Mon Sep 17 00:00:00 2001 From: Marius Stanciu Date: Sat, 22 Jun 2019 17:58:31 +0300 Subject: [PATCH 09/15] - some GUI layout optimizations in Edit -> Preferences - added the possibility for multiple tool diameters in the Edit -> Preferences -> Geometry -> Geometry General -> Tool dia separated by comma - fixed scaling for the multiple tool diameters in Edit -> Preferences -> Geometry -> Geometry General -> Tool dia, for NCC tools more than 2 and for Solderpaste nozzles more than 2 - fixed bug in CNCJob where the CNC Tools table will show always only 2 decimals for Tool diameters regardless of the current measuring units - made the tools diameters decimals in case of INCH FlatCAM units to be 4 instead of 3 - fixed bug in updating Grid values whenever toggling the FlatCAM units and the X, Y Grid values are linked, bugs which caused the Y value to be scaled incorrectly - set the decimals for Grid values to be set to 6 if the units of FlatCAM is INCH and to set to 4 if FlatCAM units are METRIC - updated translations - updated the Russian translate from 51% complete to 69% complete using the Yandex translation engine --- FlatCAMApp.py | 57 +- FlatCAMObj.py | 63 +- README.md | 12 + camlib.py | 6 +- flatcamEditors/FlatCAMExcEditor.py | 6 +- flatcamEditors/FlatCAMGeoEditor.py | 5 +- flatcamGUI/FlatCAMGUI.py | 73 +- flatcamGUI/GUIElements.py | 5 +- flatcamParsers/ParseDXF.py | 4 +- flatcamTools/ToolNonCopperClear.py | 2 +- flatcamTools/ToolPaint.py | 2 +- flatcamTools/ToolSolderPaste.py | 2 +- locale/de/LC_MESSAGES/strings.mo | Bin 305418 -> 305239 bytes locale/de/LC_MESSAGES/strings.po | 1206 ++++++++------- locale/en/LC_MESSAGES/strings.mo | Bin 284761 -> 284579 bytes locale/en/LC_MESSAGES/strings.po | 1208 ++++++++------- locale/ro/LC_MESSAGES/strings.mo | Bin 303751 -> 303587 bytes locale/ro/LC_MESSAGES/strings.po | 1202 ++++++++------- locale/ru/LC_MESSAGES/strings.mo | Bin 105638 -> 163041 bytes locale/ru/LC_MESSAGES/strings.po | 2267 +++++++++++++++------------- locale_template/strings.pot | 1187 ++++++++------- 21 files changed, 3783 insertions(+), 3524 deletions(-) diff --git a/FlatCAMApp.py b/FlatCAMApp.py index bccbd244..cd7517fa 100644 --- a/FlatCAMApp.py +++ b/FlatCAMApp.py @@ -95,7 +95,7 @@ class App(QtCore.QObject): # Version version = 8.919 - version_date = "2019/06/21" + version_date = "2019/06/22" beta = True # current date now @@ -3618,9 +3618,10 @@ class App(QtCore.QObject): if self.toggle_units_ignore: return + new_units = self.ui.general_defaults_form.general_app_group.units_radio.get_value().upper() + # If option is the same, then ignore - if self.ui.general_defaults_form.general_app_group.units_radio.get_value().upper() == \ - self.defaults["units"].upper(): + if new_units == self.defaults["units"].upper(): self.log.debug("on_toggle_units(): Same as defaults, so ignoring.") return @@ -3667,16 +3668,24 @@ class App(QtCore.QObject): coords_xy[0] *= sfactor coords_xy[1] *= sfactor self.options['geometry_toolchangexy'] = "%f, %f" % (coords_xy[0], coords_xy[1]) + elif dim == 'geometry_cnctooldia': + self.options['geometry_cnctooldia'] = '' + tools_diameters = [float(eval(a)) for a in self.defaults["geometry_cnctooldia"].split(",")] + for t in range(len(tools_diameters)): + tools_diameters[t] *= sfactor + self.options['geometry_cnctooldia'] += "%f, " % tools_diameters[t] elif dim == 'tools_ncctools': + self.options['tools_ncctools'] = '' ncctols = [float(eval(a)) for a in self.defaults["tools_ncctools"].split(",")] - ncctols[0] *= sfactor - ncctols[1] *= sfactor - self.options['tools_ncctools'] = "%f, %f" % (ncctols[0], ncctols[1]) + for t in range(len(ncctols)): + ncctols[t] *= sfactor + self.options['tools_ncctools'] += "%f, " % ncctols[t] elif dim == 'tools_solderpaste_tools': + self.options['tools_solderpaste_tools'] = "" sp_tools = [float(eval(a)) for a in self.defaults["tools_solderpaste_tools"].split(",")] - sp_tools[0] *= sfactor - sp_tools[1] *= sfactor - self.options['tools_solderpaste_tools'] = "%f, %f" % (sp_tools[0], sp_tools[1]) + for t in range(len(sp_tools)): + sp_tools[t] *= sfactor + self.options['tools_solderpaste_tools'] = "%f, " % sp_tools[t] elif dim == 'tools_solderpaste_xy_toolchange': sp_coords = [float(eval(a)) for a in self.defaults["tools_solderpaste_xy_toolchange"].split(",")] sp_coords[0] *= sfactor @@ -3700,16 +3709,24 @@ class App(QtCore.QObject): coords_xy[0] *= sfactor coords_xy[1] *= sfactor self.defaults['geometry_toolchangexy'] = "%.4f, %.4f" % (coords_xy[0], coords_xy[1]) + elif dim == 'geometry_cnctooldia': + self.defaults['geometry_cnctooldia'] = '' + tools_diameters = [float(eval(a)) for a in self.defaults["geometry_cnctooldia"].split(",")] + for t in range(len(tools_diameters)): + tools_diameters[t] *= sfactor + self.defaults['geometry_cnctooldia'] += "%.4f, " % tools_diameters[t] elif dim == 'tools_ncctools': + self.defaults['tools_ncctools'] = '' ncctols = [float(eval(a)) for a in self.defaults["tools_ncctools"].split(",")] - ncctols[0] *= sfactor - ncctols[1] *= sfactor - self.defaults['tools_ncctools'] = "%.4f, %.4f" % (ncctols[0], ncctols[1]) + for t in range(len(ncctols)): + ncctols[t] *= sfactor + self.defaults['tools_ncctools'] += "%.4f, " % ncctols[t] elif dim == 'tools_solderpaste_tools': + self.defaults['tools_solderpaste_tools'] = "" sp_tools = [float(eval(a)) for a in self.defaults["tools_solderpaste_tools"].split(",")] - sp_tools[0] *= sfactor - sp_tools[1] *= sfactor - self.defaults['tools_solderpaste_tools'] = "%.4f, %.4f" % (sp_tools[0], sp_tools[1]) + for t in range(len(sp_tools)): + sp_tools[t] *= sfactor + self.defaults['tools_solderpaste_tools'] = "%.4f, " % sp_tools[t] elif dim == 'tools_solderpaste_xy_toolchange': sp_coords = [float(eval(a)) for a in self.defaults["tools_solderpaste_xy_toolchange"].split(",")] sp_coords[0] *= sfactor @@ -3723,7 +3740,7 @@ class App(QtCore.QObject): # The scaling factor depending on choice of units. factor = 1/25.4 - if self.ui.general_defaults_form.general_app_group.units_radio.get_value().upper() == 'MM': + if new_units == 'MM': factor = 25.4 # Changing project units. Warn user. @@ -3757,8 +3774,12 @@ class App(QtCore.QObject): self.plotcanvas.draw_workspace() # adjust the grid values on the main toolbar - self.ui.grid_gap_x_entry.set_value(float(self.ui.grid_gap_x_entry.get_value()) * factor) - self.ui.grid_gap_y_entry.set_value(float(self.ui.grid_gap_y_entry.get_value()) * factor) + dec = 6 if new_units == 'IN'else 4 + val_x = float(self.ui.grid_gap_x_entry.get_value()) * factor + self.ui.grid_gap_x_entry.set_value(val_x, decimals=dec) + if not self.ui.grid_gap_link_cb.isChecked(): + val_y = float(self.ui.grid_gap_y_entry.get_value()) * factor + self.ui.grid_gap_y_entry.set_value(val_y, decimals=dec) units = self.ui.general_defaults_form.general_app_group.units_radio.get_value().upper() for obj in self.collection.get_list(): diff --git a/FlatCAMObj.py b/FlatCAMObj.py index 9ad52429..2785cd2f 100644 --- a/FlatCAMObj.py +++ b/FlatCAMObj.py @@ -1646,7 +1646,7 @@ class FlatCAMExcellon(FlatCAMObj, Excellon): exc.app.log.warning("Failed to copy option.", option) for drill in exc.drills: - exc_tool_dia = float('%.3f' % exc.tools[drill['tool']]['C']) + exc_tool_dia = float('%.4f' % exc.tools[drill['tool']]['C']) if exc_tool_dia not in custom_dict_drills: custom_dict_drills[exc_tool_dia] = [drill['point']] @@ -1654,7 +1654,7 @@ class FlatCAMExcellon(FlatCAMObj, Excellon): custom_dict_drills[exc_tool_dia].append(drill['point']) for slot in exc.slots: - exc_tool_dia = float('%.3f' % exc.tools[slot['tool']]['C']) + exc_tool_dia = float('%.4f' % exc.tools[slot['tool']]['C']) if exc_tool_dia not in custom_dict_slots: custom_dict_slots[exc_tool_dia] = [[slot['start'], slot['stop']]] @@ -1747,7 +1747,7 @@ class FlatCAMExcellon(FlatCAMObj, Excellon): temp_tools[tool_name_temp] = spec_temp for drill in exc_final.drills: - exc_tool_dia = float('%.3f' % exc_final.tools[drill['tool']]['C']) + exc_tool_dia = float('%.4f' % exc_final.tools[drill['tool']]['C']) if exc_tool_dia == ordered_dia: temp_drills.append( { @@ -1757,7 +1757,7 @@ class FlatCAMExcellon(FlatCAMObj, Excellon): ) for slot in exc_final.slots: - slot_tool_dia = float('%.3f' % exc_final.tools[slot['tool']]['C']) + slot_tool_dia = float('%.4f' % exc_final.tools[slot['tool']]['C']) if slot_tool_dia == ordered_dia: temp_slots.append( { @@ -1833,7 +1833,7 @@ class FlatCAMExcellon(FlatCAMObj, Excellon): if self.units == 'MM': dia = QtWidgets.QTableWidgetItem('%.2f' % (self.tools[tool_no]['C'])) else: - dia = QtWidgets.QTableWidgetItem('%.3f' % (self.tools[tool_no]['C'])) + dia = QtWidgets.QTableWidgetItem('%.4f' % (self.tools[tool_no]['C'])) dia.setFlags(QtCore.Qt.ItemIsEnabled) @@ -1851,7 +1851,7 @@ class FlatCAMExcellon(FlatCAMObj, Excellon): if self.units == 'MM': t_offset = self.tool_offset[float('%.2f' % float(self.tools[tool_no]['C']))] else: - t_offset = self.tool_offset[float('%.3f' % float(self.tools[tool_no]['C']))] + t_offset = self.tool_offset[float('%.4f' % float(self.tools[tool_no]['C']))] except KeyError: t_offset = self.app.defaults['excellon_offset'] tool_offset_item = QtWidgets.QTableWidgetItem('%s' % str(t_offset)) @@ -2026,7 +2026,7 @@ class FlatCAMExcellon(FlatCAMObj, Excellon): if self.units == 'MM': dia = float('%.2f' % float(value['C'])) else: - dia = float('%.3f' % float(value['C'])) + dia = float('%.4f' % float(value['C'])) self.tool_offset[dia] = t_default_offset # Show/Hide Advanced Options @@ -2090,7 +2090,7 @@ class FlatCAMExcellon(FlatCAMObj, Excellon): if self.units == 'MM': dia = float('%.2f' % float(self.ui.tools_table.item(row_of_item_changed, 1).text())) else: - dia = float('%.3f' % float(self.ui.tools_table.item(row_of_item_changed, 1).text())) + dia = float('%.4f' % float(self.ui.tools_table.item(row_of_item_changed, 1).text())) current_table_offset_edited = None if self.ui.tools_table.currentItem() is not None: @@ -2958,7 +2958,15 @@ class FlatCAMGeometry(FlatCAMObj, Geometry): }) if "cnctooldia" not in self.options: - self.options["cnctooldia"] = self.app.defaults["geometry_cnctooldia"] + # self.options["cnctooldia"] = self.app.defaults["geometry_cnctooldia"] + try: + self.options["cnctooldia"] = [ + float(eval(dia)) for dia in str(self.app.defaults["geometry_cnctooldia"]).split(",") + ] + except Exception as e: + log.error("At least one tool diameter needed. Verify in Edit -> Preferences -> Geometry General -> " + "Tool dia. %s" % str(e)) + return self.options["startz"] = self.app.defaults["geometry_startz"] @@ -3229,19 +3237,31 @@ class FlatCAMGeometry(FlatCAMObj, Geometry): if def_key == opt_key: self.default_data[def_key] = deepcopy(opt_val) + try: + tools_list = [ + float(eval(dia)) for dia in self.options["cnctooldia"].split(",") + ] + except Exception as e: + log.error("At least one tool diameter needed. Verify in Edit -> Preferences -> Geometry General -> " + "Tool dia. %s" % str(e)) + return + self.tooluid += 1 + if not self.tools: - self.tools.update({ - self.tooluid: { - 'tooldia': float(self.options["cnctooldia"]), - 'offset': ('Path'), - 'offset_value': 0.0, - 'type': _('Rough'), - 'tool_type': 'C1', - 'data': self.default_data, - 'solid_geometry': self.solid_geometry - } - }) + for toold in tools_list: + self.tools.update({ + self.tooluid: { + 'tooldia': float(toold), + 'offset': ('Path'), + 'offset_value': 0.0, + 'type': _('Rough'), + 'tool_type': 'C1', + 'data': self.default_data, + 'solid_geometry': self.solid_geometry + } + }) + self.tooluid += 1 else: # if self.tools is not empty then it can safely be assumed that it comes from an opened project. # Because of the serialization the self.tools list on project save, the dict keys (members of self.tools @@ -3482,7 +3502,7 @@ class FlatCAMGeometry(FlatCAMObj, Geometry): tooldia = float(self.ui.addtool_entry.get_value().replace(',', '.')) except ValueError: change_message = True - tooldia = float(self.app.defaults["geometry_cnctooldia"]) + tooldia = self.options["cnctooldia"][0] if tooldia is None: self.build_ui() @@ -5300,6 +5320,7 @@ class FlatCAMCNCjob(FlatCAMObj, CNCjob): else: self.ui.cnc_tools_table.hide() + self.units = self.app.ui.general_defaults_form.general_app_group.units_radio.get_value().upper() offset = 0 tool_idx = 0 diff --git a/README.md b/README.md index 1e7d2afe..7e32f10c 100644 --- a/README.md +++ b/README.md @@ -9,6 +9,18 @@ CAD program, and create G-Code for Isolation routing. ================================================= +22.06.2019 + +- some GUI layout optimizations in Edit -> Preferences +- added the possibility for multiple tool diameters in the Edit -> Preferences -> Geometry -> Geometry General -> Tool dia separated by comma +- fixed scaling for the multiple tool diameters in Edit -> Preferences -> Geometry -> Geometry General -> Tool dia, for NCC tools more than 2 and for Solderpaste nozzles more than 2 +- fixed bug in CNCJob where the CNC Tools table will show always only 2 decimals for Tool diameters regardless of the current measuring units +- made the tools diameters decimals in case of INCH FlatCAM units to be 4 instead of 3 +- fixed bug in updating Grid values whenever toggling the FlatCAM units and the X, Y Grid values are linked, bugs which caused the Y value to be scaled incorrectly +- set the decimals for Grid values to be set to 6 if the units of FlatCAM is INCH and to set to 4 if FlatCAM units are METRIC +- updated translations +- updated the Russian translate from 51% complete to 69% complete using the Yandex translation engine + 20.06.2019 - fixed Scale and Buffer Tool in Gerber Editor diff --git a/camlib.py b/camlib.py index 698f2da8..90a7edf0 100644 --- a/camlib.py +++ b/camlib.py @@ -5353,7 +5353,7 @@ class CNCjob(Geometry): if self.units == 'MM': current_tooldia = float('%.2f' % float(exobj.tools[tool]["C"])) else: - current_tooldia = float('%.3f' % float(exobj.tools[tool]["C"])) + current_tooldia = float('%.4f' % float(exobj.tools[tool]["C"])) # TODO apply offset only when using the GUI, for TclCommand this will create an error # because the values for Z offset are created in build_ui() @@ -5451,7 +5451,7 @@ class CNCjob(Geometry): if self.units == 'MM': current_tooldia = float('%.2f' % float(exobj.tools[tool]["C"])) else: - current_tooldia = float('%.3f' % float(exobj.tools[tool]["C"])) + current_tooldia = float('%.4f' % float(exobj.tools[tool]["C"])) # TODO apply offset only when using the GUI, for TclCommand this will create an error # because the values for Z offset are created in build_ui() @@ -5507,7 +5507,7 @@ class CNCjob(Geometry): if self.units == 'MM': current_tooldia = float('%.2f' % float(exobj.tools[tool]["C"])) else: - current_tooldia = float('%.3f' % float(exobj.tools[tool]["C"])) + current_tooldia = float('%.4f' % float(exobj.tools[tool]["C"])) # TODO apply offset only when using the GUI, for TclCommand this will create an error # because the values for Z offset are created in build_ui() diff --git a/flatcamEditors/FlatCAMExcEditor.py b/flatcamEditors/FlatCAMExcEditor.py index d7e56db0..f2cfdab7 100644 --- a/flatcamEditors/FlatCAMExcEditor.py +++ b/flatcamEditors/FlatCAMExcEditor.py @@ -1209,7 +1209,7 @@ class FlatCAMExcEditor(QtCore.QObject): for drill in self.exc_obj.drills: if drill['tool'] in self.exc_obj.tools: if self.units == 'IN': - tool_dia = float('%.3f' % self.exc_obj.tools[drill['tool']]['C']) + tool_dia = float('%.4f' % self.exc_obj.tools[drill['tool']]['C']) else: tool_dia = float('%.2f' % self.exc_obj.tools[drill['tool']]['C']) @@ -1238,7 +1238,7 @@ class FlatCAMExcEditor(QtCore.QObject): # but use the real order found in the exc_obj.tools for k, v in self.exc_obj.tools.items(): if self.units == 'IN': - tool_dia = float('%.3f' % v['C']) + tool_dia = float('%.4f' % v['C']) else: tool_dia = float('%.2f' % v['C']) self.tool2tooldia[int(k)] = tool_dia @@ -1324,7 +1324,7 @@ class FlatCAMExcEditor(QtCore.QObject): if self.units == 'MM': dia = QtWidgets.QTableWidgetItem('%.2f' % self.olddia_newdia[tool_no]) else: - dia = QtWidgets.QTableWidgetItem('%.3f' % self.olddia_newdia[tool_no]) + dia = QtWidgets.QTableWidgetItem('%.4f' % self.olddia_newdia[tool_no]) dia.setFlags(QtCore.Qt.ItemIsEnabled) diff --git a/flatcamEditors/FlatCAMGeoEditor.py b/flatcamEditors/FlatCAMGeoEditor.py index bec802a1..aef068c6 100644 --- a/flatcamEditors/FlatCAMGeoEditor.py +++ b/flatcamEditors/FlatCAMGeoEditor.py @@ -3059,8 +3059,11 @@ class FlatCAMGeoEditor(QtCore.QObject): val = float(self.app.ui.grid_gap_x_entry.get_value()) except ValueError: return + + units = self.app.ui.general_defaults_form.general_app_group.units_radio.get_value().upper() + dec = 6 if units == 'IN' else 4 if self.app.ui.grid_gap_link_cb.isChecked(): - self.app.ui.grid_gap_y_entry.set_value(val) + self.app.ui.grid_gap_y_entry.set_value(val, decimals=dec) self.app.ui.grid_gap_x_entry.setValidator(QtGui.QDoubleValidator()) self.app.ui.grid_gap_x_entry.textChanged.connect( diff --git a/flatcamGUI/FlatCAMGUI.py b/flatcamGUI/FlatCAMGUI.py index 580b2d72..5fd94b51 100644 --- a/flatcamGUI/FlatCAMGUI.py +++ b/flatcamGUI/FlatCAMGUI.py @@ -4096,7 +4096,7 @@ class GerberOptPrefGroupUI(OptionsGroupUI): self.combine_passes_cb.setToolTip( _("Combine all passes into one object") ) - grid0.addWidget(self.combine_passes_cb, 4, 0) + grid0.addWidget(self.combine_passes_cb, 4, 0, 1, 2) # ## Clear non-copper regions self.clearcopper_label = QtWidgets.QLabel(_("Clear non-copper:")) @@ -4468,8 +4468,8 @@ class ExcellonGenPrefGroupUI(OptionsGroupUI): hlay2.addWidget(self.excellon_format_lower_mm_entry, QtCore.Qt.AlignLeft) hlay2.addStretch() - hlay3 = QtWidgets.QHBoxLayout() - self.layout.addLayout(hlay3) + grid2 = QtWidgets.QGridLayout() + self.layout.addLayout(grid2) self.excellon_zeros_label = QtWidgets.QLabel(_('Default Zeros:')) self.excellon_zeros_label.setAlignment(QtCore.Qt.AlignLeft) @@ -4480,7 +4480,7 @@ class ExcellonGenPrefGroupUI(OptionsGroupUI): "If TZ is checked then Trailing Zeros are kept\n" "and Leading Zeros are removed.") ) - hlay3.addWidget(self.excellon_zeros_label) + grid2.addWidget(self.excellon_zeros_label, 0, 0) self.excellon_zeros_radio = RadioSet([{'label': 'LZ', 'value': 'L'}, {'label': 'TZ', 'value': 'T'}]) @@ -4493,11 +4493,7 @@ class ExcellonGenPrefGroupUI(OptionsGroupUI): "If TZ is checked then Trailing Zeros are kept\n" "and Leading Zeros are removed.") ) - hlay3.addStretch() - hlay3.addWidget(self.excellon_zeros_radio, QtCore.Qt.AlignRight) - - hlay4 = QtWidgets.QHBoxLayout() - self.layout.addLayout(hlay4) + grid2.addWidget(self.excellon_zeros_radio, 0, 1) self.excellon_units_label = QtWidgets.QLabel(_('Default Units:')) self.excellon_units_label.setAlignment(QtCore.Qt.AlignLeft) @@ -4508,7 +4504,7 @@ class ExcellonGenPrefGroupUI(OptionsGroupUI): "Some Excellon files don't have an header\n" "therefore this parameter will be used.") ) - hlay4.addWidget(self.excellon_units_label) + grid2.addWidget(self.excellon_units_label, 1, 0) self.excellon_units_radio = RadioSet([{'label': 'INCH', 'value': 'INCH'}, {'label': 'MM', 'value': 'METRIC'}]) @@ -4517,27 +4513,14 @@ class ExcellonGenPrefGroupUI(OptionsGroupUI): "Some Excellon files don't have an header\n" "therefore this parameter will be used.") ) - hlay4.addStretch() - hlay4.addWidget(self.excellon_units_radio, QtCore.Qt.AlignRight) + grid2.addWidget(self.excellon_units_radio, 1, 1) - hlay5 = QtWidgets.QVBoxLayout() - self.layout.addLayout(hlay5) - - self.empty_label = QtWidgets.QLabel("") - hlay5.addWidget(self.empty_label) - - hlay6 = QtWidgets.QVBoxLayout() - self.layout.addLayout(hlay6) + grid2.addWidget(QtWidgets.QLabel(""), 2, 0) self.excellon_general_label = QtWidgets.QLabel(_("Excellon Optimization:")) - hlay6.addWidget(self.excellon_general_label) - - # Create a form layout for the Excellon general settings - form_box_excellon = QtWidgets.QFormLayout() - hlay6.addLayout(form_box_excellon) + grid2.addWidget(self.excellon_general_label, 3, 0, 1, 2) self.excellon_optimization_label = QtWidgets.QLabel(_('Algorithm: ')) - self.excellon_optimization_label.setAlignment(QtCore.Qt.AlignLeft) self.excellon_optimization_label.setToolTip( _("This sets the optimization type for the Excellon drill path.\n" "If MH is checked then Google OR-Tools algorithm with MetaHeuristic\n" @@ -4548,6 +4531,7 @@ class ExcellonGenPrefGroupUI(OptionsGroupUI): "If DISABLED, then FlatCAM works in 32bit mode and it uses \n" "Travelling Salesman algorithm for path optimization.") ) + grid2.addWidget(self.excellon_optimization_label, 4, 0) self.excellon_optimization_radio = RadioSet([{'label': 'MH', 'value': 'M'}, {'label': 'Basic', 'value': 'B'}]) @@ -4561,8 +4545,7 @@ class ExcellonGenPrefGroupUI(OptionsGroupUI): "If DISABLED, then FlatCAM works in 32bit mode and it uses \n" "Travelling Salesman algorithm for path optimization.") ) - - form_box_excellon.addRow(self.excellon_optimization_label, self.excellon_optimization_radio) + grid2.addWidget(self.excellon_optimization_radio, 4, 1) self.optimization_time_label = QtWidgets.QLabel(_('Optimization Time: ')) self.optimization_time_label.setAlignment(QtCore.Qt.AlignLeft) @@ -4573,10 +4556,11 @@ class ExcellonGenPrefGroupUI(OptionsGroupUI): "In seconds.") ) + grid2.addWidget(self.optimization_time_label, 5, 0) self.optimization_time_entry = IntEntry() self.optimization_time_entry.setValidator(QtGui.QIntValidator(0, 999)) - form_box_excellon.addRow(self.optimization_time_label, self.optimization_time_entry) + grid2.addWidget(self.optimization_time_entry, 5, 1) current_platform = platform.architecture()[0] if current_platform == '64bit': @@ -4744,25 +4728,23 @@ class ExcellonOptPrefGroupUI(OptionsGroupUI): self.mill_hole_label.setToolTip( _("Create Geometry for milling holes.") ) - self.layout.addWidget(self.mill_hole_label) + grid2.addWidget(excellon_gcode_type_label, 11, 0, 1, 2) - grid3 = QtWidgets.QGridLayout() - self.layout.addLayout(grid3) tdlabel = QtWidgets.QLabel(_('Drill Tool dia:')) tdlabel.setToolTip( _("Diameter of the cutting tool.") ) - grid3.addWidget(tdlabel, 0, 0) + grid2.addWidget(tdlabel, 12, 0) self.tooldia_entry = LengthEntry() - grid3.addWidget(self.tooldia_entry, 0, 1) + grid2.addWidget(self.tooldia_entry, 12, 1) stdlabel = QtWidgets.QLabel(_('Slot Tool dia:')) stdlabel.setToolTip( _("Diameter of the cutting tool\n" "when milling slots.") ) - grid3.addWidget(stdlabel, 1, 0) + grid2.addWidget(stdlabel, 13, 0) self.slot_tooldia_entry = LengthEntry() - grid3.addWidget(self.slot_tooldia_entry, 1, 1) + grid2.addWidget(self.slot_tooldia_entry, 13, 1) grid4 = QtWidgets.QGridLayout() self.layout.addLayout(grid4) @@ -5162,6 +5144,7 @@ class GeometryGenPrefGroupUI(OptionsGroupUI): grid0 = QtWidgets.QGridLayout() self.layout.addLayout(grid0) + # Number of circle steps for circular aperture linear approximation self.circle_steps_label = QtWidgets.QLabel(_("Circle Steps:")) self.circle_steps_label.setToolTip( @@ -5173,21 +5156,17 @@ class GeometryGenPrefGroupUI(OptionsGroupUI): grid0.addWidget(self.circle_steps_entry, 1, 1) # Tools - self.tools_label = QtWidgets.QLabel(_("Tools")) - self.layout.addWidget(self.tools_label) - - grid0_b = QtWidgets.QGridLayout() - self.layout.addLayout(grid0_b) + self.tools_label = QtWidgets.QLabel(_("Tools:")) + grid0.addWidget(self.tools_label, 2, 0, 1, 2) # Tooldia - tdlabel = QtWidgets.QLabel(_('Tool dia: ')) + tdlabel = QtWidgets.QLabel(_('Tool dia:')) tdlabel.setToolTip( - _("The diameter of the cutting\n" - "tool..") + _("Diameters of the cutting tools, separated by ','") ) - grid0_b.addWidget(tdlabel, 0, 0) - self.cnctooldia_entry = LengthEntry() - grid0_b.addWidget(self.cnctooldia_entry, 0, 1) + grid0.addWidget(tdlabel, 3, 0) + self.cnctooldia_entry = FCEntry() + grid0.addWidget(self.cnctooldia_entry, 3, 1) self.layout.addStretch() diff --git a/flatcamGUI/GUIElements.py b/flatcamGUI/GUIElements.py index 780c165d..d39206da 100644 --- a/flatcamGUI/GUIElements.py +++ b/flatcamGUI/GUIElements.py @@ -390,12 +390,13 @@ class FCEntry2(FCEntry): def on_edit_finished(self): self.clearFocus() - def set_value(self, val): + def set_value(self, val, decimals=4): try: fval = float(val) except ValueError: return - self.setText('%.4f' % fval) + + self.setText('%.*f' % (decimals, fval)) class EvalEntry(QtWidgets.QLineEdit): diff --git a/flatcamParsers/ParseDXF.py b/flatcamParsers/ParseDXF.py index 88326afe..7f295632 100644 --- a/flatcamParsers/ParseDXF.py +++ b/flatcamParsers/ParseDXF.py @@ -91,7 +91,7 @@ def dxfarc2shapely(arc, n_points=100): # angle += step_angle # # - # log.debug("X = %.3f, Y = %.3f, Radius = %.3f, start_angle = %.1f, stop_angle = %.1f, step_angle = %.3f, dir=%s" % + # log.debug("X = %.4f, Y = %.4f, Radius = %.4f, start_angle = %.1f, stop_angle = %.1f, step_angle = %.4f, dir=%s" % # (center_x, center_y, radius, start_angle, end_angle, step_angle, dir)) # # geo = LineString(point_list) @@ -142,7 +142,7 @@ def dxfarc2shapely(arc, n_points=100): y = center_y + radius * math.sin(math.radians(- end_angle)) point_list.append((x, y)) - # log.debug("X = %.3f, Y = %.3f, Radius = %.3f, start_angle = %.1f, stop_angle = %.1f, step_angle = %.3f" % + # log.debug("X = %.4f, Y = %.4f, Radius = %.4f, start_angle = %.1f, stop_angle = %.1f, step_angle = %.4f" % # (center_x, center_y, radius, start_angle, end_angle, step_angle)) geo = LineString(point_list) diff --git a/flatcamTools/ToolNonCopperClear.py b/flatcamTools/ToolNonCopperClear.py index 52c847ab..6b22f7cb 100644 --- a/flatcamTools/ToolNonCopperClear.py +++ b/flatcamTools/ToolNonCopperClear.py @@ -404,7 +404,7 @@ class NonCopperClear(FlatCAMTool, Gerber): if self.units == 'MM': dia = QtWidgets.QTableWidgetItem('%.2f' % tooluid_value['tooldia']) else: - dia = QtWidgets.QTableWidgetItem('%.3f' % tooluid_value['tooldia']) + dia = QtWidgets.QTableWidgetItem('%.4f' % tooluid_value['tooldia']) dia.setFlags(QtCore.Qt.ItemIsEnabled) diff --git a/flatcamTools/ToolPaint.py b/flatcamTools/ToolPaint.py index 00ec1dd5..8e01e41b 100644 --- a/flatcamTools/ToolPaint.py +++ b/flatcamTools/ToolPaint.py @@ -468,7 +468,7 @@ class ToolPaint(FlatCAMTool, Gerber): if self.units == 'MM': dia = QtWidgets.QTableWidgetItem('%.2f' % tooluid_value['tooldia']) else: - dia = QtWidgets.QTableWidgetItem('%.3f' % tooluid_value['tooldia']) + dia = QtWidgets.QTableWidgetItem('%.4f' % tooluid_value['tooldia']) dia.setFlags(QtCore.Qt.ItemIsEnabled) diff --git a/flatcamTools/ToolSolderPaste.py b/flatcamTools/ToolSolderPaste.py index 47b728f6..6be3bfd4 100644 --- a/flatcamTools/ToolSolderPaste.py +++ b/flatcamTools/ToolSolderPaste.py @@ -548,7 +548,7 @@ class SolderPaste(FlatCAMTool): if self.units == 'MM': dia = QtWidgets.QTableWidgetItem('%.2f' % tooluid_value['tooldia']) else: - dia = QtWidgets.QTableWidgetItem('%.3f' % tooluid_value['tooldia']) + dia = QtWidgets.QTableWidgetItem('%.4f' % tooluid_value['tooldia']) dia.setFlags(QtCore.Qt.ItemIsEnabled) diff --git a/locale/de/LC_MESSAGES/strings.mo b/locale/de/LC_MESSAGES/strings.mo index c1c748afb1edaca87a26db90adab5ee80c8647f0..b37d3e32a6a42b52342f8e142fa18db9a98757ea 100644 GIT binary patch delta 39360 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 N=G^f*iZ98c{{!B)gR}qu delta 39490 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 diff --git a/locale/de/LC_MESSAGES/strings.po b/locale/de/LC_MESSAGES/strings.po index f22a78bd..01fb10b2 100644 --- a/locale/de/LC_MESSAGES/strings.po +++ b/locale/de/LC_MESSAGES/strings.po @@ -1,8 +1,8 @@ msgid "" msgstr "" "Project-Id-Version: \n" -"POT-Creation-Date: 2019-06-20 19:32+0300\n" -"PO-Revision-Date: 2019-06-20 19:33+0300\n" +"POT-Creation-Date: 2019-06-22 16:41+0300\n" +"PO-Revision-Date: 2019-06-22 16:41+0300\n" "Last-Translator: \n" "Language-Team: \n" "Language: de\n" @@ -64,17 +64,17 @@ msgstr "Möchten Sie das bearbeitete Objekt speichern?" msgid "Close Editor" msgstr "Editor schließen" -#: FlatCAMApp.py:2311 FlatCAMApp.py:3403 FlatCAMApp.py:5887 +#: FlatCAMApp.py:2311 FlatCAMApp.py:3403 FlatCAMApp.py:5908 #: FlatCAMTranslation.py:89 flatcamGUI/FlatCAMGUI.py:3730 msgid "Yes" msgstr "Ja" -#: FlatCAMApp.py:2312 FlatCAMApp.py:3404 FlatCAMApp.py:5888 +#: FlatCAMApp.py:2312 FlatCAMApp.py:3404 FlatCAMApp.py:5909 #: FlatCAMTranslation.py:90 flatcamGUI/FlatCAMGUI.py:3731 msgid "No" msgstr "Nein" -#: FlatCAMApp.py:2313 FlatCAMApp.py:3405 FlatCAMApp.py:3737 FlatCAMApp.py:5889 +#: FlatCAMApp.py:2313 FlatCAMApp.py:3405 FlatCAMApp.py:3754 FlatCAMApp.py:5910 msgid "Cancel" msgstr "Kündigen" @@ -221,7 +221,7 @@ msgstr "" "In FlatCAM wurden Dateien / Objekte geändert.\n" "Möchten Sie das Projekt speichern?" -#: FlatCAMApp.py:3401 FlatCAMApp.py:5885 +#: FlatCAMApp.py:3401 FlatCAMApp.py:5906 msgid "Save changes" msgstr "Änderungen speichern" @@ -274,42 +274,42 @@ msgstr "[success] Ein Geometrieobjekt wurde in den MultiGeo-Typ konvertiert." msgid "[success] A Geometry object was converted to SingleGeo type." msgstr "[success] Ein Geometrieobjekt wurde in den SingleGeo-Typ konvertiert." -#: FlatCAMApp.py:3736 FlatCAMApp.py:4572 FlatCAMApp.py:6160 FlatCAMApp.py:6171 -#: FlatCAMApp.py:6411 FlatCAMApp.py:6421 +#: FlatCAMApp.py:3753 FlatCAMApp.py:4593 FlatCAMApp.py:6181 FlatCAMApp.py:6192 +#: FlatCAMApp.py:6432 FlatCAMApp.py:6442 msgid "Ok" msgstr "Ok" -#: FlatCAMApp.py:3778 +#: FlatCAMApp.py:3799 #, python-format msgid "[success] Converted units to %s" msgstr "[success] Einheiten in umgerechnet %s" -#: FlatCAMApp.py:3789 +#: FlatCAMApp.py:3810 msgid "[WARNING_NOTCL] Units conversion cancelled." msgstr "[WARNING_NOTCL] Einheitenumrechnung abgebrochen." -#: FlatCAMApp.py:4441 +#: FlatCAMApp.py:4462 msgid "Open file" msgstr "Datei öffnen" -#: FlatCAMApp.py:4472 FlatCAMApp.py:4477 +#: FlatCAMApp.py:4493 FlatCAMApp.py:4498 msgid "Export G-Code ..." msgstr "G-Code exportieren ..." -#: FlatCAMApp.py:4480 +#: FlatCAMApp.py:4501 msgid "[WARNING_NOTCL] Export Code cancelled." msgstr "[WARNING_NOTCL] Exportcode wurde abgebrochen." -#: FlatCAMApp.py:4490 +#: FlatCAMApp.py:4511 msgid "[WARNING] No such file or directory" msgstr "[WARNING] Keine solche Datei oder Ordner" -#: FlatCAMApp.py:4497 +#: FlatCAMApp.py:4518 #, python-format msgid "Saved to: %s" msgstr "Gespeichert in: %s" -#: FlatCAMApp.py:4560 FlatCAMApp.py:4593 FlatCAMApp.py:4604 FlatCAMApp.py:4615 +#: FlatCAMApp.py:4581 FlatCAMApp.py:4614 FlatCAMApp.py:4625 FlatCAMApp.py:4636 #: flatcamTools/ToolNonCopperClear.py:489 flatcamTools/ToolSolderPaste.py:765 msgid "" "[WARNING_NOTCL] Please enter a tool diameter with non-zero value, in Float " @@ -318,12 +318,12 @@ msgstr "" "[WARNING_NOTCL] Bitte geben Sie einen Werkzeugdurchmesser mit einem Wert " "ungleich Null im Float-Format ein." -#: FlatCAMApp.py:4565 FlatCAMApp.py:4598 FlatCAMApp.py:4609 FlatCAMApp.py:4620 +#: FlatCAMApp.py:4586 FlatCAMApp.py:4619 FlatCAMApp.py:4630 FlatCAMApp.py:4641 #: flatcamGUI/FlatCAMGUI.py:3001 msgid "[WARNING_NOTCL] Adding Tool cancelled ..." msgstr "[WARNING_NOTCL] Addierwerkzeug abgebrochen ..." -#: FlatCAMApp.py:4568 +#: FlatCAMApp.py:4589 msgid "" "Adding Tool works only when Advanced is checked.\n" "Go to Preferences -> General - Show Advanced Options." @@ -332,38 +332,38 @@ msgstr "" "ist.\n" "Gehen Sie zu Einstellungen -> Allgemein - Erweiterte Optionen anzeigen." -#: FlatCAMApp.py:4681 +#: FlatCAMApp.py:4702 msgid "Object(s) deleted ..." msgstr "Objekt (e) gelöscht ..." -#: FlatCAMApp.py:4685 +#: FlatCAMApp.py:4706 msgid "Failed. No object(s) selected..." msgstr "Gescheitert. Kein Objekt ausgewählt ..." -#: FlatCAMApp.py:4687 +#: FlatCAMApp.py:4708 msgid "Save the work in Editor and try again ..." msgstr "Speichern Sie die Arbeit im Editor und versuchen Sie es erneut ..." -#: FlatCAMApp.py:4700 +#: FlatCAMApp.py:4721 msgid "Click to set the origin ..." msgstr "Klicken Sie hier, um den Ursprung festzulegen ..." -#: FlatCAMApp.py:4712 +#: FlatCAMApp.py:4733 msgid "Jump to ..." msgstr "Springen zu ..." -#: FlatCAMApp.py:4713 +#: FlatCAMApp.py:4734 msgid "Enter the coordinates in format X,Y:" msgstr "Geben Sie die Koordinaten im Format X, Y ein:" -#: FlatCAMApp.py:4720 +#: FlatCAMApp.py:4741 msgid "Wrong coordinates. Enter coordinates in format: X,Y" msgstr "Falsche Koordinaten. Koordinaten im Format eingeben: X, Y" -#: FlatCAMApp.py:4738 flatcamEditors/FlatCAMExcEditor.py:2320 +#: FlatCAMApp.py:4759 flatcamEditors/FlatCAMExcEditor.py:2320 #: flatcamEditors/FlatCAMExcEditor.py:2327 -#: flatcamEditors/FlatCAMGeoEditor.py:3645 -#: flatcamEditors/FlatCAMGeoEditor.py:3659 +#: flatcamEditors/FlatCAMGeoEditor.py:3648 +#: flatcamEditors/FlatCAMGeoEditor.py:3662 #: flatcamEditors/FlatCAMGrbEditor.py:1040 #: flatcamEditors/FlatCAMGrbEditor.py:1141 #: flatcamEditors/FlatCAMGrbEditor.py:1409 @@ -374,91 +374,91 @@ msgstr "Falsche Koordinaten. Koordinaten im Format eingeben: X, Y" msgid "[success] Done." msgstr "[success] Erledigt." -#: FlatCAMApp.py:4870 FlatCAMApp.py:4937 +#: FlatCAMApp.py:4891 FlatCAMApp.py:4958 msgid "[WARNING_NOTCL] No object is selected. Select an object and try again." msgstr "" "[WARNING_NOTCL] Es ist kein Objekt ausgewählt. Wählen Sie ein Objekt und " "versuchen Sie es erneut." -#: FlatCAMApp.py:4978 +#: FlatCAMApp.py:4999 msgid "[success] Origin set ..." msgstr "[success] Ursprung gesetzt ..." -#: FlatCAMApp.py:4998 +#: FlatCAMApp.py:5019 msgid "Preferences" msgstr "Einstellungen" -#: FlatCAMApp.py:5018 +#: FlatCAMApp.py:5039 msgid "[WARNING_NOTCL] No object selected to Flip on Y axis." msgstr "[WARNING_NOTCL] Kein Objekt ausgewählt, um auf der Y-Achse zu kippen." -#: FlatCAMApp.py:5043 +#: FlatCAMApp.py:5064 msgid "[success] Flip on Y axis done." msgstr "[success] Y-Achse umdrehen fertig." -#: FlatCAMApp.py:5045 FlatCAMApp.py:5085 +#: FlatCAMApp.py:5066 FlatCAMApp.py:5106 #: flatcamEditors/FlatCAMGeoEditor.py:1355 #: flatcamEditors/FlatCAMGrbEditor.py:5343 flatcamTools/ToolTransform.py:748 #, python-format msgid "[ERROR_NOTCL] Due of %s, Flip action was not executed." msgstr "[ERROR_NOTCL] Aufgrund von %s wurde die Flip-Aktion nicht ausgeführt." -#: FlatCAMApp.py:5058 +#: FlatCAMApp.py:5079 msgid "[WARNING_NOTCL] No object selected to Flip on X axis." msgstr "[WARNING_NOTCL] Kein Objekt ausgewählt, um auf der X-Achse zu kippen." -#: FlatCAMApp.py:5083 +#: FlatCAMApp.py:5104 msgid "[success] Flip on X axis done." msgstr "[success] Dreh auf der X-Achse fertig." -#: FlatCAMApp.py:5098 +#: FlatCAMApp.py:5119 msgid "[WARNING_NOTCL] No object selected to Rotate." msgstr "[WARNING_NOTCL] Kein Objekt zum Drehen ausgewählt." -#: FlatCAMApp.py:5101 FlatCAMApp.py:5146 FlatCAMApp.py:5177 +#: FlatCAMApp.py:5122 FlatCAMApp.py:5167 FlatCAMApp.py:5198 msgid "Transform" msgstr "Verwandeln" -#: FlatCAMApp.py:5101 FlatCAMApp.py:5146 FlatCAMApp.py:5177 +#: FlatCAMApp.py:5122 FlatCAMApp.py:5167 FlatCAMApp.py:5198 msgid "Enter the Angle value:" msgstr "Geben Sie den Winkelwert ein:" -#: FlatCAMApp.py:5131 +#: FlatCAMApp.py:5152 msgid "[success] Rotation done." msgstr "[success] Rotation erfolgt." -#: FlatCAMApp.py:5133 flatcamEditors/FlatCAMGeoEditor.py:1298 +#: FlatCAMApp.py:5154 flatcamEditors/FlatCAMGeoEditor.py:1298 #: flatcamEditors/FlatCAMGrbEditor.py:5272 flatcamTools/ToolTransform.py:677 #, python-format msgid "[ERROR_NOTCL] Due of %s, rotation movement was not executed." msgstr "" "[ERROR_NOTCL] Aufgrund von %s wurde keine Rotationsbewegung ausgeführt." -#: FlatCAMApp.py:5144 +#: FlatCAMApp.py:5165 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on X axis." msgstr "" "[WARNING_NOTCL] Kein Objekt für Neigung / Scherung auf der X-Achse " "ausgewählt." -#: FlatCAMApp.py:5165 +#: FlatCAMApp.py:5186 msgid "[success] Skew on X axis done." msgstr "[success] Neigung auf der X-Achse fertig." -#: FlatCAMApp.py:5175 +#: FlatCAMApp.py:5196 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on Y axis." msgstr "" "[WARNING_NOTCL] Kein Objekt für Neigung / Scherung auf der Y-Achse " "ausgewählt." -#: FlatCAMApp.py:5196 +#: FlatCAMApp.py:5217 msgid "[success] Skew on Y axis done." msgstr "[success] Neigung auf der Y-Achse fertig." -#: FlatCAMApp.py:5266 +#: FlatCAMApp.py:5287 msgid "Grid On/Off" msgstr "Raster ein/aus" -#: FlatCAMApp.py:5279 flatcamEditors/FlatCAMGeoEditor.py:937 +#: FlatCAMApp.py:5300 flatcamEditors/FlatCAMGeoEditor.py:937 #: flatcamEditors/FlatCAMGrbEditor.py:2381 #: flatcamEditors/FlatCAMGrbEditor.py:4861 flatcamGUI/ObjectUI.py:991 #: flatcamTools/ToolDblSided.py:160 flatcamTools/ToolDblSided.py:208 @@ -468,7 +468,7 @@ msgstr "Raster ein/aus" msgid "Add" msgstr "Hinzufügen" -#: FlatCAMApp.py:5280 FlatCAMObj.py:3276 +#: FlatCAMApp.py:5301 FlatCAMObj.py:3296 #: flatcamEditors/FlatCAMGrbEditor.py:2386 flatcamGUI/FlatCAMGUI.py:527 #: flatcamGUI/FlatCAMGUI.py:724 flatcamGUI/FlatCAMGUI.py:1616 #: flatcamGUI/FlatCAMGUI.py:1953 flatcamGUI/ObjectUI.py:1007 @@ -477,15 +477,15 @@ msgstr "Hinzufügen" msgid "Delete" msgstr "Löschen" -#: FlatCAMApp.py:5293 +#: FlatCAMApp.py:5314 msgid "New Grid ..." msgstr "Neues Raster ..." -#: FlatCAMApp.py:5294 +#: FlatCAMApp.py:5315 msgid "Enter a Grid Value:" msgstr "Geben Sie einen Rasterwert ein:" -#: FlatCAMApp.py:5302 FlatCAMApp.py:5329 +#: FlatCAMApp.py:5323 FlatCAMApp.py:5350 msgid "" "[WARNING_NOTCL] Please enter a grid value with non-zero value, in Float " "format." @@ -493,52 +493,52 @@ msgstr "" "[WARNING_NOTCL] Bitte geben Sie im Float-Format einen Rasterwert mit einem " "Wert ungleich Null ein." -#: FlatCAMApp.py:5308 +#: FlatCAMApp.py:5329 msgid "[success] New Grid added ..." msgstr "[success] Neues Netz hinzugefügt ..." -#: FlatCAMApp.py:5311 +#: FlatCAMApp.py:5332 msgid "[WARNING_NOTCL] Grid already exists ..." msgstr "[WARNING_NOTCL] Netz existiert bereits ..." -#: FlatCAMApp.py:5314 +#: FlatCAMApp.py:5335 msgid "[WARNING_NOTCL] Adding New Grid cancelled ..." msgstr "[WARNING_NOTCL] Neues Netz wurde abgebrochen ..." -#: FlatCAMApp.py:5336 +#: FlatCAMApp.py:5357 msgid "[ERROR_NOTCL] Grid Value does not exist ..." msgstr "[ERROR_NOTCL] Rasterwert existiert nicht ..." -#: FlatCAMApp.py:5339 +#: FlatCAMApp.py:5360 msgid "[success] Grid Value deleted ..." msgstr "[success] Rasterwert gelöscht ..." -#: FlatCAMApp.py:5342 +#: FlatCAMApp.py:5363 msgid "[WARNING_NOTCL] Delete Grid value cancelled ..." msgstr "[WARNING_NOTCL] Rasterwert löschen abgebrochen ..." -#: FlatCAMApp.py:5381 +#: FlatCAMApp.py:5402 msgid "[WARNING_NOTCL] No object selected to copy it's name" msgstr "[WARNING_NOTCL] Kein Objekt zum Kopieren des Namens ausgewählt" -#: FlatCAMApp.py:5385 +#: FlatCAMApp.py:5406 msgid "Name copied on clipboard ..." msgstr "Name in Zwischenablage kopiert ..." -#: FlatCAMApp.py:5427 flatcamEditors/FlatCAMGrbEditor.py:3901 +#: FlatCAMApp.py:5448 flatcamEditors/FlatCAMGrbEditor.py:3901 msgid "[success] Coordinates copied to clipboard." msgstr "[success] Koordinaten in die Zwischenablage kopiert." -#: FlatCAMApp.py:5683 FlatCAMApp.py:5686 FlatCAMApp.py:5689 FlatCAMApp.py:5692 -#: FlatCAMApp.py:5707 FlatCAMApp.py:5710 FlatCAMApp.py:5713 FlatCAMApp.py:5716 -#: FlatCAMApp.py:5756 FlatCAMApp.py:5759 FlatCAMApp.py:5762 FlatCAMApp.py:5765 +#: FlatCAMApp.py:5704 FlatCAMApp.py:5707 FlatCAMApp.py:5710 FlatCAMApp.py:5713 +#: FlatCAMApp.py:5728 FlatCAMApp.py:5731 FlatCAMApp.py:5734 FlatCAMApp.py:5737 +#: FlatCAMApp.py:5777 FlatCAMApp.py:5780 FlatCAMApp.py:5783 FlatCAMApp.py:5786 #: ObjectCollection.py:719 ObjectCollection.py:722 ObjectCollection.py:725 #: ObjectCollection.py:728 #, python-brace-format msgid "[selected]{name} selected" msgstr "[selected]{name} ausgewählt" -#: FlatCAMApp.py:5882 +#: FlatCAMApp.py:5903 msgid "" "There are files/objects opened in FlatCAM.\n" "Creating a New project will delete them.\n" @@ -548,112 +548,112 @@ msgstr "" "Wenn Sie ein neues Projekt erstellen, werden diese gelöscht.\n" "Möchten Sie das Projekt speichern?" -#: FlatCAMApp.py:5903 +#: FlatCAMApp.py:5924 msgid "[success] New Project created..." msgstr "[success] Neues Projekt erstellt ..." -#: FlatCAMApp.py:6019 FlatCAMApp.py:6022 flatcamGUI/FlatCAMGUI.py:608 +#: FlatCAMApp.py:6040 FlatCAMApp.py:6043 flatcamGUI/FlatCAMGUI.py:608 #: flatcamGUI/FlatCAMGUI.py:1832 msgid "Open Gerber" msgstr "Gerber öffnen" -#: FlatCAMApp.py:6027 +#: FlatCAMApp.py:6048 msgid "[WARNING_NOTCL] Open Gerber cancelled." msgstr "[WARNING_NOTCL] Offener Gerber abgebrochen." -#: FlatCAMApp.py:6048 FlatCAMApp.py:6051 flatcamGUI/FlatCAMGUI.py:609 +#: FlatCAMApp.py:6069 FlatCAMApp.py:6072 flatcamGUI/FlatCAMGUI.py:609 #: flatcamGUI/FlatCAMGUI.py:1833 msgid "Open Excellon" msgstr "Excellon öffnen" -#: FlatCAMApp.py:6056 +#: FlatCAMApp.py:6077 msgid "[WARNING_NOTCL] Open Excellon cancelled." msgstr "[WARNING_NOTCL] Offener Excellon abgebrochen." -#: FlatCAMApp.py:6078 FlatCAMApp.py:6081 +#: FlatCAMApp.py:6099 FlatCAMApp.py:6102 msgid "Open G-Code" msgstr "G-Code öffnen" -#: FlatCAMApp.py:6086 +#: FlatCAMApp.py:6107 msgid "[WARNING_NOTCL] Open G-Code cancelled." msgstr "[WARNING_NOTCL] Geöffneter G-Code wurde abgebrochen." -#: FlatCAMApp.py:6104 FlatCAMApp.py:6107 +#: FlatCAMApp.py:6125 FlatCAMApp.py:6128 msgid "Open Project" msgstr "Offenes Projekt" -#: FlatCAMApp.py:6115 +#: FlatCAMApp.py:6136 msgid "[WARNING_NOTCL] Open Project cancelled." msgstr "[WARNING_NOTCL] Projekt abbrechen abgebrochen." -#: FlatCAMApp.py:6134 FlatCAMApp.py:6137 +#: FlatCAMApp.py:6155 FlatCAMApp.py:6158 msgid "Open Configuration File" msgstr "Offene Einstellungsdatei" -#: FlatCAMApp.py:6141 +#: FlatCAMApp.py:6162 msgid "[WARNING_NOTCL] Open Config cancelled." msgstr "[WARNING_NOTCL] Offene Konfiguration abgebrochen." -#: FlatCAMApp.py:6156 FlatCAMApp.py:6407 FlatCAMApp.py:8560 FlatCAMApp.py:8580 -#: FlatCAMApp.py:8601 FlatCAMApp.py:8623 +#: FlatCAMApp.py:6177 FlatCAMApp.py:6428 FlatCAMApp.py:8581 FlatCAMApp.py:8601 +#: FlatCAMApp.py:8622 FlatCAMApp.py:8644 msgid "[WARNING_NOTCL] No object selected." msgstr "[WARNING_NOTCL] Kein Objekt ausgewählt" -#: FlatCAMApp.py:6157 FlatCAMApp.py:6408 +#: FlatCAMApp.py:6178 FlatCAMApp.py:6429 msgid "Please Select a Geometry object to export" msgstr "Bitte wählen Sie ein Geometrieobjekt zum Exportieren aus" -#: FlatCAMApp.py:6168 +#: FlatCAMApp.py:6189 msgid "[ERROR_NOTCL] Only Geometry, Gerber and CNCJob objects can be used." msgstr "" "[ERROR_NOTCL] Es können nur Geometrie-, Gerber- und CNCJob-Objekte verwendet " "werden." -#: FlatCAMApp.py:6181 FlatCAMApp.py:6185 +#: FlatCAMApp.py:6202 FlatCAMApp.py:6206 msgid "Export SVG" msgstr "SVG exportieren" -#: FlatCAMApp.py:6190 +#: FlatCAMApp.py:6211 msgid "[WARNING_NOTCL] Export SVG cancelled." msgstr "[WARNING_NOTCL] Export SVG abgebrochen." -#: FlatCAMApp.py:6209 +#: FlatCAMApp.py:6230 msgid "[[WARNING_NOTCL]] Data must be a 3D array with last dimension 3 or 4" msgstr "" "[WARNING_NOTCL] Daten müssen ein 3D-Array mit der letzten Dimension 3 oder 4 " "sein" -#: FlatCAMApp.py:6215 FlatCAMApp.py:6219 +#: FlatCAMApp.py:6236 FlatCAMApp.py:6240 msgid "Export PNG Image" msgstr "PNG-Bild exportieren" -#: FlatCAMApp.py:6224 +#: FlatCAMApp.py:6245 msgid "Export PNG cancelled." msgstr "Export PNG abgebrochen." -#: FlatCAMApp.py:6243 +#: FlatCAMApp.py:6264 msgid "" "[WARNING_NOTCL] No object selected. Please select an Gerber object to export." msgstr "" "[WARNING_NOTCL] Kein Objekt ausgewählt. Bitte wählen Sie ein Gerber-Objekt " "aus, das Sie exportieren möchten." -#: FlatCAMApp.py:6248 FlatCAMApp.py:6371 +#: FlatCAMApp.py:6269 FlatCAMApp.py:6392 msgid "" "[ERROR_NOTCL] Failed. Only Gerber objects can be saved as Gerber files..." msgstr "" "[ERROR_NOTCL] Fehlgeschlagen. Nur Gerber-Objekte können als Gerber-Dateien " "gespeichert werden ..." -#: FlatCAMApp.py:6260 +#: FlatCAMApp.py:6281 msgid "Save Gerber source file" msgstr "Gerber-Quelldatei speichern" -#: FlatCAMApp.py:6265 +#: FlatCAMApp.py:6286 msgid "[WARNING_NOTCL] Save Gerber source file cancelled." msgstr "[WARNING_NOTCL] Gerber Quelldatei speichern abgebrochen." -#: FlatCAMApp.py:6284 +#: FlatCAMApp.py:6305 msgid "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." @@ -661,22 +661,22 @@ msgstr "" "[WARNING_NOTCL] Kein Objekt ausgewählt Bitte wählen Sie ein Excellon-Objekt " "zum Exportieren aus." -#: FlatCAMApp.py:6289 FlatCAMApp.py:6330 +#: FlatCAMApp.py:6310 FlatCAMApp.py:6351 msgid "" "[ERROR_NOTCL] Failed. Only Excellon objects can be saved as Excellon files..." msgstr "" "[ERROR_NOTCL] Fehlgeschlagen. Nur Excellon-Objekte können als Excellon-" "Dateien gespeichert werden ..." -#: FlatCAMApp.py:6297 FlatCAMApp.py:6301 +#: FlatCAMApp.py:6318 FlatCAMApp.py:6322 msgid "Save Excellon source file" msgstr "Speichern Sie die Excellon-Quelldatei" -#: FlatCAMApp.py:6306 +#: FlatCAMApp.py:6327 msgid "[WARNING_NOTCL] Saving Excellon source file cancelled." msgstr "[WARNING_NOTCL] Speichern der Excellon-Quelldatei abgebrochen." -#: FlatCAMApp.py:6325 +#: FlatCAMApp.py:6346 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." @@ -684,70 +684,70 @@ msgstr "" "[WARNING_NOTCL] Kein Objekt ausgewählt. Bitte wählen Sie ein Excellon-Objekt " "aus, das Sie exportieren möchten." -#: FlatCAMApp.py:6338 FlatCAMApp.py:6342 +#: FlatCAMApp.py:6359 FlatCAMApp.py:6363 msgid "Export Excellon" msgstr "Excellon exportieren" -#: FlatCAMApp.py:6347 +#: FlatCAMApp.py:6368 msgid "[WARNING_NOTCL] Export Excellon cancelled." msgstr "[WARNING_NOTCL] Export Excellon wurde abgebrochen." -#: FlatCAMApp.py:6366 +#: FlatCAMApp.py:6387 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Gerber object to export." msgstr "" "[WARNING_NOTCL] Kein Objekt ausgewählt. Bitte wählen Sie ein Gerber-Objekt " "aus, das Sie exportieren möchten." -#: FlatCAMApp.py:6379 FlatCAMApp.py:6383 +#: FlatCAMApp.py:6400 FlatCAMApp.py:6404 msgid "Export Gerber" msgstr "Gerber exportieren" -#: FlatCAMApp.py:6388 +#: FlatCAMApp.py:6409 msgid "[WARNING_NOTCL] Export Gerber cancelled." msgstr "[WARNING_NOTCL] Export Gerber abgebrochen." -#: FlatCAMApp.py:6418 +#: FlatCAMApp.py:6439 msgid "[ERROR_NOTCL] Only Geometry objects can be used." msgstr "[ERROR_NOTCL] Es können nur Geometrieobjekte verwendet werden." -#: FlatCAMApp.py:6432 FlatCAMApp.py:6436 +#: FlatCAMApp.py:6453 FlatCAMApp.py:6457 msgid "Export DXF" msgstr "DXF exportieren" -#: FlatCAMApp.py:6442 +#: FlatCAMApp.py:6463 msgid "[WARNING_NOTCL] Export DXF cancelled." msgstr "[WARNING_NOTCL] Export DXF wurde abgebrochen." -#: FlatCAMApp.py:6462 FlatCAMApp.py:6465 +#: FlatCAMApp.py:6483 FlatCAMApp.py:6486 msgid "Import SVG" msgstr "SVG importieren" -#: FlatCAMApp.py:6474 +#: FlatCAMApp.py:6495 msgid "[WARNING_NOTCL] Open SVG cancelled." msgstr "[WARNING_NOTCL] Open SVG abgebrochen." -#: FlatCAMApp.py:6493 FlatCAMApp.py:6497 +#: FlatCAMApp.py:6514 FlatCAMApp.py:6518 msgid "Import DXF" msgstr "Importieren Sie DXF" -#: FlatCAMApp.py:6506 +#: FlatCAMApp.py:6527 msgid "[WARNING_NOTCL] Open DXF cancelled." msgstr "[WARNING_NOTCL] Open DXF cancelled." -#: FlatCAMApp.py:6524 +#: FlatCAMApp.py:6545 #, python-format msgid "%s" msgstr "%s" -#: FlatCAMApp.py:6544 +#: FlatCAMApp.py:6565 msgid "" "[WARNING_NOTCL] Select an Gerber or Excellon file to view it's source file." msgstr "" "[WARNING_NOTCL] Wählen Sie eine Gerber- oder Excellon-Datei aus, um die " "Quelldatei anzuzeigen." -#: FlatCAMApp.py:6551 +#: FlatCAMApp.py:6572 msgid "" "[WARNING_NOTCL] There is no selected object for which to see it's source " "file code." @@ -755,25 +755,25 @@ msgstr "" "[WARNING_NOTCL] Es gibt kein ausgewähltes Objekt, für das man seinen " "Quelldateien sehen kann." -#: FlatCAMApp.py:6559 +#: FlatCAMApp.py:6580 msgid "Source Editor" msgstr "Quelleditor" -#: FlatCAMApp.py:6569 +#: FlatCAMApp.py:6590 #, python-format msgid "[ERROR]App.on_view_source() -->%s" msgstr "[ERROR]App.on_view_source() -->%s" -#: FlatCAMApp.py:6581 FlatCAMApp.py:7723 FlatCAMObj.py:5560 +#: FlatCAMApp.py:6602 FlatCAMApp.py:7744 FlatCAMObj.py:5581 #: flatcamTools/ToolSolderPaste.py:1278 msgid "Code Editor" msgstr "Code-Editor" -#: FlatCAMApp.py:6593 +#: FlatCAMApp.py:6614 msgid "Script Editor" msgstr "Script Editor" -#: FlatCAMApp.py:6596 +#: FlatCAMApp.py:6617 msgid "" "#\n" "# CREATE A NEW FLATCAM TCL SCRIPT\n" @@ -817,98 +817,98 @@ msgstr "" "#\n" "\n" -#: FlatCAMApp.py:6619 FlatCAMApp.py:6622 +#: FlatCAMApp.py:6640 FlatCAMApp.py:6643 msgid "Open TCL script" msgstr "Öffnen Sie das TCL-Skript" -#: FlatCAMApp.py:6630 +#: FlatCAMApp.py:6651 msgid "[WARNING_NOTCL] Open TCL script cancelled." msgstr "[WARNING_NOTCL] Open TCL-Skript wurde abgebrochen." -#: FlatCAMApp.py:6642 +#: FlatCAMApp.py:6663 #, python-format msgid "[ERROR]App.on_fileopenscript() -->%s" msgstr "[ERROR]App.on_fileopenscript() -->%s" -#: FlatCAMApp.py:6668 FlatCAMApp.py:6671 +#: FlatCAMApp.py:6689 FlatCAMApp.py:6692 msgid "Run TCL script" msgstr "Führen Sie das TCL-Skript aus" -#: FlatCAMApp.py:6679 +#: FlatCAMApp.py:6700 msgid "[WARNING_NOTCL] Run TCL script cancelled." msgstr "[WARNING_NOTCL] Das TCL-Skript wird abgebrochen." -#: FlatCAMApp.py:6729 FlatCAMApp.py:6733 +#: FlatCAMApp.py:6750 FlatCAMApp.py:6754 msgid "Save Project As ..." msgstr "Projekt speichern als ..." -#: FlatCAMApp.py:6730 +#: FlatCAMApp.py:6751 #, python-brace-format msgid "{l_save}/Project_{date}" msgstr "{l_save}/Projekt_{date}" -#: FlatCAMApp.py:6738 +#: FlatCAMApp.py:6759 msgid "[WARNING_NOTCL] Save Project cancelled." msgstr "[WARNING_NOTCL] Projekt speichern abgebrochen" -#: FlatCAMApp.py:6782 +#: FlatCAMApp.py:6803 msgid "Exporting SVG" msgstr "SVG exportieren" -#: FlatCAMApp.py:6816 FlatCAMApp.py:6922 FlatCAMApp.py:7037 +#: FlatCAMApp.py:6837 FlatCAMApp.py:6943 FlatCAMApp.py:7058 #, python-format msgid "[success] SVG file exported to %s" msgstr "[success] SVG-Datei in exportiert %s" -#: FlatCAMApp.py:6847 FlatCAMApp.py:6968 +#: FlatCAMApp.py:6868 FlatCAMApp.py:6989 #, python-format msgid "[WARNING_NOTCL] No object Box. Using instead %s" msgstr "[WARNING_NOTCL] Kein Objektfeld. Stattdessen verwenden %s" -#: FlatCAMApp.py:6925 FlatCAMApp.py:7040 +#: FlatCAMApp.py:6946 FlatCAMApp.py:7061 msgid "Generating Film ... Please wait." msgstr "Film wird erstellt ... Bitte warten Sie." -#: FlatCAMApp.py:7188 +#: FlatCAMApp.py:7209 #, python-format msgid "[success] Excellon file exported to %s" msgstr "[success] Excellon-Datei nach exportiert %s" -#: FlatCAMApp.py:7195 +#: FlatCAMApp.py:7216 msgid "Exporting Excellon" msgstr "Excellon exportieren" -#: FlatCAMApp.py:7200 FlatCAMApp.py:7207 +#: FlatCAMApp.py:7221 FlatCAMApp.py:7228 msgid "[ERROR_NOTCL] Could not export Excellon file." msgstr "[ERROR_NOTCL] Excellon-Datei konnte nicht exportiert werden." -#: FlatCAMApp.py:7305 +#: FlatCAMApp.py:7326 #, python-format msgid "[success] Gerber file exported to %s" msgstr "[success] Gerber-Datei in exportiert %s" -#: FlatCAMApp.py:7312 +#: FlatCAMApp.py:7333 msgid "Exporting Gerber" msgstr "Gerber exportieren" -#: FlatCAMApp.py:7317 FlatCAMApp.py:7324 +#: FlatCAMApp.py:7338 FlatCAMApp.py:7345 msgid "[ERROR_NOTCL] Could not export Gerber file." msgstr "[ERROR_NOTCL] Gerber-Datei konnte nicht exportiert werden." -#: FlatCAMApp.py:7364 +#: FlatCAMApp.py:7385 #, python-format msgid "[success] DXF file exported to %s" msgstr "[success] DXF-Datei in exportiert %s" -#: FlatCAMApp.py:7370 +#: FlatCAMApp.py:7391 msgid "Exporting DXF" msgstr "DXF exportieren" -#: FlatCAMApp.py:7375 FlatCAMApp.py:7382 +#: FlatCAMApp.py:7396 FlatCAMApp.py:7403 msgid "[[WARNING_NOTCL]] Could not export DXF file." msgstr "[WARNING_NOTCL] DXF-Datei konnte nicht exportiert werden." -#: FlatCAMApp.py:7402 FlatCAMApp.py:7444 FlatCAMApp.py:7488 +#: FlatCAMApp.py:7423 FlatCAMApp.py:7465 FlatCAMApp.py:7509 msgid "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" @@ -916,99 +916,99 @@ msgstr "" "[ERROR_NOTCL] Nicht unterstützte Art wird als Parameter ausgewählt. Nur " "Geometrie und Gerber werden unterstützt" -#: FlatCAMApp.py:7412 +#: FlatCAMApp.py:7433 msgid "Importing SVG" msgstr "SVG importieren" -#: FlatCAMApp.py:7423 FlatCAMApp.py:7465 FlatCAMApp.py:7508 FlatCAMApp.py:7585 -#: FlatCAMApp.py:7646 FlatCAMApp.py:7709 flatcamTools/ToolPDF.py:212 +#: FlatCAMApp.py:7444 FlatCAMApp.py:7486 FlatCAMApp.py:7529 FlatCAMApp.py:7606 +#: FlatCAMApp.py:7667 FlatCAMApp.py:7730 flatcamTools/ToolPDF.py:212 #, python-format msgid "[success] Opened: %s" msgstr "[success] Geöffnet: %s" -#: FlatCAMApp.py:7454 +#: FlatCAMApp.py:7475 msgid "Importing DXF" msgstr "DXF importieren" -#: FlatCAMApp.py:7496 +#: FlatCAMApp.py:7517 msgid "Importing Image" msgstr "Bild importieren" -#: FlatCAMApp.py:7537 FlatCAMApp.py:7539 +#: FlatCAMApp.py:7558 FlatCAMApp.py:7560 #, python-format msgid "[ERROR_NOTCL] Failed to open file: %s" msgstr "[ERROR_NOTCL] Datei konnte nicht geöffnet werden: %s" -#: FlatCAMApp.py:7542 +#: FlatCAMApp.py:7563 #, python-brace-format msgid "[ERROR_NOTCL] Failed to parse file: {name}. {error}" msgstr "[ERROR_NOTCL] Fehler beim Parsen der Datei: {name}. {error}" -#: FlatCAMApp.py:7549 FlatCAMObj.py:4239 +#: FlatCAMApp.py:7570 FlatCAMObj.py:4259 #: flatcamEditors/FlatCAMExcEditor.py:2077 msgid "[ERROR] An internal error has ocurred. See shell.\n" msgstr "[ERROR] Ein interner Fehler ist aufgetreten. Siehe Shell.\n" -#: FlatCAMApp.py:7558 +#: FlatCAMApp.py:7579 msgid "" "[ERROR_NOTCL] Object is not Gerber file or empty. Aborting object creation." msgstr "" "[ERROR_NOTCL] Objekt ist keine Gerber-Datei oder leer. Abbruch der " "Objekterstellung" -#: FlatCAMApp.py:7566 +#: FlatCAMApp.py:7587 msgid "Opening Gerber" msgstr "Gerber öffnen" -#: FlatCAMApp.py:7576 +#: FlatCAMApp.py:7597 msgid "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." msgstr "" "[ERROR_NOTCL] Gerber öffnen ist fehlgeschlagen. Wahrscheinlich keine Gerber-" "Datei." -#: FlatCAMApp.py:7609 flatcamTools/ToolPcbWizard.py:421 +#: FlatCAMApp.py:7630 flatcamTools/ToolPcbWizard.py:421 msgid "[ERROR_NOTCL] This is not Excellon file." msgstr "[ERROR_NOTCL] Dies ist keine Excellon-Datei." -#: FlatCAMApp.py:7612 +#: FlatCAMApp.py:7633 #, python-format msgid "[ERROR_NOTCL] Cannot open file: %s" msgstr "[ERROR_NOTCL] Kann Datei nicht öffnen: %s" -#: FlatCAMApp.py:7617 flatcamTools/ToolPcbWizard.py:429 +#: FlatCAMApp.py:7638 flatcamTools/ToolPcbWizard.py:429 msgid "[ERROR_NOTCL] An internal error has occurred. See shell.\n" msgstr "[ERROR_NOTCL] Ein interner Fehler ist aufgetreten. Siehe Shell.\n" -#: FlatCAMApp.py:7630 flatcamTools/ToolPDF.py:262 +#: FlatCAMApp.py:7651 flatcamTools/ToolPDF.py:262 #: flatcamTools/ToolPcbWizard.py:442 #, python-format msgid "[ERROR_NOTCL] No geometry found in file: %s" msgstr "[ERROR_NOTCL] Keine Geometrie in der Datei gefunden: %s" -#: FlatCAMApp.py:7633 +#: FlatCAMApp.py:7654 msgid "Opening Excellon." msgstr "Eröffnung Excellon." -#: FlatCAMApp.py:7639 +#: FlatCAMApp.py:7660 msgid "[ERROR_NOTCL] Open Excellon file failed. Probable not an Excellon file." msgstr "" "[ERROR_NOTCL] Die Excellon-Datei konnte nicht geöffnet werden. " "Wahrscheinlich keine Excellon-Datei." -#: FlatCAMApp.py:7676 +#: FlatCAMApp.py:7697 #, python-format msgid "[ERROR_NOTCL] Failed to open %s" msgstr "[ERROR_NOTCL] Gescheitert zu öffnen %s" -#: FlatCAMApp.py:7686 +#: FlatCAMApp.py:7707 msgid "[ERROR_NOTCL] This is not GCODE" msgstr "[ERROR_NOTCL] Dies ist kein GCODE" -#: FlatCAMApp.py:7692 +#: FlatCAMApp.py:7713 msgid "Opening G-Code." msgstr "G-Code öffnen." -#: FlatCAMApp.py:7700 +#: FlatCAMApp.py:7721 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 " @@ -1019,26 +1019,26 @@ msgstr "" "Der Versuch, ein FlatCAM-CNCJob-Objekt aus einer G-Code-Datei zu erstellen, " "ist während der Verarbeitung fehlgeschlagen" -#: FlatCAMApp.py:7740 +#: FlatCAMApp.py:7761 #, python-format msgid "[ERROR_NOTCL] Failed to open config file: %s" msgstr "[ERROR_NOTCL] Fehler beim Öffnen der Konfigurationsdatei: %s" -#: FlatCAMApp.py:7766 FlatCAMApp.py:7783 +#: FlatCAMApp.py:7787 FlatCAMApp.py:7804 #, python-format msgid "[ERROR_NOTCL] Failed to open project file: %s" msgstr "[ERROR_NOTCL] Projektdatei konnte nicht geöffnet werden: %s" -#: FlatCAMApp.py:7806 +#: FlatCAMApp.py:7827 #, python-format msgid "[success] Project loaded from: %s" msgstr "[success] Projekt geladen von: %s" -#: FlatCAMApp.py:7911 +#: FlatCAMApp.py:7932 msgid "Available commands:\n" msgstr "Verfügbare Befehle:\n" -#: FlatCAMApp.py:7913 +#: FlatCAMApp.py:7934 msgid "" "\n" "\n" @@ -1050,28 +1050,28 @@ msgstr "" "Geben Sie help für die Verwendung ein.\n" "Beispiel: help open_gerber" -#: FlatCAMApp.py:8063 +#: FlatCAMApp.py:8084 msgid "Shows list of commands." msgstr "Zeigt eine Liste von Befehlen an." -#: FlatCAMApp.py:8120 +#: FlatCAMApp.py:8141 msgid "[ERROR_NOTCL] Failed to load recent item list." msgstr "[ERROR_NOTCL] Fehler beim Laden der letzten Elementliste." -#: FlatCAMApp.py:8127 +#: FlatCAMApp.py:8148 msgid "[ERROR_NOTCL] Failed to parse recent item list." msgstr "" "[ERROR_NOTCL] Liste der letzten Artikel konnte nicht analysiert werden." -#: FlatCAMApp.py:8171 +#: FlatCAMApp.py:8192 msgid "Clear Recent files" msgstr "Letzte Dateien löschen" -#: FlatCAMApp.py:8188 flatcamGUI/FlatCAMGUI.py:968 +#: FlatCAMApp.py:8209 flatcamGUI/FlatCAMGUI.py:968 msgid "Shortcut Key List" msgstr " Liste der Tastenkombinationen " -#: FlatCAMApp.py:8195 +#: FlatCAMApp.py:8216 msgid "" "\n" "

Selected Tab - Choose an Item from " @@ -1171,27 +1171,27 @@ msgstr "" "strong> oder über eine eigene Tastenkombination: F3. " "

" -#: FlatCAMApp.py:8302 +#: FlatCAMApp.py:8323 msgid "[WARNING_NOTCL] Failed checking for latest version. Could not connect." msgstr "" "[WARNING_NOTCL] Fehler bei der Suche nach der neuesten Version. Konnte keine " "Verbindung herstellen." -#: FlatCAMApp.py:8309 +#: FlatCAMApp.py:8330 msgid "[ERROR_NOTCL] Could not parse information about latest version." msgstr "" "[ERROR_NOTCL] Informationen zur neuesten Version konnten nicht analysiert " "werden." -#: FlatCAMApp.py:8319 +#: FlatCAMApp.py:8340 msgid "[success] FlatCAM is up to date!" msgstr "[success] FlatCAM ist auf dem neuesten Version!" -#: FlatCAMApp.py:8324 +#: FlatCAMApp.py:8345 msgid "Newer Version Available" msgstr "Neuere Version verfügbar" -#: FlatCAMApp.py:8325 +#: FlatCAMApp.py:8346 msgid "" "There is a newer version of FlatCAM available for download:\n" "\n" @@ -1199,58 +1199,58 @@ msgstr "" "Es gibt eine neuere Version von FlatCAM zum Download:\n" "\n" -#: FlatCAMApp.py:8327 +#: FlatCAMApp.py:8348 msgid "info" msgstr "Info" -#: FlatCAMApp.py:8346 +#: FlatCAMApp.py:8367 msgid "[success] All plots disabled." msgstr "[success] Alle Diagramme sind deaktiviert." -#: FlatCAMApp.py:8352 +#: FlatCAMApp.py:8373 msgid "[success] All non selected plots disabled." msgstr "[success] Alle nicht ausgewählten Diagramme sind deaktiviert." -#: FlatCAMApp.py:8358 +#: FlatCAMApp.py:8379 msgid "[success] All plots enabled." msgstr "[success] Alle Diagramme aktiviert." -#: FlatCAMApp.py:8364 +#: FlatCAMApp.py:8385 msgid "[success] Selected plots enabled..." msgstr "[success] Ausgewählte Grundstücke aktiviert ..." -#: FlatCAMApp.py:8372 +#: FlatCAMApp.py:8393 msgid "[success] Selected plots disabled..." msgstr "[success] Ausgewählte Grundstücke deaktiviert ..." -#: FlatCAMApp.py:8382 FlatCAMApp.py:8395 +#: FlatCAMApp.py:8403 FlatCAMApp.py:8416 msgid "Working ..." msgstr "Arbeiten ..." -#: FlatCAMApp.py:8429 +#: FlatCAMApp.py:8450 msgid "Saving FlatCAM Project" msgstr "FlatCAM-Projekt speichern" -#: FlatCAMApp.py:8450 FlatCAMApp.py:8481 +#: FlatCAMApp.py:8471 FlatCAMApp.py:8502 #, python-format msgid "[success] Project saved to: %s" msgstr "[success] Projekt gespeichert in: %s" -#: FlatCAMApp.py:8468 +#: FlatCAMApp.py:8489 #, python-format msgid "[ERROR_NOTCL] Failed to verify project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Fehler beim Überprüfen der Projektdatei:%s. Versuchen Sie es " "erneut zu speichern." -#: FlatCAMApp.py:8475 +#: FlatCAMApp.py:8496 #, python-format msgid "[ERROR_NOTCL] Failed to parse saved project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Die gespeicherte Projektdatei konnte nicht analysiert werden:" "%s. Versuchen Sie es erneut zu speichern." -#: FlatCAMApp.py:8483 +#: FlatCAMApp.py:8504 #, python-format msgid "[ERROR_NOTCL] Failed to save project file: %s. Retry to save it." msgstr "" @@ -1262,11 +1262,11 @@ msgstr "" msgid "[success] Name changed from {old} to {new}" msgstr "[success] Name geändert von {old} zu {new}" -#: FlatCAMObj.py:553 FlatCAMObj.py:2035 FlatCAMObj.py:3281 FlatCAMObj.py:5457 +#: FlatCAMObj.py:553 FlatCAMObj.py:2035 FlatCAMObj.py:3301 FlatCAMObj.py:5478 msgid "Basic" msgstr "Basic" -#: FlatCAMObj.py:565 FlatCAMObj.py:2051 FlatCAMObj.py:3303 FlatCAMObj.py:5463 +#: FlatCAMObj.py:565 FlatCAMObj.py:2051 FlatCAMObj.py:3323 FlatCAMObj.py:5484 msgid "Advanced" msgstr "Erweitert" @@ -1287,9 +1287,9 @@ msgstr "Bohrungen insgesamt" msgid "Total Slots" msgstr "Schlitz insgesamt" -#: FlatCAMObj.py:2107 FlatCAMObj.py:3355 FlatCAMObj.py:3655 FlatCAMObj.py:3842 -#: FlatCAMObj.py:3855 FlatCAMObj.py:3972 FlatCAMObj.py:4389 FlatCAMObj.py:4627 -#: FlatCAMObj.py:5040 flatcamEditors/FlatCAMExcEditor.py:1474 +#: FlatCAMObj.py:2107 FlatCAMObj.py:3375 FlatCAMObj.py:3675 FlatCAMObj.py:3862 +#: FlatCAMObj.py:3875 FlatCAMObj.py:3992 FlatCAMObj.py:4409 FlatCAMObj.py:4647 +#: FlatCAMObj.py:5060 flatcamEditors/FlatCAMExcEditor.py:1474 #: flatcamTools/ToolCalculators.py:307 flatcamTools/ToolCalculators.py:318 #: flatcamTools/ToolCalculators.py:330 flatcamTools/ToolCalculators.py:345 #: flatcamTools/ToolCalculators.py:358 flatcamTools/ToolCalculators.py:372 @@ -1349,7 +1349,7 @@ msgstr "" "[ERROR_NOTCL] Das Fräswerkzeug für SCHLITZ ist größer als die Lochgröße. " "Abgebrochen." -#: FlatCAMObj.py:2608 FlatCAMObj.py:4277 FlatCAMObj.py:4493 FlatCAMObj.py:4810 +#: FlatCAMObj.py:2608 FlatCAMObj.py:4297 FlatCAMObj.py:4513 FlatCAMObj.py:4830 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"z_pdepth\"] or self." "options[\"z_pdepth\"]" @@ -1357,7 +1357,7 @@ msgstr "" "[ERROR_NOTCL] Falsches Wertformat für self.defaults [\"z_pdepth\"] oder self." "options [\"z_pdepth\"]" -#: FlatCAMObj.py:2620 FlatCAMObj.py:4289 FlatCAMObj.py:4505 FlatCAMObj.py:4822 +#: FlatCAMObj.py:2620 FlatCAMObj.py:4309 FlatCAMObj.py:4525 FlatCAMObj.py:4842 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"feedrate_probe\"] or " "self.options[\"feedrate_probe\"]" @@ -1365,11 +1365,11 @@ msgstr "" "[ERROR_NOTCL] Falsches Wertformat für self.defaults [\"feedrate_probe\"] " "oder self.options [\"feedrate_probe\"]" -#: FlatCAMObj.py:2652 FlatCAMObj.py:4698 FlatCAMObj.py:4703 FlatCAMObj.py:4853 +#: FlatCAMObj.py:2652 FlatCAMObj.py:4718 FlatCAMObj.py:4723 FlatCAMObj.py:4873 msgid "Generating CNC Code" msgstr "CNC-Code generieren" -#: FlatCAMObj.py:2678 FlatCAMObj.py:4999 camlib.py:5167 camlib.py:5626 +#: FlatCAMObj.py:2678 FlatCAMObj.py:5019 camlib.py:5167 camlib.py:5626 #: camlib.py:5889 msgid "" "[ERROR]The Toolchange X,Y field in Edit -> Preferences has to be in the " @@ -1380,62 +1380,62 @@ msgstr "" "muss das Format (x, y) haben.\n" "Aber jetzt gibt es nur einen Wert, nicht zwei." -#: FlatCAMObj.py:2990 FlatCAMObj.py:3898 FlatCAMObj.py:3899 FlatCAMObj.py:3908 +#: FlatCAMObj.py:2998 FlatCAMObj.py:3918 FlatCAMObj.py:3919 FlatCAMObj.py:3928 msgid "Iso" msgstr "Iso" -#: FlatCAMObj.py:2990 FlatCAMObj.py:3239 FlatCAMObj.py:3520 +#: FlatCAMObj.py:2998 FlatCAMObj.py:3258 FlatCAMObj.py:3540 msgid "Rough" msgstr "Rau" -#: FlatCAMObj.py:2990 +#: FlatCAMObj.py:2998 msgid "Finish" msgstr "Oberfläche" -#: FlatCAMObj.py:3274 flatcamGUI/FlatCAMGUI.py:526 flatcamGUI/FlatCAMGUI.py:722 +#: FlatCAMObj.py:3294 flatcamGUI/FlatCAMGUI.py:526 flatcamGUI/FlatCAMGUI.py:722 #: flatcamGUI/FlatCAMGUI.py:1615 flatcamGUI/FlatCAMGUI.py:1951 #: flatcamGUI/ObjectUI.py:999 msgid "Copy" msgstr "Kopieren" -#: FlatCAMObj.py:3490 +#: FlatCAMObj.py:3510 msgid "[ERROR_NOTCL] Please enter the desired tool diameter in Float format." msgstr "" "[ERROR_NOTCL] Bitte geben Sie den gewünschten Werkzeugdurchmesser im Real-" "Format ein." -#: FlatCAMObj.py:3565 +#: FlatCAMObj.py:3585 msgid "[success] Tool added in Tool Table." msgstr "[success] Werkzeug in der Werkzeugtabelle hinzugefügt." -#: FlatCAMObj.py:3570 +#: FlatCAMObj.py:3590 msgid "[ERROR_NOTCL] Default Tool added. Wrong value format entered." msgstr "" "[ERROR_NOTCL] Standardwerkzeug hinzugefügt Falsches Wertformat eingegeben." -#: FlatCAMObj.py:3600 FlatCAMObj.py:3610 +#: FlatCAMObj.py:3620 FlatCAMObj.py:3630 msgid "[WARNING_NOTCL] Failed. Select a tool to copy." msgstr "" "[WARNING_NOTCL] Fehlgeschlagen. Wählen Sie ein Werkzeug zum Kopieren aus." -#: FlatCAMObj.py:3639 +#: FlatCAMObj.py:3659 msgid "[success] Tool was copied in Tool Table." msgstr "[success] Das Werkzeug wurde in die Werkzeugtabelle kopiert." -#: FlatCAMObj.py:3672 +#: FlatCAMObj.py:3692 msgid "[success] Tool was edited in Tool Table." msgstr "[success] Das Werkzeug wurde in der Werkzeugtabelle bearbeitet." -#: FlatCAMObj.py:3703 FlatCAMObj.py:3713 +#: FlatCAMObj.py:3723 FlatCAMObj.py:3733 msgid "[WARNING_NOTCL] Failed. Select a tool to delete." msgstr "" "[WARNING_NOTCL] Fehlgeschlagen. Wählen Sie ein Werkzeug zum Löschen aus." -#: FlatCAMObj.py:3737 +#: FlatCAMObj.py:3757 msgid "[success] Tool was deleted in Tool Table." msgstr "[success] Werkzeug wurde in der Werkzeugtabelle gelöscht." -#: FlatCAMObj.py:4158 +#: FlatCAMObj.py:4178 #, python-format msgid "" "[WARNING_NOTCL] This Geometry can't be processed because it is %s geometry." @@ -1443,24 +1443,24 @@ msgstr "" "[WARNING_NOTCL] Diese Geometrie kann nicht verarbeitet werden, da es sich um " "%s Geometrie handelt." -#: FlatCAMObj.py:4175 +#: FlatCAMObj.py:4195 msgid "[ERROR_NOTCL] Wrong Tool Dia value format entered, use a number." msgstr "" "[ERROR_NOTCL] Falsches Werkzeug Dia-Wertformat eingegeben, verwenden Sie " "eine Zahl." -#: FlatCAMObj.py:4202 +#: FlatCAMObj.py:4222 msgid "[ERROR_NOTCL] Failed. No tool selected in the tool table ..." msgstr "" "[ERROR_NOTCL] Gescheitert. Kein Werkzeug in der Werkzeugtabelle " "ausgewählt ..." -#: FlatCAMObj.py:4240 +#: FlatCAMObj.py:4260 #, python-format msgid "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" msgstr "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" -#: FlatCAMObj.py:4398 FlatCAMObj.py:4636 +#: FlatCAMObj.py:4418 FlatCAMObj.py:4656 msgid "" "[WARNING] Tool Offset is selected in Tool Table but no value is provided.\n" "Add a Tool Offset or change the Offset Type." @@ -1469,22 +1469,22 @@ msgstr "" "jedoch kein Wert angegeben.\n" "Fügen Sie einen Werkzeugversatz hinzu oder ändern Sie den Versatztyp." -#: FlatCAMObj.py:4517 flatcamTools/ToolSolderPaste.py:1107 +#: FlatCAMObj.py:4537 flatcamTools/ToolSolderPaste.py:1107 #: flatcamTools/ToolSolderPaste.py:1162 msgid "[ERROR_NOTCL] Cancelled. Empty file, it has no geometry..." msgstr "[ERROR_NOTCL] Cancelled. Empty file, it has no geometry..." -#: FlatCAMObj.py:4886 FlatCAMObj.py:4896 camlib.py:3348 camlib.py:3357 +#: FlatCAMObj.py:4906 FlatCAMObj.py:4916 camlib.py:3348 camlib.py:3357 msgid "[ERROR_NOTCL] Scale factor has to be a number: integer or float." msgstr "" "[ERROR_NOTCL] Der Skalierungsfaktor muss eine Zahl sein: Ganzzahl oder " "Fließkommazahl." -#: FlatCAMObj.py:4934 +#: FlatCAMObj.py:4954 msgid "[success] Geometry Scale done." msgstr "[success] Geometrie Skalierung fertig." -#: FlatCAMObj.py:4951 camlib.py:3426 +#: FlatCAMObj.py:4971 camlib.py:3426 msgid "" "[ERROR_NOTCL] An (x,y) pair of values are needed. Probable you entered only " "one value in the Offset field." @@ -1492,29 +1492,29 @@ msgstr "" "[ERROR_NOTCL] Ein (x, y) Wertepaar wird benötigt. Wahrscheinlich haben Sie " "im Feld Offset nur einen Wert eingegeben." -#: FlatCAMObj.py:4971 +#: FlatCAMObj.py:4991 msgid "[success] Geometry Offset done." msgstr "[success] Geometrie Offset fertig." -#: FlatCAMObj.py:5525 FlatCAMObj.py:5530 flatcamTools/ToolSolderPaste.py:1361 +#: FlatCAMObj.py:5546 FlatCAMObj.py:5551 flatcamTools/ToolSolderPaste.py:1361 msgid "Export Machine Code ..." msgstr "Maschinencode exportieren ..." -#: FlatCAMObj.py:5536 flatcamTools/ToolSolderPaste.py:1364 +#: FlatCAMObj.py:5557 flatcamTools/ToolSolderPaste.py:1364 msgid "[WARNING_NOTCL] Export Machine Code cancelled ..." msgstr "[WARNING_NOTCL] Export Machine Code cancelled ..." -#: FlatCAMObj.py:5549 +#: FlatCAMObj.py:5570 #, python-format msgid "[success] Machine Code file saved to: %s" msgstr "[success] Maschinencode-Datei gespeichert in: %s" -#: FlatCAMObj.py:5571 +#: FlatCAMObj.py:5592 #, python-format msgid "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" msgstr "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" -#: FlatCAMObj.py:5688 +#: FlatCAMObj.py:5709 #, python-format msgid "" "[WARNING_NOTCL] This CNCJob object can't be processed because it is a %s " @@ -1523,11 +1523,11 @@ msgstr "" "[WARNING_NOTCL] Dieses CNC-Auftrag Objekt kann nicht verarbeitet werden, da " "es sich um ein %s CNC-Auftrag Objekt handelt." -#: FlatCAMObj.py:5741 +#: FlatCAMObj.py:5762 msgid "[ERROR_NOTCL] G-code does not have a units code: either G20 or G21" msgstr "[ERROR_NOTCL] G-Code hat keinen Einheitencode: entweder G20 oder G21" -#: FlatCAMObj.py:5754 +#: FlatCAMObj.py:5775 msgid "" "[ERROR_NOTCL] Cancelled. The Toolchange Custom code is enabled but it's " "empty." @@ -1535,17 +1535,17 @@ msgstr "" "[ERROR_NOTCL] Abgebrochen. Der benutzerdefinierte Code zum Ändern des " "Werkzeugs ist aktiviert, aber er ist leer." -#: FlatCAMObj.py:5761 +#: FlatCAMObj.py:5782 msgid "[success] Toolchange G-code was replaced by a custom code." msgstr "" "[success] Der Werkzeugwechsel-G-Code wurde durch einen benutzerdefinierten " "Code ersetzt." -#: FlatCAMObj.py:5776 flatcamTools/ToolSolderPaste.py:1390 +#: FlatCAMObj.py:5797 flatcamTools/ToolSolderPaste.py:1390 msgid "[WARNING_NOTCL] No such file or directory" msgstr "[WARNING_NOTCL] Keine solche Datei oder Ordner" -#: FlatCAMObj.py:5796 FlatCAMObj.py:5808 +#: FlatCAMObj.py:5817 FlatCAMObj.py:5829 msgid "" "[WARNING_NOTCL] The used postprocessor file has to have in it's name: " "'toolchange_custom'" @@ -1553,7 +1553,7 @@ msgstr "" "[WARNING_NOTCL] Die verwendete Postprozessor-Datei muss im Namen enthalten " "sein: 'toolchange_custom'" -#: FlatCAMObj.py:5814 +#: FlatCAMObj.py:5835 msgid "[ERROR] There is no postprocessor file." msgstr "[ERROR] Es gibt keine Postprozessor-Datei." @@ -1891,7 +1891,7 @@ msgstr "[success] Erledigt. Bohrer Bewegen abgeschlossen." msgid "[success] Done. Drill(s) copied." msgstr "[success] Erledigt. Bohrer kopiert." -#: flatcamEditors/FlatCAMExcEditor.py:792 flatcamGUI/FlatCAMGUI.py:5026 +#: flatcamEditors/FlatCAMExcEditor.py:792 flatcamGUI/FlatCAMGUI.py:5008 msgid "Excellon Editor" msgstr "Excellon Editor" @@ -1929,7 +1929,7 @@ msgstr "" msgid "Tool Dia:" msgstr "Werkzeugdurchmesser:" -#: flatcamEditors/FlatCAMExcEditor.py:839 flatcamGUI/FlatCAMGUI.py:5055 +#: flatcamEditors/FlatCAMExcEditor.py:839 flatcamGUI/FlatCAMGUI.py:5037 #: flatcamGUI/ObjectUI.py:978 msgid "Diameter for the new tool" msgstr "Durchmesser für das neue Werkzeug" @@ -2009,11 +2009,11 @@ msgstr "Linear" msgid "Circular" msgstr "Kreisförmig" -#: flatcamEditors/FlatCAMExcEditor.py:944 flatcamGUI/FlatCAMGUI.py:5065 +#: flatcamEditors/FlatCAMExcEditor.py:944 flatcamGUI/FlatCAMGUI.py:5047 msgid "Nr of drills:" msgstr "Anzahl der Bohrer:" -#: flatcamEditors/FlatCAMExcEditor.py:946 flatcamGUI/FlatCAMGUI.py:5067 +#: flatcamEditors/FlatCAMExcEditor.py:946 flatcamGUI/FlatCAMGUI.py:5049 msgid "Specify how many drills to be in the array." msgstr "Geben Sie an, wie viele Drills im Array enthalten sein sollen." @@ -2025,7 +2025,7 @@ msgid "Direction:" msgstr "Richtung:" #: flatcamEditors/FlatCAMExcEditor.py:966 -#: flatcamEditors/FlatCAMGrbEditor.py:2528 flatcamGUI/FlatCAMGUI.py:5082 +#: flatcamEditors/FlatCAMGrbEditor.py:2528 flatcamGUI/FlatCAMGUI.py:5064 msgid "" "Direction on which the linear array is oriented:\n" "- 'X' - horizontal axis \n" @@ -2038,12 +2038,12 @@ msgstr "" "- 'Winkel' - ein benutzerdefinierter Winkel für die Neigung des Arrays" #: flatcamEditors/FlatCAMExcEditor.py:979 -#: flatcamEditors/FlatCAMGrbEditor.py:2541 flatcamGUI/FlatCAMGUI.py:5096 +#: flatcamEditors/FlatCAMGrbEditor.py:2541 flatcamGUI/FlatCAMGUI.py:5078 msgid "Pitch:" msgstr "Abstand:" #: flatcamEditors/FlatCAMExcEditor.py:981 -#: flatcamEditors/FlatCAMGrbEditor.py:2543 flatcamGUI/FlatCAMGUI.py:5098 +#: flatcamEditors/FlatCAMGrbEditor.py:2543 flatcamGUI/FlatCAMGUI.py:5080 msgid "Pitch = Distance between elements of the array." msgstr "Abstand = Abstand zwischen Elementen des Arrays." @@ -2052,7 +2052,7 @@ msgstr "Abstand = Abstand zwischen Elementen des Arrays." #: flatcamEditors/FlatCAMGeoEditor.py:665 #: flatcamEditors/FlatCAMGrbEditor.py:2550 #: flatcamEditors/FlatCAMGrbEditor.py:2586 -#: flatcamEditors/FlatCAMGrbEditor.py:4588 flatcamGUI/FlatCAMGUI.py:5107 +#: flatcamEditors/FlatCAMGrbEditor.py:4588 flatcamGUI/FlatCAMGUI.py:5089 #: flatcamTools/ToolTransform.py:68 msgid "Angle:" msgstr "Winkel:" @@ -2080,8 +2080,8 @@ msgstr "" "Gegenuhrzeigersinn sein." #: flatcamEditors/FlatCAMExcEditor.py:1026 -#: flatcamEditors/FlatCAMGrbEditor.py:2588 flatcamGUI/FlatCAMGUI.py:5109 -#: flatcamGUI/FlatCAMGUI.py:5135 +#: flatcamEditors/FlatCAMGrbEditor.py:2588 flatcamGUI/FlatCAMGUI.py:5091 +#: flatcamGUI/FlatCAMGUI.py:5117 msgid "Angle at which each element in circular array is placed." msgstr "" "Winkel, um den jedes Element in einer kreisförmigen Anordnung platziert wird." @@ -2219,12 +2219,13 @@ msgid "Tool" msgstr "Werkzeug" #: flatcamEditors/FlatCAMGeoEditor.py:432 flatcamGUI/FlatCAMGUI.py:4054 -#: flatcamGUI/FlatCAMGUI.py:5618 flatcamGUI/FlatCAMGUI.py:5895 -#: flatcamGUI/FlatCAMGUI.py:6035 flatcamGUI/ObjectUI.py:260 +#: flatcamGUI/FlatCAMGUI.py:5163 flatcamGUI/FlatCAMGUI.py:5597 +#: flatcamGUI/FlatCAMGUI.py:5874 flatcamGUI/FlatCAMGUI.py:6014 +#: flatcamGUI/ObjectUI.py:260 msgid "Tool dia:" msgstr "Werkzeugdurchmesser:" -#: flatcamEditors/FlatCAMGeoEditor.py:434 flatcamGUI/FlatCAMGUI.py:6037 +#: flatcamEditors/FlatCAMGeoEditor.py:434 flatcamGUI/FlatCAMGUI.py:6016 msgid "" "Diameter of the tool to\n" "be used in the operation." @@ -2232,8 +2233,8 @@ msgstr "" "Durchmesser des Werkzeugs bis\n" "in der Operation verwendet werden." -#: flatcamEditors/FlatCAMGeoEditor.py:443 flatcamGUI/FlatCAMGUI.py:5801 -#: flatcamGUI/FlatCAMGUI.py:6046 flatcamTools/ToolNonCopperClear.py:165 +#: flatcamEditors/FlatCAMGeoEditor.py:443 flatcamGUI/FlatCAMGUI.py:5780 +#: flatcamGUI/FlatCAMGUI.py:6025 flatcamTools/ToolNonCopperClear.py:165 #: flatcamTools/ToolPaint.py:160 msgid "Overlap Rate:" msgstr "Überlappungsrate:" @@ -2267,14 +2268,14 @@ msgstr "" "Höhere Werte = langsame Bearbeitung und langsame Ausführung auf CNC\n" "wegen zu vieler Wege." -#: flatcamEditors/FlatCAMGeoEditor.py:461 flatcamGUI/FlatCAMGUI.py:5817 -#: flatcamGUI/FlatCAMGUI.py:5903 flatcamGUI/FlatCAMGUI.py:6056 +#: flatcamEditors/FlatCAMGeoEditor.py:461 flatcamGUI/FlatCAMGUI.py:5796 +#: flatcamGUI/FlatCAMGUI.py:5882 flatcamGUI/FlatCAMGUI.py:6035 #: flatcamTools/ToolCutOut.py:86 flatcamTools/ToolNonCopperClear.py:181 #: flatcamTools/ToolPaint.py:177 msgid "Margin:" msgstr "Marge:" -#: flatcamEditors/FlatCAMGeoEditor.py:463 flatcamGUI/FlatCAMGUI.py:6058 +#: flatcamEditors/FlatCAMGeoEditor.py:463 flatcamGUI/FlatCAMGUI.py:6037 #: flatcamTools/ToolPaint.py:179 msgid "" "Distance by which to avoid\n" @@ -2285,13 +2286,13 @@ msgstr "" "die Kanten des Polygons bis\n" "gemalt werden." -#: flatcamEditors/FlatCAMGeoEditor.py:472 flatcamGUI/FlatCAMGUI.py:5826 -#: flatcamGUI/FlatCAMGUI.py:6067 flatcamTools/ToolNonCopperClear.py:190 +#: flatcamEditors/FlatCAMGeoEditor.py:472 flatcamGUI/FlatCAMGUI.py:5805 +#: flatcamGUI/FlatCAMGUI.py:6046 flatcamTools/ToolNonCopperClear.py:190 #: flatcamTools/ToolPaint.py:188 msgid "Method:" msgstr "Methode:" -#: flatcamEditors/FlatCAMGeoEditor.py:474 flatcamGUI/FlatCAMGUI.py:6069 +#: flatcamEditors/FlatCAMGeoEditor.py:474 flatcamGUI/FlatCAMGUI.py:6048 msgid "" "Algorithm to paint the polygon:
Standard: Fixed step inwards." "
Seed-based: Outwards from seed." @@ -2299,14 +2300,14 @@ msgstr "" "Algorithmus zum Malen des Polygons:
Standard: Feststehender " "Schritt nach innen.
Samenbasiert: Aus dem Samen heraus." -#: flatcamEditors/FlatCAMGeoEditor.py:487 flatcamGUI/FlatCAMGUI.py:5842 -#: flatcamGUI/FlatCAMGUI.py:6082 flatcamTools/ToolNonCopperClear.py:206 +#: flatcamEditors/FlatCAMGeoEditor.py:487 flatcamGUI/FlatCAMGUI.py:5821 +#: flatcamGUI/FlatCAMGUI.py:6061 flatcamTools/ToolNonCopperClear.py:206 #: flatcamTools/ToolPaint.py:204 msgid "Connect:" msgstr "Verbinden:" -#: flatcamEditors/FlatCAMGeoEditor.py:489 flatcamGUI/FlatCAMGUI.py:5844 -#: flatcamGUI/FlatCAMGUI.py:6084 flatcamTools/ToolNonCopperClear.py:208 +#: flatcamEditors/FlatCAMGeoEditor.py:489 flatcamGUI/FlatCAMGUI.py:5823 +#: flatcamGUI/FlatCAMGUI.py:6063 flatcamTools/ToolNonCopperClear.py:208 #: flatcamTools/ToolPaint.py:206 msgid "" "Draw lines between resulting\n" @@ -2315,14 +2316,14 @@ msgstr "" "Zeichnen Sie Linien zwischen den Ergebnissen\n" "Segmente, um Werkzeuglifte zu minimieren." -#: flatcamEditors/FlatCAMGeoEditor.py:496 flatcamGUI/FlatCAMGUI.py:5851 -#: flatcamGUI/FlatCAMGUI.py:6092 flatcamTools/ToolNonCopperClear.py:215 +#: flatcamEditors/FlatCAMGeoEditor.py:496 flatcamGUI/FlatCAMGUI.py:5830 +#: flatcamGUI/FlatCAMGUI.py:6071 flatcamTools/ToolNonCopperClear.py:215 #: flatcamTools/ToolPaint.py:213 msgid "Contour:" msgstr "Kontur:" -#: flatcamEditors/FlatCAMGeoEditor.py:498 flatcamGUI/FlatCAMGUI.py:5853 -#: flatcamGUI/FlatCAMGUI.py:6094 flatcamTools/ToolNonCopperClear.py:217 +#: flatcamEditors/FlatCAMGeoEditor.py:498 flatcamGUI/FlatCAMGUI.py:5832 +#: flatcamGUI/FlatCAMGUI.py:6073 flatcamTools/ToolNonCopperClear.py:217 #: flatcamTools/ToolPaint.py:215 msgid "" "Cut around the perimeter of the polygon\n" @@ -2538,7 +2539,7 @@ msgid "Scale Y" msgstr "Maßstab Y" #: flatcamEditors/FlatCAMGeoEditor.py:797 -#: flatcamEditors/FlatCAMGrbEditor.py:4720 flatcamGUI/FlatCAMGUI.py:6441 +#: flatcamEditors/FlatCAMGrbEditor.py:4720 flatcamGUI/FlatCAMGUI.py:6420 #: flatcamTools/ToolTransform.py:200 msgid "Link" msgstr "Verknüpfung" @@ -2553,7 +2554,7 @@ msgstr "" "Verwenden des Skalierungsfaktors X für beide Achsen." #: flatcamEditors/FlatCAMGeoEditor.py:805 -#: flatcamEditors/FlatCAMGrbEditor.py:4728 flatcamGUI/FlatCAMGUI.py:6449 +#: flatcamEditors/FlatCAMGrbEditor.py:4728 flatcamGUI/FlatCAMGUI.py:6428 #: flatcamTools/ToolTransform.py:208 msgid "Scale Reference" msgstr "Skalenreferenz" @@ -3149,7 +3150,7 @@ msgstr "Malen geometrie erstellen ..." msgid "Shape transformations ..." msgstr "Formtransformationen ..." -#: flatcamEditors/FlatCAMGeoEditor.py:3416 +#: flatcamEditors/FlatCAMGeoEditor.py:3419 #, python-brace-format msgid "" "[WARNING_NOTCL] Editing MultiGeo Geometry, tool: {tool} with diameter: {dia}" @@ -3157,19 +3158,19 @@ msgstr "" "[WARNING_NOTCL] Bearbeiten von MultiGeo-Geometrie, Werkzeug: {tool} mit " "Durchmesser: {dia}" -#: flatcamEditors/FlatCAMGeoEditor.py:3793 +#: flatcamEditors/FlatCAMGeoEditor.py:3796 msgid "[WARNING_NOTCL] Copy cancelled. No shape selected." msgstr "[WARNING_NOTCL] Kopieren abgebrochen Keine Form ausgewählt" -#: flatcamEditors/FlatCAMGeoEditor.py:3800 flatcamGUI/FlatCAMGUI.py:2727 +#: flatcamEditors/FlatCAMGeoEditor.py:3803 flatcamGUI/FlatCAMGUI.py:2727 #: flatcamGUI/FlatCAMGUI.py:2773 flatcamGUI/FlatCAMGUI.py:2791 #: flatcamGUI/FlatCAMGUI.py:2922 flatcamGUI/FlatCAMGUI.py:2934 #: flatcamGUI/FlatCAMGUI.py:2968 msgid "Click on target point." msgstr "Klicken Sie auf den Zielpunkt." -#: flatcamEditors/FlatCAMGeoEditor.py:4044 -#: flatcamEditors/FlatCAMGeoEditor.py:4079 +#: flatcamEditors/FlatCAMGeoEditor.py:4047 +#: flatcamEditors/FlatCAMGeoEditor.py:4082 msgid "" "[WARNING_NOTCL] A selection of at least 2 geo items is required to do " "Intersection." @@ -3177,9 +3178,9 @@ msgstr "" "[WARNING_NOTCL] Eine Auswahl von mindestens 2 Geo-Elementen ist " "erforderlich, um die Kreuzung durchzuführen." -#: flatcamEditors/FlatCAMGeoEditor.py:4163 -#: flatcamEditors/FlatCAMGeoEditor.py:4201 -#: flatcamEditors/FlatCAMGeoEditor.py:4277 +#: flatcamEditors/FlatCAMGeoEditor.py:4166 +#: flatcamEditors/FlatCAMGeoEditor.py:4204 +#: flatcamEditors/FlatCAMGeoEditor.py:4280 msgid "" "[ERROR_NOTCL] Negative buffer value is not accepted. Use Buffer interior to " "generate an 'inside' shape" @@ -3187,54 +3188,54 @@ msgstr "" "[ERROR_NOTCL] Negativer Pufferwert wird nicht akzeptiert. Verwenden Sie den " "Pufferinnenraum, um eine Innenform zu erzeugen" -#: flatcamEditors/FlatCAMGeoEditor.py:4172 -#: flatcamEditors/FlatCAMGeoEditor.py:4210 -#: flatcamEditors/FlatCAMGeoEditor.py:4285 +#: flatcamEditors/FlatCAMGeoEditor.py:4175 +#: flatcamEditors/FlatCAMGeoEditor.py:4213 +#: flatcamEditors/FlatCAMGeoEditor.py:4288 msgid "[WARNING_NOTCL] Nothing selected for buffering." msgstr "[WARNING_NOTCL] Nichts ist für die Pufferung ausgewählt." -#: flatcamEditors/FlatCAMGeoEditor.py:4176 -#: flatcamEditors/FlatCAMGeoEditor.py:4214 -#: flatcamEditors/FlatCAMGeoEditor.py:4289 +#: flatcamEditors/FlatCAMGeoEditor.py:4179 +#: flatcamEditors/FlatCAMGeoEditor.py:4217 +#: flatcamEditors/FlatCAMGeoEditor.py:4292 msgid "[WARNING_NOTCL] Invalid distance for buffering." msgstr "[WARNING_NOTCL] Ungültige Entfernung für die Pufferung" -#: flatcamEditors/FlatCAMGeoEditor.py:4186 -#: flatcamEditors/FlatCAMGeoEditor.py:4298 +#: flatcamEditors/FlatCAMGeoEditor.py:4189 +#: flatcamEditors/FlatCAMGeoEditor.py:4301 msgid "" "[ERROR_NOTCL] Failed, the result is empty. Choose a different buffer value." msgstr "" "[ERROR_NOTCL] Fehlgeschlagen, das Ergebnis ist leer. Wählen Sie einen " "anderen Pufferwert." -#: flatcamEditors/FlatCAMGeoEditor.py:4194 +#: flatcamEditors/FlatCAMGeoEditor.py:4197 msgid "[success] Full buffer geometry created." msgstr "[success] Volle Puffergeometrie erstellt." -#: flatcamEditors/FlatCAMGeoEditor.py:4224 +#: flatcamEditors/FlatCAMGeoEditor.py:4227 msgid "" "[ERROR_NOTCL] Failed, the result is empty. Choose a smaller buffer value." msgstr "" "[ERROR_NOTCL] Fehlgeschlagen, das Ergebnis ist leer. Wählen Sie einen " "kleineren Pufferwert." -#: flatcamEditors/FlatCAMGeoEditor.py:4239 +#: flatcamEditors/FlatCAMGeoEditor.py:4242 msgid "[success] Interior buffer geometry created." msgstr "[success] Innere Puffergeometrie erstellt." -#: flatcamEditors/FlatCAMGeoEditor.py:4310 +#: flatcamEditors/FlatCAMGeoEditor.py:4313 msgid "[success] Exterior buffer geometry created." msgstr "[success] Außenpuffergeometrie erstellt." -#: flatcamEditors/FlatCAMGeoEditor.py:4374 +#: flatcamEditors/FlatCAMGeoEditor.py:4377 msgid "[WARNING_NOTCL] Nothing selected for painting." msgstr "[WARNING_NOTCL] Nichts zum Malen ausgewählt." -#: flatcamEditors/FlatCAMGeoEditor.py:4380 +#: flatcamEditors/FlatCAMGeoEditor.py:4383 msgid "[WARNING] Invalid value for {}" msgstr "[WARNING] Ungültiger Wert für {}" -#: flatcamEditors/FlatCAMGeoEditor.py:4386 +#: flatcamEditors/FlatCAMGeoEditor.py:4389 msgid "" "[ERROR_NOTCL] Could not do Paint. Overlap value has to be less than 1.00 " "(100%)." @@ -3242,7 +3243,7 @@ msgstr "" "[ERROR_NOTCL] Kann nicht Malen machen. Der Überlappungswert muss unter 1,00 " "(100%) liegen." -#: flatcamEditors/FlatCAMGeoEditor.py:4445 +#: flatcamEditors/FlatCAMGeoEditor.py:4448 #, python-format msgid "" "[ERROR] Could not do Paint. Try a different combination of parameters. Or a " @@ -3253,7 +3254,7 @@ msgstr "" "Kombination von Parametern. Oder eine andere Methode von Malen\n" "%s" -#: flatcamEditors/FlatCAMGeoEditor.py:4456 +#: flatcamEditors/FlatCAMGeoEditor.py:4459 msgid "[success] Paint done." msgstr "[success] Malen Sie fertig." @@ -3706,7 +3707,6 @@ msgstr "" #: flatcamEditors/FlatCAMGrbEditor.py:4444 #, python-format -#| msgid "[ERROR_NOTCL] Failed to open %s" msgid "" "[ERROR_NOTCL] Failed.\n" "%s" @@ -6657,7 +6657,7 @@ msgid "Gerber General" msgstr "Geometrie Allgemein" #: flatcamGUI/FlatCAMGUI.py:3995 flatcamGUI/FlatCAMGUI.py:4361 -#: flatcamGUI/FlatCAMGUI.py:5153 flatcamGUI/FlatCAMGUI.py:5525 +#: flatcamGUI/FlatCAMGUI.py:5135 flatcamGUI/FlatCAMGUI.py:5504 #: flatcamGUI/ObjectUI.py:150 flatcamGUI/ObjectUI.py:505 #: flatcamGUI/ObjectUI.py:833 flatcamGUI/ObjectUI.py:1350 msgid "Plot Options:" @@ -6681,18 +6681,18 @@ msgid "Draw polygons in different colors." msgstr "Zeichnen Sie Polygone in verschiedenen Farben." #: flatcamGUI/FlatCAMGUI.py:4016 flatcamGUI/FlatCAMGUI.py:4367 -#: flatcamGUI/FlatCAMGUI.py:5157 flatcamGUI/ObjectUI.py:172 +#: flatcamGUI/FlatCAMGUI.py:5139 flatcamGUI/ObjectUI.py:172 msgid "Plot" msgstr "Zeichn" -#: flatcamGUI/FlatCAMGUI.py:4018 flatcamGUI/FlatCAMGUI.py:5159 +#: flatcamGUI/FlatCAMGUI.py:4018 flatcamGUI/FlatCAMGUI.py:5141 #: flatcamGUI/ObjectUI.py:174 flatcamGUI/ObjectUI.py:546 #: flatcamGUI/ObjectUI.py:879 flatcamGUI/ObjectUI.py:1450 msgid "Plot (show) this object." msgstr "Plotten (zeigen) dieses Objekt." -#: flatcamGUI/FlatCAMGUI.py:4023 flatcamGUI/FlatCAMGUI.py:5166 -#: flatcamGUI/FlatCAMGUI.py:5608 +#: flatcamGUI/FlatCAMGUI.py:4023 flatcamGUI/FlatCAMGUI.py:5149 +#: flatcamGUI/FlatCAMGUI.py:5587 msgid "Circle Steps:" msgstr "Kreisschritte:" @@ -6721,8 +6721,8 @@ msgstr "" "Werkzeugwege zum Schneiden von \n" "äußeren Polygonen." -#: flatcamGUI/FlatCAMGUI.py:4056 flatcamGUI/FlatCAMGUI.py:4753 -#: flatcamGUI/FlatCAMGUI.py:5897 flatcamGUI/ObjectUI.py:788 +#: flatcamGUI/FlatCAMGUI.py:4056 flatcamGUI/FlatCAMGUI.py:4735 +#: flatcamGUI/FlatCAMGUI.py:5876 flatcamGUI/ObjectUI.py:788 #: flatcamGUI/ObjectUI.py:804 msgid "Diameter of the cutting tool." msgstr "Durchmesser des Schneidewerkzeugs." @@ -6784,7 +6784,7 @@ msgstr "Kombinieren Sie alle Durchgänge in einem Objekt" msgid "Clear non-copper:" msgstr " Nicht-Kupfer löschen: " -#: flatcamGUI/FlatCAMGUI.py:4104 flatcamGUI/FlatCAMGUI.py:5785 +#: flatcamGUI/FlatCAMGUI.py:4104 flatcamGUI/FlatCAMGUI.py:5764 #: flatcamGUI/ObjectUI.py:386 msgid "" "Create a Geometry object with\n" @@ -6896,7 +6896,7 @@ msgstr "" msgid "Gerber Export" msgstr "Gerber Export" -#: flatcamGUI/FlatCAMGUI.py:4232 flatcamGUI/FlatCAMGUI.py:4902 +#: flatcamGUI/FlatCAMGUI.py:4232 flatcamGUI/FlatCAMGUI.py:4884 msgid "Export Options:" msgstr "Exportoptionen:" @@ -6908,7 +6908,7 @@ msgstr "" "Die hier eingestellten Parameter werden in der exportierten Datei verwendet\n" "bei Verwendung des Menüeintrags Datei -> Exportieren -> Gerber exportieren." -#: flatcamGUI/FlatCAMGUI.py:4243 flatcamGUI/FlatCAMGUI.py:4913 +#: flatcamGUI/FlatCAMGUI.py:4243 flatcamGUI/FlatCAMGUI.py:4895 msgid "Units:" msgstr "Einheiten:" @@ -6916,7 +6916,7 @@ msgstr "Einheiten:" msgid "The units used in the Gerber file." msgstr "Die in der Gerber-Datei verwendeten Einheiten." -#: flatcamGUI/FlatCAMGUI.py:4257 flatcamGUI/FlatCAMGUI.py:4927 +#: flatcamGUI/FlatCAMGUI.py:4257 flatcamGUI/FlatCAMGUI.py:4909 msgid "Int/Decimals:" msgstr "Ganzzahl / Dezimalzahl:" @@ -6944,7 +6944,7 @@ msgstr "" "Diese Zahlen geben die Anzahl der Ziffern in an\n" "Der Dezimalteil der Gerber-Koordinaten." -#: flatcamGUI/FlatCAMGUI.py:4293 flatcamGUI/FlatCAMGUI.py:4988 +#: flatcamGUI/FlatCAMGUI.py:4293 flatcamGUI/FlatCAMGUI.py:4970 msgid "Zeros:" msgstr "Nullen:" @@ -6962,12 +6962,12 @@ msgstr "" "Wenn TZ aktiviert ist, werden nachfolgende Nullen entfernt\n" "und führende Nullen werden beibehalten." -#: flatcamGUI/FlatCAMGUI.py:4326 flatcamGUI/FlatCAMGUI.py:5029 -#: flatcamGUI/FlatCAMGUI.py:5491 flatcamGUI/FlatCAMGUI.py:5783 -#: flatcamGUI/FlatCAMGUI.py:5884 flatcamGUI/FlatCAMGUI.py:5963 -#: flatcamGUI/FlatCAMGUI.py:6022 flatcamGUI/FlatCAMGUI.py:6125 -#: flatcamGUI/FlatCAMGUI.py:6186 flatcamGUI/FlatCAMGUI.py:6385 -#: flatcamGUI/FlatCAMGUI.py:6512 +#: flatcamGUI/FlatCAMGUI.py:4326 flatcamGUI/FlatCAMGUI.py:5011 +#: flatcamGUI/FlatCAMGUI.py:5470 flatcamGUI/FlatCAMGUI.py:5762 +#: flatcamGUI/FlatCAMGUI.py:5863 flatcamGUI/FlatCAMGUI.py:5942 +#: flatcamGUI/FlatCAMGUI.py:6001 flatcamGUI/FlatCAMGUI.py:6104 +#: flatcamGUI/FlatCAMGUI.py:6165 flatcamGUI/FlatCAMGUI.py:6364 +#: flatcamGUI/FlatCAMGUI.py:6491 msgid "Parameters:" msgstr "Parameter:" @@ -6975,8 +6975,8 @@ msgstr "Parameter:" msgid "A list of Gerber Editor parameters." msgstr "Eine Liste der Gerber-Editor-Parameter." -#: flatcamGUI/FlatCAMGUI.py:4336 flatcamGUI/FlatCAMGUI.py:5039 -#: flatcamGUI/FlatCAMGUI.py:5501 +#: flatcamGUI/FlatCAMGUI.py:4336 flatcamGUI/FlatCAMGUI.py:5021 +#: flatcamGUI/FlatCAMGUI.py:5480 msgid "Selection limit:" msgstr "Auswahllimit:" @@ -7053,7 +7053,7 @@ msgid "Default values for INCH are 2:4" msgstr "Die Standardwerte für ZOLL sind 2: 4" #: flatcamGUI/FlatCAMGUI.py:4418 flatcamGUI/FlatCAMGUI.py:4451 -#: flatcamGUI/FlatCAMGUI.py:4942 +#: flatcamGUI/FlatCAMGUI.py:4924 msgid "" "This numbers signify the number of digits in\n" "the whole part of Excellon coordinates." @@ -7062,7 +7062,7 @@ msgstr "" "der gesamte Teil der Excellon-Koordinaten." #: flatcamGUI/FlatCAMGUI.py:4432 flatcamGUI/FlatCAMGUI.py:4465 -#: flatcamGUI/FlatCAMGUI.py:4956 +#: flatcamGUI/FlatCAMGUI.py:4938 msgid "" "This numbers signify the number of digits in\n" "the decimal part of Excellon coordinates." @@ -7082,7 +7082,7 @@ msgstr "Die Standardwerte für METRISCH sind 3: 3" msgid "Default Zeros:" msgstr "Standard Nullen:" -#: flatcamGUI/FlatCAMGUI.py:4477 flatcamGUI/FlatCAMGUI.py:4991 +#: flatcamGUI/FlatCAMGUI.py:4477 flatcamGUI/FlatCAMGUI.py:4973 msgid "" "This sets the type of Excellon zeros.\n" "If LZ then Leading Zeros are kept and\n" @@ -7112,11 +7112,11 @@ msgstr "" "Wenn TZ aktiviert ist, werden nachfolgende Nullen beibehalten\n" "und führende Nullen werden entfernt." -#: flatcamGUI/FlatCAMGUI.py:4502 +#: flatcamGUI/FlatCAMGUI.py:4498 msgid "Default Units:" msgstr "Standard einheiten:" -#: flatcamGUI/FlatCAMGUI.py:4505 +#: flatcamGUI/FlatCAMGUI.py:4501 msgid "" "This sets the default units of Excellon files.\n" "If it is not detected in the parsed file the value here\n" @@ -7128,7 +7128,7 @@ msgstr "" "wird verwendet. Einige Excellon-Dateien haben keinen Header\n" "Daher wird dieser Parameter verwendet." -#: flatcamGUI/FlatCAMGUI.py:4516 +#: flatcamGUI/FlatCAMGUI.py:4512 msgid "" "This sets the units of Excellon files.\n" "Some Excellon files don't have an header\n" @@ -7138,15 +7138,15 @@ msgstr "" "Einige Excellon-Dateien haben keinen Header\n" "Daher wird dieser Parameter verwendet." -#: flatcamGUI/FlatCAMGUI.py:4532 +#: flatcamGUI/FlatCAMGUI.py:4520 msgid "Excellon Optimization:" msgstr "Optimierung der Excellons:" -#: flatcamGUI/FlatCAMGUI.py:4539 +#: flatcamGUI/FlatCAMGUI.py:4523 msgid "Algorithm: " msgstr "Algorithmus:" -#: flatcamGUI/FlatCAMGUI.py:4542 flatcamGUI/FlatCAMGUI.py:4555 +#: flatcamGUI/FlatCAMGUI.py:4525 flatcamGUI/FlatCAMGUI.py:4539 msgid "" "This sets the optimization type for the Excellon drill path.\n" "If MH is checked then Google OR-Tools algorithm with MetaHeuristic\n" @@ -7170,11 +7170,11 @@ msgstr "" "Wenn DEAKTIVIERT, arbeitet FlatCAM im 32-Bit-Modus und verwendet es\n" "Traveling Salesman-Algorithmus zur Pfadoptimierung." -#: flatcamGUI/FlatCAMGUI.py:4567 +#: flatcamGUI/FlatCAMGUI.py:4550 msgid "Optimization Time: " msgstr "Optimierungszeit:" -#: flatcamGUI/FlatCAMGUI.py:4570 +#: flatcamGUI/FlatCAMGUI.py:4553 msgid "" "When OR-Tools Metaheuristic (MH) is enabled there is a\n" "maximum threshold for how much time is spent doing the\n" @@ -7186,15 +7186,15 @@ msgstr "" "Pfadoptimierung. Diese maximale Dauer wird hier eingestellt.\n" "In Sekunden." -#: flatcamGUI/FlatCAMGUI.py:4612 +#: flatcamGUI/FlatCAMGUI.py:4596 msgid "Excellon Options" msgstr "Excellon-Optionen" -#: flatcamGUI/FlatCAMGUI.py:4615 flatcamGUI/ObjectUI.py:584 +#: flatcamGUI/FlatCAMGUI.py:4599 flatcamGUI/ObjectUI.py:584 msgid "Create CNC Job" msgstr "CNC-Job erstellen" -#: flatcamGUI/FlatCAMGUI.py:4617 +#: flatcamGUI/FlatCAMGUI.py:4601 msgid "" "Parameters used to create a CNC Job object\n" "for this drill object." @@ -7202,13 +7202,13 @@ msgstr "" "Parameter, die zum Erstellen eines CNC-Auftragsobjekts verwendet werden\n" "für dieses Bohrobjekt." -#: flatcamGUI/FlatCAMGUI.py:4625 flatcamGUI/FlatCAMGUI.py:5217 -#: flatcamGUI/FlatCAMGUI.py:6321 flatcamGUI/ObjectUI.py:595 +#: flatcamGUI/FlatCAMGUI.py:4609 flatcamGUI/FlatCAMGUI.py:5196 +#: flatcamGUI/FlatCAMGUI.py:6300 flatcamGUI/ObjectUI.py:595 #: flatcamGUI/ObjectUI.py:1062 flatcamTools/ToolCalculators.py:108 msgid "Cut Z:" msgstr "Schnitt Z:" -#: flatcamGUI/FlatCAMGUI.py:4627 flatcamGUI/ObjectUI.py:597 +#: flatcamGUI/FlatCAMGUI.py:4611 flatcamGUI/ObjectUI.py:597 msgid "" "Drill depth (negative)\n" "below the copper surface." @@ -7216,12 +7216,12 @@ msgstr "" "Bohrtiefe (negativ)\n" "unter der Kupferoberfläche." -#: flatcamGUI/FlatCAMGUI.py:4634 flatcamGUI/FlatCAMGUI.py:5250 +#: flatcamGUI/FlatCAMGUI.py:4618 flatcamGUI/FlatCAMGUI.py:5229 #: flatcamGUI/ObjectUI.py:605 flatcamGUI/ObjectUI.py:1098 msgid "Travel Z:" msgstr "Reise Z:" -#: flatcamGUI/FlatCAMGUI.py:4636 flatcamGUI/ObjectUI.py:607 +#: flatcamGUI/FlatCAMGUI.py:4620 flatcamGUI/ObjectUI.py:607 msgid "" "Tool height when travelling\n" "across the XY plane." @@ -7229,11 +7229,11 @@ msgstr "" "Werkzeughöhe auf Reisen\n" "über die XY-Ebene." -#: flatcamGUI/FlatCAMGUI.py:4644 flatcamGUI/FlatCAMGUI.py:5260 +#: flatcamGUI/FlatCAMGUI.py:4628 flatcamGUI/FlatCAMGUI.py:5239 msgid "Tool change:" msgstr "Werkzeugwechsel:" -#: flatcamGUI/FlatCAMGUI.py:4646 flatcamGUI/FlatCAMGUI.py:5262 +#: flatcamGUI/FlatCAMGUI.py:4630 flatcamGUI/FlatCAMGUI.py:5241 #: flatcamGUI/ObjectUI.py:617 msgid "" "Include tool-change sequence\n" @@ -7242,19 +7242,19 @@ msgstr "" "Werkzeugwechselfolge einbeziehen\n" "im G-Code (Pause für Werkzeugwechsel)." -#: flatcamGUI/FlatCAMGUI.py:4653 flatcamGUI/FlatCAMGUI.py:5270 +#: flatcamGUI/FlatCAMGUI.py:4637 flatcamGUI/FlatCAMGUI.py:5249 msgid "Toolchange Z:" msgstr "Werkzeugwechsel Z:" -#: flatcamGUI/FlatCAMGUI.py:4655 flatcamGUI/FlatCAMGUI.py:5272 +#: flatcamGUI/FlatCAMGUI.py:4639 flatcamGUI/FlatCAMGUI.py:5251 msgid "Toolchange Z position." msgstr "Toolchange Z position." -#: flatcamGUI/FlatCAMGUI.py:4661 +#: flatcamGUI/FlatCAMGUI.py:4645 msgid "Feedrate:" msgstr "Vorschubgeschwindigkeit:" -#: flatcamGUI/FlatCAMGUI.py:4663 +#: flatcamGUI/FlatCAMGUI.py:4647 msgid "" "Tool speed while drilling\n" "(in units per minute)." @@ -7262,11 +7262,11 @@ msgstr "" "Werkzeuggeschwindigkeit beim Bohren\n" "(in Einheiten pro Minute)." -#: flatcamGUI/FlatCAMGUI.py:4671 +#: flatcamGUI/FlatCAMGUI.py:4655 msgid "Spindle Speed:" msgstr "Spulengeschwindigkeit:" -#: flatcamGUI/FlatCAMGUI.py:4673 flatcamGUI/FlatCAMGUI.py:5302 +#: flatcamGUI/FlatCAMGUI.py:4657 flatcamGUI/FlatCAMGUI.py:5281 #: flatcamGUI/ObjectUI.py:684 msgid "" "Speed of the spindle\n" @@ -7275,11 +7275,11 @@ msgstr "" "Geschwindigkeit der Spindel\n" "in RPM (optional)" -#: flatcamGUI/FlatCAMGUI.py:4681 flatcamGUI/FlatCAMGUI.py:5310 +#: flatcamGUI/FlatCAMGUI.py:4665 flatcamGUI/FlatCAMGUI.py:5289 msgid "Spindle dir.:" msgstr "Spindelrichtung:" -#: flatcamGUI/FlatCAMGUI.py:4683 flatcamGUI/FlatCAMGUI.py:5312 +#: flatcamGUI/FlatCAMGUI.py:4667 flatcamGUI/FlatCAMGUI.py:5291 msgid "" "This sets the direction that the spindle is rotating.\n" "It can be either:\n" @@ -7291,12 +7291,12 @@ msgstr "" "- CW = im Uhrzeigersinn oder\n" "- CCW = gegen den Uhrzeigersinn" -#: flatcamGUI/FlatCAMGUI.py:4695 flatcamGUI/FlatCAMGUI.py:5324 +#: flatcamGUI/FlatCAMGUI.py:4679 flatcamGUI/FlatCAMGUI.py:5303 #: flatcamGUI/ObjectUI.py:692 flatcamGUI/ObjectUI.py:1224 msgid "Dwell:" msgstr "Wohnen:" -#: flatcamGUI/FlatCAMGUI.py:4697 flatcamGUI/FlatCAMGUI.py:5326 +#: flatcamGUI/FlatCAMGUI.py:4681 flatcamGUI/FlatCAMGUI.py:5305 #: flatcamGUI/ObjectUI.py:694 flatcamGUI/ObjectUI.py:1227 msgid "" "Pause to allow the spindle to reach its\n" @@ -7305,21 +7305,21 @@ msgstr "" "Pause, damit die Spindel ihre erreichen kann\n" "Geschwindigkeit vor dem Schneiden." -#: flatcamGUI/FlatCAMGUI.py:4700 flatcamGUI/FlatCAMGUI.py:5329 +#: flatcamGUI/FlatCAMGUI.py:4684 flatcamGUI/FlatCAMGUI.py:5308 msgid "Duration:" msgstr "Dauer:" -#: flatcamGUI/FlatCAMGUI.py:4702 flatcamGUI/FlatCAMGUI.py:5331 +#: flatcamGUI/FlatCAMGUI.py:4686 flatcamGUI/FlatCAMGUI.py:5310 #: flatcamGUI/ObjectUI.py:699 flatcamGUI/ObjectUI.py:1234 msgid "Number of milliseconds for spindle to dwell." msgstr "Anzahl der Millisekunden, die die Spindel halten soll." -#: flatcamGUI/FlatCAMGUI.py:4714 flatcamGUI/FlatCAMGUI.py:5341 +#: flatcamGUI/FlatCAMGUI.py:4698 flatcamGUI/FlatCAMGUI.py:5320 #: flatcamGUI/ObjectUI.py:707 msgid "Postprocessor:" msgstr "Postprozessor:" -#: flatcamGUI/FlatCAMGUI.py:4716 +#: flatcamGUI/FlatCAMGUI.py:4700 msgid "" "The postprocessor file that dictates\n" "gcode output." @@ -7327,11 +7327,11 @@ msgstr "" "Die Postprozessor-Datei, die diktiert\n" "gcode ausgabe." -#: flatcamGUI/FlatCAMGUI.py:4725 +#: flatcamGUI/FlatCAMGUI.py:4709 msgid "Gcode: " msgstr "Gcode:" -#: flatcamGUI/FlatCAMGUI.py:4727 +#: flatcamGUI/FlatCAMGUI.py:4711 msgid "" "Choose what to use for GCode generation:\n" "'Drills', 'Slots' or 'Both'.\n" @@ -7344,23 +7344,23 @@ msgstr "" "angezeigt\n" "in Bohrer umgewandelt." -#: flatcamGUI/FlatCAMGUI.py:4743 flatcamGUI/ObjectUI.py:772 +#: flatcamGUI/FlatCAMGUI.py:4727 flatcamGUI/ObjectUI.py:772 msgid "Mill Holes" msgstr " Löcher bohren " -#: flatcamGUI/FlatCAMGUI.py:4745 flatcamGUI/ObjectUI.py:774 +#: flatcamGUI/FlatCAMGUI.py:4729 flatcamGUI/ObjectUI.py:774 msgid "Create Geometry for milling holes." msgstr "Erstellen Sie Geometrie zum Fräsen von Löchern." -#: flatcamGUI/FlatCAMGUI.py:4751 +#: flatcamGUI/FlatCAMGUI.py:4733 msgid "Drill Tool dia:" msgstr "Bohrwerkzeug Durchmesser:" -#: flatcamGUI/FlatCAMGUI.py:4758 +#: flatcamGUI/FlatCAMGUI.py:4740 msgid "Slot Tool dia:" msgstr "Schlitzwerkzeug Durchmesser:" -#: flatcamGUI/FlatCAMGUI.py:4760 +#: flatcamGUI/FlatCAMGUI.py:4742 msgid "" "Diameter of the cutting tool\n" "when milling slots." @@ -7368,19 +7368,19 @@ msgstr "" "Durchmesser des Schneidewerkzeugs\n" "beim Fräsen von Schlitzen." -#: flatcamGUI/FlatCAMGUI.py:4772 +#: flatcamGUI/FlatCAMGUI.py:4754 msgid "Defaults" msgstr "Standardwerte" -#: flatcamGUI/FlatCAMGUI.py:4785 +#: flatcamGUI/FlatCAMGUI.py:4767 msgid "Excellon Adv. Options" msgstr "Excellon erweiterte Optionen" -#: flatcamGUI/FlatCAMGUI.py:4791 flatcamGUI/FlatCAMGUI.py:5364 +#: flatcamGUI/FlatCAMGUI.py:4773 flatcamGUI/FlatCAMGUI.py:5343 msgid "Advanced Options:" msgstr "Erweiterte Optionen:" -#: flatcamGUI/FlatCAMGUI.py:4793 +#: flatcamGUI/FlatCAMGUI.py:4775 msgid "" "Parameters used to create a CNC Job object\n" "for this drill object that are shown when App Level is Advanced." @@ -7389,11 +7389,11 @@ msgstr "" "für dieses Drill-Objekt, das angezeigt wird, wenn die App-Ebene Erweitert " "ist." -#: flatcamGUI/FlatCAMGUI.py:4801 +#: flatcamGUI/FlatCAMGUI.py:4783 msgid "Offset Z:" msgstr "Versatz Z:" -#: flatcamGUI/FlatCAMGUI.py:4803 flatcamGUI/ObjectUI.py:574 +#: flatcamGUI/FlatCAMGUI.py:4785 flatcamGUI/ObjectUI.py:574 msgid "" "Some drill bits (the larger ones) need to drill deeper\n" "to create the desired exit hole diameter due of the tip shape.\n" @@ -7404,20 +7404,20 @@ msgstr "" "erzeugen.\n" "Der Wert hier kann den Parameter Cut Z ausgleichen." -#: flatcamGUI/FlatCAMGUI.py:4810 flatcamGUI/FlatCAMGUI.py:5375 +#: flatcamGUI/FlatCAMGUI.py:4792 flatcamGUI/FlatCAMGUI.py:5354 msgid "Toolchange X,Y:" msgstr "Werkzeugwechsel X, Y:" -#: flatcamGUI/FlatCAMGUI.py:4812 flatcamGUI/FlatCAMGUI.py:5377 +#: flatcamGUI/FlatCAMGUI.py:4794 flatcamGUI/FlatCAMGUI.py:5356 msgid "Toolchange X,Y position." msgstr "Werkzeugwechsel X, Y Position." -#: flatcamGUI/FlatCAMGUI.py:4818 flatcamGUI/FlatCAMGUI.py:5384 +#: flatcamGUI/FlatCAMGUI.py:4800 flatcamGUI/FlatCAMGUI.py:5363 #: flatcamGUI/ObjectUI.py:634 msgid "Start move Z:" msgstr "Startbewegung Z:" -#: flatcamGUI/FlatCAMGUI.py:4820 +#: flatcamGUI/FlatCAMGUI.py:4802 msgid "" "Height of the tool just after start.\n" "Delete the value if you don't need this feature." @@ -7425,12 +7425,12 @@ msgstr "" "Höhe des Werkzeugs gleich nach dem Start.\n" "Löschen Sie den Wert, wenn Sie diese Funktion nicht benötigen." -#: flatcamGUI/FlatCAMGUI.py:4827 flatcamGUI/FlatCAMGUI.py:5394 +#: flatcamGUI/FlatCAMGUI.py:4809 flatcamGUI/FlatCAMGUI.py:5373 #: flatcamGUI/ObjectUI.py:644 flatcamGUI/ObjectUI.py:1144 msgid "End move Z:" msgstr "Bewegung beenden Z:" -#: flatcamGUI/FlatCAMGUI.py:4829 flatcamGUI/FlatCAMGUI.py:5396 +#: flatcamGUI/FlatCAMGUI.py:4811 flatcamGUI/FlatCAMGUI.py:5375 msgid "" "Height of the tool after\n" "the last move at the end of the job." @@ -7438,12 +7438,12 @@ msgstr "" "Höhe des Werkzeugs nach\n" "die letzte Bewegung am Ende des Jobs." -#: flatcamGUI/FlatCAMGUI.py:4836 flatcamGUI/FlatCAMGUI.py:5404 +#: flatcamGUI/FlatCAMGUI.py:4818 flatcamGUI/FlatCAMGUI.py:5383 #: flatcamGUI/ObjectUI.py:665 msgid "Feedrate Rapids:" msgstr "Vorschubgeschwindigkeit:" -#: flatcamGUI/FlatCAMGUI.py:4838 flatcamGUI/ObjectUI.py:667 +#: flatcamGUI/FlatCAMGUI.py:4820 flatcamGUI/ObjectUI.py:667 msgid "" "Tool speed while drilling\n" "(in units per minute).\n" @@ -7457,12 +7457,12 @@ msgstr "" "Es ist nur für Marlin nützlich,\n" "für andere Fälle ignorieren." -#: flatcamGUI/FlatCAMGUI.py:4849 flatcamGUI/FlatCAMGUI.py:5428 +#: flatcamGUI/FlatCAMGUI.py:4831 flatcamGUI/FlatCAMGUI.py:5407 #: flatcamGUI/ObjectUI.py:718 flatcamGUI/ObjectUI.py:1256 msgid "Probe Z depth:" msgstr "Sonde Z Tiefe:" -#: flatcamGUI/FlatCAMGUI.py:4851 flatcamGUI/FlatCAMGUI.py:5430 +#: flatcamGUI/FlatCAMGUI.py:4833 flatcamGUI/FlatCAMGUI.py:5409 #: flatcamGUI/ObjectUI.py:720 flatcamGUI/ObjectUI.py:1259 msgid "" "The maximum depth that the probe is allowed\n" @@ -7471,21 +7471,21 @@ msgstr "" "Die maximale Tiefe, in der die Sonde zulässig ist\n" "zu untersuchen. Negativer Wert in aktuellen Einheiten." -#: flatcamGUI/FlatCAMGUI.py:4859 flatcamGUI/FlatCAMGUI.py:5438 +#: flatcamGUI/FlatCAMGUI.py:4841 flatcamGUI/FlatCAMGUI.py:5417 #: flatcamGUI/ObjectUI.py:730 flatcamGUI/ObjectUI.py:1270 msgid "Feedrate Probe:" msgstr "Vorschubsonde:" -#: flatcamGUI/FlatCAMGUI.py:4861 flatcamGUI/FlatCAMGUI.py:5440 +#: flatcamGUI/FlatCAMGUI.py:4843 flatcamGUI/FlatCAMGUI.py:5419 #: flatcamGUI/ObjectUI.py:732 flatcamGUI/ObjectUI.py:1273 msgid "The feedrate used while the probe is probing." msgstr "Der Vorschub während der Sondenmessung." -#: flatcamGUI/FlatCAMGUI.py:4867 flatcamGUI/FlatCAMGUI.py:5447 +#: flatcamGUI/FlatCAMGUI.py:4849 flatcamGUI/FlatCAMGUI.py:5426 msgid "Fast Plunge:" msgstr "Schneller Sprung:" -#: flatcamGUI/FlatCAMGUI.py:4869 flatcamGUI/FlatCAMGUI.py:5449 +#: flatcamGUI/FlatCAMGUI.py:4851 flatcamGUI/FlatCAMGUI.py:5428 msgid "" "By checking this, the vertical move from\n" "Z_Toolchange to Z_move is done with G0,\n" @@ -7497,11 +7497,11 @@ msgstr "" "Das bedeutet die schnellste verfügbare Geschwindigkeit.\n" "WARNUNG: Die Verschiebung erfolgt bei Toolchange X, Y-Koordinaten." -#: flatcamGUI/FlatCAMGUI.py:4878 +#: flatcamGUI/FlatCAMGUI.py:4860 msgid "Fast Retract:" msgstr "Schneller Rückzug:" -#: flatcamGUI/FlatCAMGUI.py:4880 +#: flatcamGUI/FlatCAMGUI.py:4862 msgid "" "Exit hole strategy.\n" " - When uncheked, while exiting the drilled hole the drill bit\n" @@ -7517,11 +7517,11 @@ msgstr "" "  - Wenn Sie den Weg von Z-Schnitt (Schnitttiefe) nach Z_Move prüfen\n" "(Fahrhöhe) erfolgt so schnell wie möglich (G0) in einem Zug." -#: flatcamGUI/FlatCAMGUI.py:4899 +#: flatcamGUI/FlatCAMGUI.py:4881 msgid "Excellon Export" msgstr "Excellon Export" -#: flatcamGUI/FlatCAMGUI.py:4904 +#: flatcamGUI/FlatCAMGUI.py:4886 msgid "" "The parameters set here are used in the file exported\n" "when using the File -> Export -> Export Excellon menu entry." @@ -7530,11 +7530,11 @@ msgstr "" "bei Verwendung des Menüeintrags Datei -> Exportieren -> Exportieren von " "Excellon." -#: flatcamGUI/FlatCAMGUI.py:4915 flatcamGUI/FlatCAMGUI.py:4921 +#: flatcamGUI/FlatCAMGUI.py:4897 flatcamGUI/FlatCAMGUI.py:4903 msgid "The units used in the Excellon file." msgstr "Die in der Excellon-Datei verwendeten Einheiten." -#: flatcamGUI/FlatCAMGUI.py:4929 +#: flatcamGUI/FlatCAMGUI.py:4911 msgid "" "The NC drill files, usually named Excellon files\n" "are files that can be found in different formats.\n" @@ -7546,11 +7546,11 @@ msgstr "" "Hier legen wir das verwendete Format fest\n" "Koordinaten verwenden keine Periode." -#: flatcamGUI/FlatCAMGUI.py:4965 +#: flatcamGUI/FlatCAMGUI.py:4947 msgid "Format:" msgstr "Format:" -#: flatcamGUI/FlatCAMGUI.py:4967 flatcamGUI/FlatCAMGUI.py:4977 +#: flatcamGUI/FlatCAMGUI.py:4949 flatcamGUI/FlatCAMGUI.py:4959 msgid "" "Select the kind of coordinates format used.\n" "Coordinates can be saved with decimal point or without.\n" @@ -7567,7 +7567,7 @@ msgstr "" "Es muss auch angegeben werden, wenn LZ = führende Nullen beibehalten werden\n" "oder TZ = nachfolgende Nullen bleiben erhalten." -#: flatcamGUI/FlatCAMGUI.py:5001 +#: flatcamGUI/FlatCAMGUI.py:4983 msgid "" "This sets the default type of Excellon zeros.\n" "If LZ then Leading Zeros are kept and\n" @@ -7581,11 +7581,11 @@ msgstr "" "Wenn TZ aktiviert ist, werden nachfolgende Nullen beibehalten\n" "und führende Nullen werden entfernt." -#: flatcamGUI/FlatCAMGUI.py:5031 +#: flatcamGUI/FlatCAMGUI.py:5013 msgid "A list of Excellon Editor parameters." msgstr "Eine Liste der Excellon Editor-Parameter." -#: flatcamGUI/FlatCAMGUI.py:5041 +#: flatcamGUI/FlatCAMGUI.py:5023 msgid "" "Set the number of selected Excellon geometry\n" "items above which the utility geometry\n" @@ -7599,27 +7599,27 @@ msgstr "" "Erhöht die Leistung beim Bewegen von a\n" "große Anzahl von geometrischen Elementen." -#: flatcamGUI/FlatCAMGUI.py:5053 +#: flatcamGUI/FlatCAMGUI.py:5035 msgid "New Tool Dia:" msgstr "Neuer Werkzeugdurchm.:" -#: flatcamGUI/FlatCAMGUI.py:5076 +#: flatcamGUI/FlatCAMGUI.py:5058 msgid "Linear Drill Array:" msgstr " Linearbohrer-Array: " -#: flatcamGUI/FlatCAMGUI.py:5080 +#: flatcamGUI/FlatCAMGUI.py:5062 msgid "Linear Dir.:" msgstr "Lineare Richt.:" -#: flatcamGUI/FlatCAMGUI.py:5116 +#: flatcamGUI/FlatCAMGUI.py:5098 msgid "Circular Drill Array:" msgstr " Rundbohrer-Array: " -#: flatcamGUI/FlatCAMGUI.py:5120 +#: flatcamGUI/FlatCAMGUI.py:5102 msgid "Circular Dir.:" msgstr "Kreisricht.:" -#: flatcamGUI/FlatCAMGUI.py:5122 +#: flatcamGUI/FlatCAMGUI.py:5104 msgid "" "Direction for circular array.\n" "Can be CW = clockwise or CCW = counter clockwise." @@ -7627,15 +7627,15 @@ msgstr "" "Richtung für kreisförmige Anordnung. \n" "Kann CW = Uhrzeigersinn oder CCW = Gegenuhrzeigersinn sein." -#: flatcamGUI/FlatCAMGUI.py:5133 +#: flatcamGUI/FlatCAMGUI.py:5115 msgid "Circ. Angle:" msgstr "Kreiswinkel:" -#: flatcamGUI/FlatCAMGUI.py:5150 +#: flatcamGUI/FlatCAMGUI.py:5132 msgid "Geometry General" msgstr "Geometrie Allgemein" -#: flatcamGUI/FlatCAMGUI.py:5168 +#: flatcamGUI/FlatCAMGUI.py:5151 msgid "" "The number of circle steps for Geometry \n" "circle and arc shapes linear approximation." @@ -7643,31 +7643,23 @@ msgstr "" "Die Anzahl der Kreisschritte für die Geometrie\n" "Kreis- und Bogenformen lineare Annäherung." -#: flatcamGUI/FlatCAMGUI.py:5176 -msgid "Tools" -msgstr "Werkzeuge" +#: flatcamGUI/FlatCAMGUI.py:5159 +msgid "Tools:" +msgstr "Werkzeuge:" -#: flatcamGUI/FlatCAMGUI.py:5183 -msgid "Tool dia: " -msgstr "Werkzeugdurchmesser:" +#: flatcamGUI/FlatCAMGUI.py:5165 flatcamGUI/FlatCAMGUI.py:5774 +msgid "Diameters of the cutting tools, separated by ','" +msgstr "Durchmesser der Schneidwerkzeuge, getrennt durch ','" -#: flatcamGUI/FlatCAMGUI.py:5185 -msgid "" -"The diameter of the cutting\n" -"tool.." -msgstr "" -"Der Durchmesser des Schnitts\n" -"Werkzeug.." - -#: flatcamGUI/FlatCAMGUI.py:5200 +#: flatcamGUI/FlatCAMGUI.py:5179 msgid "Geometry Options" msgstr "Geometrieoptionen" -#: flatcamGUI/FlatCAMGUI.py:5205 +#: flatcamGUI/FlatCAMGUI.py:5184 msgid "Create CNC Job:" msgstr "CNC-Auftrag erstellen:" -#: flatcamGUI/FlatCAMGUI.py:5207 +#: flatcamGUI/FlatCAMGUI.py:5186 msgid "" "Create a CNC Job object\n" "tracing the contours of this\n" @@ -7677,7 +7669,7 @@ msgstr "" "die Konturen davon nachzeichnen\n" "Geometrieobjekt." -#: flatcamGUI/FlatCAMGUI.py:5219 flatcamGUI/ObjectUI.py:1065 +#: flatcamGUI/FlatCAMGUI.py:5198 flatcamGUI/ObjectUI.py:1065 msgid "" "Cutting depth (negative)\n" "below the copper surface." @@ -7685,19 +7677,19 @@ msgstr "" "Schnitttiefe (negativ)\n" "unter der Kupferoberfläche." -#: flatcamGUI/FlatCAMGUI.py:5227 +#: flatcamGUI/FlatCAMGUI.py:5206 msgid "Multidepth" msgstr "Mehrere tiefe" -#: flatcamGUI/FlatCAMGUI.py:5229 +#: flatcamGUI/FlatCAMGUI.py:5208 msgid "Multidepth usage: True or False." msgstr "Mehrere Tiefe-Nutzung: Richtig oder Falsch." -#: flatcamGUI/FlatCAMGUI.py:5234 +#: flatcamGUI/FlatCAMGUI.py:5213 msgid "Depth/Pass:" msgstr "Tiefe / Pass:" -#: flatcamGUI/FlatCAMGUI.py:5236 +#: flatcamGUI/FlatCAMGUI.py:5215 msgid "" "The depth to cut on each pass,\n" "when multidepth is enabled.\n" @@ -7711,7 +7703,7 @@ msgstr "" "es ist ein Bruch aus der Tiefe\n" "was einen negativen Wert hat." -#: flatcamGUI/FlatCAMGUI.py:5252 flatcamGUI/ObjectUI.py:1101 +#: flatcamGUI/FlatCAMGUI.py:5231 flatcamGUI/ObjectUI.py:1101 msgid "" "Height of the tool when\n" "moving without cutting." @@ -7719,11 +7711,11 @@ msgstr "" "Höhe des Werkzeugs, wenn\n" "bewegen ohne zu schneiden" -#: flatcamGUI/FlatCAMGUI.py:5279 flatcamGUI/ObjectUI.py:1156 +#: flatcamGUI/FlatCAMGUI.py:5258 flatcamGUI/ObjectUI.py:1156 msgid "Feed Rate X-Y:" msgstr "Vorschubrate X-Y:" -#: flatcamGUI/FlatCAMGUI.py:5281 flatcamGUI/ObjectUI.py:1159 +#: flatcamGUI/FlatCAMGUI.py:5260 flatcamGUI/ObjectUI.py:1159 msgid "" "Cutting speed in the XY\n" "plane in units per minute" @@ -7731,11 +7723,11 @@ msgstr "" "Schnittgeschwindigkeit im XY\n" "Flugzeug in Einheiten pro Minute" -#: flatcamGUI/FlatCAMGUI.py:5289 +#: flatcamGUI/FlatCAMGUI.py:5268 msgid "Feed Rate Z:" msgstr "Vorschubrate Z:" -#: flatcamGUI/FlatCAMGUI.py:5291 +#: flatcamGUI/FlatCAMGUI.py:5270 msgid "" "Cutting speed in the XY\n" "plane in units per minute.\n" @@ -7745,12 +7737,12 @@ msgstr "" "Flugzeug in Einheiten pro Minute.\n" "Es heißt auch Sturz." -#: flatcamGUI/FlatCAMGUI.py:5300 flatcamGUI/ObjectUI.py:682 +#: flatcamGUI/FlatCAMGUI.py:5279 flatcamGUI/ObjectUI.py:682 #: flatcamGUI/ObjectUI.py:1211 msgid "Spindle speed:" msgstr "Spulengeschwindigkeit:" -#: flatcamGUI/FlatCAMGUI.py:5343 +#: flatcamGUI/FlatCAMGUI.py:5322 msgid "" "The postprocessor file that dictates\n" "Machine Code output." @@ -7758,11 +7750,11 @@ msgstr "" "Die Postprozessor-Datei, die diktiert\n" "Maschinencode-Ausgabe." -#: flatcamGUI/FlatCAMGUI.py:5359 +#: flatcamGUI/FlatCAMGUI.py:5338 msgid "Geometry Adv. Options" msgstr "Geometrie Erw. Optionen" -#: flatcamGUI/FlatCAMGUI.py:5366 +#: flatcamGUI/FlatCAMGUI.py:5345 msgid "" "Parameters to create a CNC Job object\n" "tracing the contours of a Geometry object." @@ -7770,7 +7762,7 @@ msgstr "" "Parameter zum Erstellen eines CNC-Auftragsobjekts\n" "Verfolgung der Konturen eines Geometrieobjekts." -#: flatcamGUI/FlatCAMGUI.py:5386 +#: flatcamGUI/FlatCAMGUI.py:5365 msgid "" "Height of the tool just after starting the work.\n" "Delete the value if you don't need this feature." @@ -7778,7 +7770,7 @@ msgstr "" "Höhe des Werkzeugs unmittelbar nach Beginn der Arbeit.\n" "Löschen Sie den Wert, wenn Sie diese Funktion nicht benötigen." -#: flatcamGUI/FlatCAMGUI.py:5406 +#: flatcamGUI/FlatCAMGUI.py:5385 msgid "" "Cutting speed in the XY plane\n" "(in units per minute).\n" @@ -7792,11 +7784,11 @@ msgstr "" "Es ist nur für Marlin nützlich,\n" "für andere Fälle ignorieren." -#: flatcamGUI/FlatCAMGUI.py:5418 +#: flatcamGUI/FlatCAMGUI.py:5397 msgid "Re-cut 1st pt." msgstr "1. Punkt erneut schneiden" -#: flatcamGUI/FlatCAMGUI.py:5420 flatcamGUI/ObjectUI.py:1202 +#: flatcamGUI/FlatCAMGUI.py:5399 flatcamGUI/ObjectUI.py:1202 msgid "" "In order to remove possible\n" "copper leftovers where first cut\n" @@ -7808,11 +7800,11 @@ msgstr "" "Beim letzten Schnitt treffen wir einen\n" "verlängerter Schnitt über dem ersten Schnittabschnitt." -#: flatcamGUI/FlatCAMGUI.py:5459 +#: flatcamGUI/FlatCAMGUI.py:5438 msgid "Seg. X size:" msgstr "Seg. X Größe:" -#: flatcamGUI/FlatCAMGUI.py:5461 +#: flatcamGUI/FlatCAMGUI.py:5440 msgid "" "The size of the trace segment on the X axis.\n" "Useful for auto-leveling.\n" @@ -7822,11 +7814,11 @@ msgstr "" "Nützlich für die automatische Nivellierung.\n" "Ein Wert von 0 bedeutet keine Segmentierung auf der X-Achse." -#: flatcamGUI/FlatCAMGUI.py:5470 +#: flatcamGUI/FlatCAMGUI.py:5449 msgid "Seg. Y size:" msgstr "Seg. Y Größe:" -#: flatcamGUI/FlatCAMGUI.py:5472 +#: flatcamGUI/FlatCAMGUI.py:5451 msgid "" "The size of the trace segment on the Y axis.\n" "Useful for auto-leveling.\n" @@ -7836,15 +7828,15 @@ msgstr "" "Nützlich für die automatische Nivellierung.\n" "Ein Wert von 0 bedeutet keine Segmentierung auf der Y-Achse." -#: flatcamGUI/FlatCAMGUI.py:5488 +#: flatcamGUI/FlatCAMGUI.py:5467 msgid "Geometry Editor" msgstr "Geo-Editor" -#: flatcamGUI/FlatCAMGUI.py:5493 +#: flatcamGUI/FlatCAMGUI.py:5472 msgid "A list of Geometry Editor parameters." msgstr "Eine Liste der Geometry Editor-Parameter." -#: flatcamGUI/FlatCAMGUI.py:5503 +#: flatcamGUI/FlatCAMGUI.py:5482 msgid "" "Set the number of selected geometry\n" "items above which the utility geometry\n" @@ -7858,20 +7850,20 @@ msgstr "" "Erhöht die Leistung beim Bewegen von a\n" "große Anzahl von geometrischen Elementen." -#: flatcamGUI/FlatCAMGUI.py:5522 +#: flatcamGUI/FlatCAMGUI.py:5501 msgid "CNC Job General" msgstr "CNC-Job Allgemein" -#: flatcamGUI/FlatCAMGUI.py:5535 flatcamGUI/ObjectUI.py:544 +#: flatcamGUI/FlatCAMGUI.py:5514 flatcamGUI/ObjectUI.py:544 #: flatcamGUI/ObjectUI.py:877 flatcamGUI/ObjectUI.py:1447 msgid "Plot Object" msgstr "Plotobjekt" -#: flatcamGUI/FlatCAMGUI.py:5542 +#: flatcamGUI/FlatCAMGUI.py:5521 msgid "Plot kind:" msgstr "Darstellungsart:" -#: flatcamGUI/FlatCAMGUI.py:5544 flatcamGUI/ObjectUI.py:1356 +#: flatcamGUI/FlatCAMGUI.py:5523 flatcamGUI/ObjectUI.py:1356 msgid "" "This selects the kind of geometries on the canvas to plot.\n" "Those can be either of type 'Travel' which means the moves\n" @@ -7884,11 +7876,11 @@ msgstr "" "über dem Werkstück oder es kann vom Typ 'Ausschneiden' sein,\n" "was bedeutet, dass die Bewegungen, die in das Material geschnitten werden." -#: flatcamGUI/FlatCAMGUI.py:5561 +#: flatcamGUI/FlatCAMGUI.py:5540 msgid "Display Annotation:" msgstr "Anmerkung anzeigen:" -#: flatcamGUI/FlatCAMGUI.py:5563 flatcamGUI/ObjectUI.py:1372 +#: flatcamGUI/FlatCAMGUI.py:5542 flatcamGUI/ObjectUI.py:1372 msgid "" "This selects if to display text annotation on the plot.\n" "When checked it will display numbers in order for each end\n" @@ -7900,23 +7892,23 @@ msgstr "" "richtigen Reihenfolge angezeigt\n" "einer Reiseleitung." -#: flatcamGUI/FlatCAMGUI.py:5575 +#: flatcamGUI/FlatCAMGUI.py:5554 msgid "Annotation Size:" msgstr "Anmerkungsgröße:" -#: flatcamGUI/FlatCAMGUI.py:5577 +#: flatcamGUI/FlatCAMGUI.py:5556 msgid "The font size of the annotation text. In pixels." msgstr "Die Schriftgröße des Anmerkungstextes. In Pixeln." -#: flatcamGUI/FlatCAMGUI.py:5585 +#: flatcamGUI/FlatCAMGUI.py:5564 msgid "Annotation Color:" msgstr "Anmerkungsfarbe:" -#: flatcamGUI/FlatCAMGUI.py:5587 +#: flatcamGUI/FlatCAMGUI.py:5566 msgid "Set the font color for the annotation texts." msgstr "Legen Sie die Schriftfarbe für die Anmerkungstexte fest." -#: flatcamGUI/FlatCAMGUI.py:5610 +#: flatcamGUI/FlatCAMGUI.py:5589 msgid "" "The number of circle steps for GCode \n" "circle and arc shapes linear approximation." @@ -7924,7 +7916,7 @@ msgstr "" "Die Anzahl der Kreisschritte für GCode\n" "Kreis- und Bogenformen lineare Annäherung." -#: flatcamGUI/FlatCAMGUI.py:5620 +#: flatcamGUI/FlatCAMGUI.py:5599 msgid "" "Diameter of the tool to be\n" "rendered in the plot." @@ -7932,11 +7924,11 @@ msgstr "" "Durchmesser des Werkzeugs sein\n" "in der Handlung gerendert." -#: flatcamGUI/FlatCAMGUI.py:5628 +#: flatcamGUI/FlatCAMGUI.py:5607 msgid "Coords dec.:" msgstr "Koordinate Dezimalzahlen:" -#: flatcamGUI/FlatCAMGUI.py:5630 +#: flatcamGUI/FlatCAMGUI.py:5609 msgid "" "The number of decimals to be used for \n" "the X, Y, Z coordinates in CNC code (GCODE, etc.)" @@ -7944,11 +7936,11 @@ msgstr "" "Die Anzahl der Dezimalstellen, für die verwendet werden soll\n" "die X-, Y-, Z-Koordinaten im CNC-Code (GCODE usw.)" -#: flatcamGUI/FlatCAMGUI.py:5638 +#: flatcamGUI/FlatCAMGUI.py:5617 msgid "Feedrate dec.:" msgstr "Vorschub-Nachkommastellen:" -#: flatcamGUI/FlatCAMGUI.py:5640 +#: flatcamGUI/FlatCAMGUI.py:5619 msgid "" "The number of decimals to be used for \n" "the Feedrate parameter in CNC code (GCODE, etc.)" @@ -7956,15 +7948,15 @@ msgstr "" "Die Anzahl der Dezimalstellen, für die verwendet werden soll\n" "der Vorschubparameter im CNC-Code (GCODE usw.)" -#: flatcamGUI/FlatCAMGUI.py:5655 +#: flatcamGUI/FlatCAMGUI.py:5634 msgid "CNC Job Options" msgstr "CNC-Auftragsoptionen" -#: flatcamGUI/FlatCAMGUI.py:5658 flatcamGUI/FlatCAMGUI.py:5699 +#: flatcamGUI/FlatCAMGUI.py:5637 flatcamGUI/FlatCAMGUI.py:5678 msgid "Export G-Code:" msgstr "G-Code exportieren:" -#: flatcamGUI/FlatCAMGUI.py:5660 flatcamGUI/FlatCAMGUI.py:5701 +#: flatcamGUI/FlatCAMGUI.py:5639 flatcamGUI/FlatCAMGUI.py:5680 #: flatcamGUI/ObjectUI.py:1483 msgid "" "Export and save G-Code to\n" @@ -7973,11 +7965,11 @@ msgstr "" "Exportieren und speichern Sie den G-Code nach\n" "Machen Sie dieses Objekt in eine Datei." -#: flatcamGUI/FlatCAMGUI.py:5666 +#: flatcamGUI/FlatCAMGUI.py:5645 msgid "Prepend to G-Code:" msgstr "Voranstellen an G-Code:" -#: flatcamGUI/FlatCAMGUI.py:5668 +#: flatcamGUI/FlatCAMGUI.py:5647 msgid "" "Type here any G-Code commands you would\n" "like to add at the beginning of the G-Code file." @@ -7985,11 +7977,11 @@ msgstr "" "Geben Sie hier alle G-Code-Befehle ein\n" "gerne am Anfang der G-Code-Datei hinzufügen." -#: flatcamGUI/FlatCAMGUI.py:5677 +#: flatcamGUI/FlatCAMGUI.py:5656 msgid "Append to G-Code:" msgstr "An G-Code anhängen:" -#: flatcamGUI/FlatCAMGUI.py:5679 flatcamGUI/ObjectUI.py:1505 +#: flatcamGUI/FlatCAMGUI.py:5658 flatcamGUI/ObjectUI.py:1505 msgid "" "Type here any G-Code commands you would\n" "like to append to the generated file.\n" @@ -7999,15 +7991,15 @@ msgstr "" "gerne an die generierte Datei anhängen.\n" "I.e .: M2 (Programmende)" -#: flatcamGUI/FlatCAMGUI.py:5696 +#: flatcamGUI/FlatCAMGUI.py:5675 msgid "CNC Job Adv. Options" msgstr "Erw. CNC-Joboptionen" -#: flatcamGUI/FlatCAMGUI.py:5707 flatcamGUI/ObjectUI.py:1523 +#: flatcamGUI/FlatCAMGUI.py:5686 flatcamGUI/ObjectUI.py:1523 msgid "Toolchange G-Code:" msgstr "Werkzeugwechsel G-Code:" -#: flatcamGUI/FlatCAMGUI.py:5709 +#: flatcamGUI/FlatCAMGUI.py:5688 msgid "" "Type here any G-Code commands you would\n" "like to be executed when Toolchange event is encountered.\n" @@ -8019,11 +8011,11 @@ msgstr "" "Dies stellt einen benutzerdefinierten Werkzeugwechsel-GCode dar.\n" "oder ein Werkzeugwechsel-Makro." -#: flatcamGUI/FlatCAMGUI.py:5723 flatcamGUI/ObjectUI.py:1545 +#: flatcamGUI/FlatCAMGUI.py:5702 flatcamGUI/ObjectUI.py:1545 msgid "Use Toolchange Macro" msgstr "Benutze das Werkzeugwechselmakro" -#: flatcamGUI/FlatCAMGUI.py:5725 flatcamGUI/ObjectUI.py:1548 +#: flatcamGUI/FlatCAMGUI.py:5704 flatcamGUI/ObjectUI.py:1548 msgid "" "Check this box if you want to use\n" "a Custom Toolchange GCode (macro)." @@ -8031,7 +8023,7 @@ msgstr "" "Aktivieren Sie dieses Kontrollkästchen, wenn Sie verwenden möchten\n" "ein benutzerdefiniertes Werkzeug ändert GCode (Makro)." -#: flatcamGUI/FlatCAMGUI.py:5737 flatcamGUI/ObjectUI.py:1557 +#: flatcamGUI/FlatCAMGUI.py:5716 flatcamGUI/ObjectUI.py:1557 msgid "" "A list of the FlatCAM variables that can be used\n" "in the Toolchange event.\n" @@ -8041,73 +8033,69 @@ msgstr "" "im Werkzeugwechselereignis.\n" "Sie müssen mit dem \"%\" -Symbol umgeben sein" -#: flatcamGUI/FlatCAMGUI.py:5744 flatcamGUI/ObjectUI.py:1564 +#: flatcamGUI/FlatCAMGUI.py:5723 flatcamGUI/ObjectUI.py:1564 msgid "Parameters" msgstr "Parameters" -#: flatcamGUI/FlatCAMGUI.py:5747 flatcamGUI/ObjectUI.py:1567 +#: flatcamGUI/FlatCAMGUI.py:5726 flatcamGUI/ObjectUI.py:1567 msgid "FlatCAM CNC parameters" msgstr "FlatCAM CNC-Parameter" -#: flatcamGUI/FlatCAMGUI.py:5748 flatcamGUI/ObjectUI.py:1568 +#: flatcamGUI/FlatCAMGUI.py:5727 flatcamGUI/ObjectUI.py:1568 msgid "tool = tool number" msgstr "tool = Werkzeugnummer" -#: flatcamGUI/FlatCAMGUI.py:5749 flatcamGUI/ObjectUI.py:1569 +#: flatcamGUI/FlatCAMGUI.py:5728 flatcamGUI/ObjectUI.py:1569 msgid "tooldia = tool diameter" msgstr "tooldia = Werkzeugdurchmesser" -#: flatcamGUI/FlatCAMGUI.py:5750 flatcamGUI/ObjectUI.py:1570 +#: flatcamGUI/FlatCAMGUI.py:5729 flatcamGUI/ObjectUI.py:1570 msgid "t_drills = for Excellon, total number of drills" msgstr "t_drills = für Excellon die Gesamtzahl der Bohrer" -#: flatcamGUI/FlatCAMGUI.py:5751 flatcamGUI/ObjectUI.py:1571 +#: flatcamGUI/FlatCAMGUI.py:5730 flatcamGUI/ObjectUI.py:1571 msgid "x_toolchange = X coord for Toolchange" msgstr "x_toolchange = X-Koord für Werkzeugwechsel" -#: flatcamGUI/FlatCAMGUI.py:5752 flatcamGUI/ObjectUI.py:1572 +#: flatcamGUI/FlatCAMGUI.py:5731 flatcamGUI/ObjectUI.py:1572 msgid "y_toolchange = Y coord for Toolchange" msgstr "y_toolchange = Y-Koord für Werkzeugwechsel" -#: flatcamGUI/FlatCAMGUI.py:5753 flatcamGUI/ObjectUI.py:1573 +#: flatcamGUI/FlatCAMGUI.py:5732 flatcamGUI/ObjectUI.py:1573 msgid "z_toolchange = Z coord for Toolchange" msgstr "z_toolchange = Z-Koord für Werkzeugwechsel" -#: flatcamGUI/FlatCAMGUI.py:5754 +#: flatcamGUI/FlatCAMGUI.py:5733 msgid "z_cut = Z depth for the cut" msgstr "z_cut = Z Tiefe für den Schnitt" -#: flatcamGUI/FlatCAMGUI.py:5755 +#: flatcamGUI/FlatCAMGUI.py:5734 msgid "z_move = Z height for travel" msgstr "z_move = Z Höhe für die Reise" -#: flatcamGUI/FlatCAMGUI.py:5756 flatcamGUI/ObjectUI.py:1576 +#: flatcamGUI/FlatCAMGUI.py:5735 flatcamGUI/ObjectUI.py:1576 msgid "z_depthpercut = the step value for multidepth cut" msgstr "z_depthpercut =der Schrittwert für den mehrstufigen Schnitt" -#: flatcamGUI/FlatCAMGUI.py:5757 flatcamGUI/ObjectUI.py:1577 +#: flatcamGUI/FlatCAMGUI.py:5736 flatcamGUI/ObjectUI.py:1577 msgid "spindlesspeed = the value for the spindle speed" msgstr "spindlesspeed =der Wert für die Spindeldrehzahl" -#: flatcamGUI/FlatCAMGUI.py:5759 flatcamGUI/ObjectUI.py:1578 +#: flatcamGUI/FlatCAMGUI.py:5738 flatcamGUI/ObjectUI.py:1578 msgid "dwelltime = time to dwell to allow the spindle to reach it's set RPM" msgstr "" "dwelltime = Zeit zum Verweilen, damit die Spindel ihre eingestellte Drehzahl " "erreicht" -#: flatcamGUI/FlatCAMGUI.py:5780 +#: flatcamGUI/FlatCAMGUI.py:5759 msgid "NCC Tool Options" msgstr "NCC-Tooloptionen" -#: flatcamGUI/FlatCAMGUI.py:5793 flatcamGUI/FlatCAMGUI.py:6523 +#: flatcamGUI/FlatCAMGUI.py:5772 flatcamGUI/FlatCAMGUI.py:6502 msgid "Tools dia:" msgstr "Werkzeug durchmesser:" -#: flatcamGUI/FlatCAMGUI.py:5795 -msgid "Diameters of the cutting tools, separated by ','" -msgstr "Durchmesser der Schneidwerkzeuge, getrennt durch ','" - -#: flatcamGUI/FlatCAMGUI.py:5803 flatcamTools/ToolNonCopperClear.py:167 +#: flatcamGUI/FlatCAMGUI.py:5782 flatcamTools/ToolNonCopperClear.py:167 #, python-format msgid "" "How much (fraction) of the tool width to overlap each tool pass.\n" @@ -8136,11 +8124,11 @@ msgstr "" "Höhere Werte = langsame Bearbeitung und langsame Ausführung auf der CNC\n" "wegen zu vieler Wege." -#: flatcamGUI/FlatCAMGUI.py:5819 flatcamTools/ToolNonCopperClear.py:183 +#: flatcamGUI/FlatCAMGUI.py:5798 flatcamTools/ToolNonCopperClear.py:183 msgid "Bounding box margin." msgstr "Begrenzungsrahmenrand." -#: flatcamGUI/FlatCAMGUI.py:5828 flatcamTools/ToolNonCopperClear.py:192 +#: flatcamGUI/FlatCAMGUI.py:5807 flatcamTools/ToolNonCopperClear.py:192 #: flatcamTools/ToolPaint.py:190 msgid "" "Algorithm for non-copper clearing:
Standard: Fixed step inwards." @@ -8151,12 +8139,12 @@ msgstr "" "Schritt nach innen. Seed-based : Ausgehend vom Saatgut.
" "Line-based: Parallele Linien." -#: flatcamGUI/FlatCAMGUI.py:5860 flatcamTools/ToolNonCopperClear.py:224 +#: flatcamGUI/FlatCAMGUI.py:5839 flatcamTools/ToolNonCopperClear.py:224 #: flatcamTools/ToolPaint.py:222 msgid "Rest M.:" msgstr "Rest M.:" -#: flatcamGUI/FlatCAMGUI.py:5862 +#: flatcamGUI/FlatCAMGUI.py:5841 msgid "" "If checked, use 'rest machining'.\n" "Basically it will clear copper outside PCB features,\n" @@ -8172,11 +8160,11 @@ msgstr "" "konnte nicht mit dem vorherigen Tool gelöscht werden.\n" "Wenn nicht aktiviert, verwenden Sie den Standardalgorithmus." -#: flatcamGUI/FlatCAMGUI.py:5881 +#: flatcamGUI/FlatCAMGUI.py:5860 msgid "Cutout Tool Options" msgstr "Ausschnittwerkzeug-Optionen" -#: flatcamGUI/FlatCAMGUI.py:5886 flatcamGUI/ObjectUI.py:402 +#: flatcamGUI/FlatCAMGUI.py:5865 flatcamGUI/ObjectUI.py:402 msgid "" "Create toolpaths to cut around\n" "the PCB and separate it from\n" @@ -8186,7 +8174,7 @@ msgstr "" "die PCB und trennen Sie es von\n" "das ursprüngliche Brett." -#: flatcamGUI/FlatCAMGUI.py:5905 +#: flatcamGUI/FlatCAMGUI.py:5884 msgid "" "Distance from objects at which\n" "to draw the cutout." @@ -8194,11 +8182,11 @@ msgstr "" "Entfernung von Objekten bei denen\n" "den Ausschnitt zeichnen." -#: flatcamGUI/FlatCAMGUI.py:5912 flatcamTools/ToolCutOut.py:96 +#: flatcamGUI/FlatCAMGUI.py:5891 flatcamTools/ToolCutOut.py:96 msgid "Gap size:" msgstr "Spaltgröße:" -#: flatcamGUI/FlatCAMGUI.py:5914 +#: flatcamGUI/FlatCAMGUI.py:5893 msgid "" "Size of the gaps in the toolpath\n" "that will remain to hold the\n" @@ -8208,11 +8196,11 @@ msgstr "" "das wird bleiben, um das zu halten\n" "Board an Ort und Stelle." -#: flatcamGUI/FlatCAMGUI.py:5922 flatcamTools/ToolCutOut.py:134 +#: flatcamGUI/FlatCAMGUI.py:5901 flatcamTools/ToolCutOut.py:134 msgid "Gaps:" msgstr "Spalt:" -#: flatcamGUI/FlatCAMGUI.py:5924 +#: flatcamGUI/FlatCAMGUI.py:5903 msgid "" "Number of bridge gaps used for the cutout.\n" "There can be maximum 8 bridges/gaps.\n" @@ -8234,19 +8222,19 @@ msgstr "" "- 2 tb \t- 2 * oben + 2 * unten\n" "- 8 \t- 2 * links + 2 * rechts + 2 * oben + 2 * unten" -#: flatcamGUI/FlatCAMGUI.py:5945 flatcamTools/ToolCutOut.py:115 +#: flatcamGUI/FlatCAMGUI.py:5924 flatcamTools/ToolCutOut.py:115 msgid "Convex Sh.:" msgstr "Konvexe Form .:" -#: flatcamGUI/FlatCAMGUI.py:5947 +#: flatcamGUI/FlatCAMGUI.py:5926 msgid "Create a convex shape surrounding the entire PCB." msgstr "Erstellen Sie eine konvexe Form, die die gesamte Leiterplatte umgibt." -#: flatcamGUI/FlatCAMGUI.py:5960 +#: flatcamGUI/FlatCAMGUI.py:5939 msgid "2Sided Tool Options" msgstr "2Seitige Werkzeugoptionen" -#: flatcamGUI/FlatCAMGUI.py:5965 +#: flatcamGUI/FlatCAMGUI.py:5944 msgid "" "A tool to help in creating a double sided\n" "PCB using alignment holes." @@ -8254,28 +8242,28 @@ msgstr "" "Ein Werkzeug, das beim Erstellen eines doppelseitigen Dokuments hilft\n" "PCB mit Ausrichtungslöchern." -#: flatcamGUI/FlatCAMGUI.py:5975 flatcamTools/ToolDblSided.py:235 +#: flatcamGUI/FlatCAMGUI.py:5954 flatcamTools/ToolDblSided.py:235 msgid "Drill diam.:" msgstr "Bohrdurchmesser:" -#: flatcamGUI/FlatCAMGUI.py:5977 flatcamTools/ToolDblSided.py:226 +#: flatcamGUI/FlatCAMGUI.py:5956 flatcamTools/ToolDblSided.py:226 #: flatcamTools/ToolDblSided.py:237 msgid "Diameter of the drill for the alignment holes." msgstr "Durchmesser des Bohrers für die Ausrichtungslöcher." -#: flatcamGUI/FlatCAMGUI.py:5986 flatcamTools/ToolDblSided.py:120 +#: flatcamGUI/FlatCAMGUI.py:5965 flatcamTools/ToolDblSided.py:120 msgid "Mirror Axis:" msgstr "Spiegelachse:" -#: flatcamGUI/FlatCAMGUI.py:5988 flatcamTools/ToolDblSided.py:122 +#: flatcamGUI/FlatCAMGUI.py:5967 flatcamTools/ToolDblSided.py:122 msgid "Mirror vertically (X) or horizontally (Y)." msgstr "Vertikal spiegeln (X) oder horizontal (Y)." -#: flatcamGUI/FlatCAMGUI.py:5999 flatcamTools/ToolDblSided.py:133 +#: flatcamGUI/FlatCAMGUI.py:5978 flatcamTools/ToolDblSided.py:133 msgid "Axis Ref:" msgstr "Achsenreferenz:" -#: flatcamGUI/FlatCAMGUI.py:6001 +#: flatcamGUI/FlatCAMGUI.py:5980 msgid "" "The axis should pass through a point or cut\n" " a specified box (in a Geometry object) in \n" @@ -8285,11 +8273,11 @@ msgstr "" "ein angegebenes Feld (in einem Geometrieobjekt) in\n" "die Mitte." -#: flatcamGUI/FlatCAMGUI.py:6017 +#: flatcamGUI/FlatCAMGUI.py:5996 msgid "Paint Tool Options" msgstr "Paint werkzeug-Optionen" -#: flatcamGUI/FlatCAMGUI.py:6024 flatcamGUI/ObjectUI.py:1305 +#: flatcamGUI/FlatCAMGUI.py:6003 flatcamGUI/ObjectUI.py:1305 msgid "" "Creates tool paths to cover the\n" "whole area of a polygon (remove\n" @@ -8301,7 +8289,7 @@ msgstr "" "alles Kupfer). Du wirst gefragt\n" "Klicken Sie auf das gewünschte Polygon." -#: flatcamGUI/FlatCAMGUI.py:6048 +#: flatcamGUI/FlatCAMGUI.py:6027 msgid "" "How much (fraction) of the tool\n" "width to overlap each tool pass." @@ -8309,19 +8297,19 @@ msgstr "" "Wie viel (Bruchteil) des Werkzeugs\n" "Breite, um jeden Werkzeugdurchgang zu überlappen." -#: flatcamGUI/FlatCAMGUI.py:6102 flatcamTools/ToolPaint.py:237 +#: flatcamGUI/FlatCAMGUI.py:6081 flatcamTools/ToolPaint.py:237 msgid "Selection:" msgstr "Auswahl:" -#: flatcamGUI/FlatCAMGUI.py:6104 +#: flatcamGUI/FlatCAMGUI.py:6083 msgid "How to select the polygons to paint." msgstr "So wählen Sie die Polygone zum Malen aus." -#: flatcamGUI/FlatCAMGUI.py:6122 +#: flatcamGUI/FlatCAMGUI.py:6101 msgid "Film Tool Options" msgstr "Filmwerkzeugoptionen" -#: flatcamGUI/FlatCAMGUI.py:6127 +#: flatcamGUI/FlatCAMGUI.py:6106 msgid "" "Create a PCB film from a Gerber or Geometry\n" "FlatCAM object.\n" @@ -8331,11 +8319,11 @@ msgstr "" "FlatCAM-Objekt\n" "Die Datei wird im SVG-Format gespeichert." -#: flatcamGUI/FlatCAMGUI.py:6138 flatcamTools/ToolFilm.py:116 +#: flatcamGUI/FlatCAMGUI.py:6117 flatcamTools/ToolFilm.py:116 msgid "Film Type:" msgstr "Filmtyp:" -#: flatcamGUI/FlatCAMGUI.py:6140 flatcamTools/ToolFilm.py:118 +#: flatcamGUI/FlatCAMGUI.py:6119 flatcamTools/ToolFilm.py:118 msgid "" "Generate a Positive black film or a Negative film.\n" "Positive means that it will print the features\n" @@ -8351,11 +8339,11 @@ msgstr "" "mit weiß auf einer schwarzen leinwand.\n" "Das Filmformat ist SVG." -#: flatcamGUI/FlatCAMGUI.py:6151 flatcamTools/ToolFilm.py:130 +#: flatcamGUI/FlatCAMGUI.py:6130 flatcamTools/ToolFilm.py:130 msgid "Border:" msgstr "Rand:" -#: flatcamGUI/FlatCAMGUI.py:6153 flatcamTools/ToolFilm.py:132 +#: flatcamGUI/FlatCAMGUI.py:6132 flatcamTools/ToolFilm.py:132 msgid "" "Specify a border around the object.\n" "Only for negative film.\n" @@ -8375,11 +8363,11 @@ msgstr "" "weiße Farbe wie der Rest und die mit der verwechseln kann\n" "Umgebung, wenn nicht für diese Grenze." -#: flatcamGUI/FlatCAMGUI.py:6166 flatcamTools/ToolFilm.py:144 +#: flatcamGUI/FlatCAMGUI.py:6145 flatcamTools/ToolFilm.py:144 msgid "Scale Stroke:" msgstr "Skalierungshub:" -#: flatcamGUI/FlatCAMGUI.py:6168 flatcamTools/ToolFilm.py:146 +#: flatcamGUI/FlatCAMGUI.py:6147 flatcamTools/ToolFilm.py:146 msgid "" "Scale the line stroke thickness of each feature in the SVG file.\n" "It means that the line that envelope each SVG feature will be thicker or " @@ -8391,11 +8379,11 @@ msgstr "" "dünner ist.\n" "Daher können die Feinheiten von diesem Parameter stärker beeinflusst werden." -#: flatcamGUI/FlatCAMGUI.py:6183 +#: flatcamGUI/FlatCAMGUI.py:6162 msgid "Panelize Tool Options" msgstr "Panelize Werkzeugoptionen" -#: flatcamGUI/FlatCAMGUI.py:6188 +#: flatcamGUI/FlatCAMGUI.py:6167 msgid "" "Create an object that contains an array of (x, y) elements,\n" "each element is a copy of the source object spaced\n" @@ -8405,11 +8393,11 @@ msgstr "" "Jedes Element ist eine Kopie des Quellobjekts\n" "in einem X-Abstand, Y-Abstand voneinander." -#: flatcamGUI/FlatCAMGUI.py:6199 flatcamTools/ToolPanelize.py:147 +#: flatcamGUI/FlatCAMGUI.py:6178 flatcamTools/ToolPanelize.py:147 msgid "Spacing cols:" msgstr "Abstandspalten:" -#: flatcamGUI/FlatCAMGUI.py:6201 flatcamTools/ToolPanelize.py:149 +#: flatcamGUI/FlatCAMGUI.py:6180 flatcamTools/ToolPanelize.py:149 msgid "" "Spacing between columns of the desired panel.\n" "In current units." @@ -8417,11 +8405,11 @@ msgstr "" "Abstand zwischen den Spalten des gewünschten Bereichs.\n" "In aktuellen Einheiten." -#: flatcamGUI/FlatCAMGUI.py:6209 flatcamTools/ToolPanelize.py:156 +#: flatcamGUI/FlatCAMGUI.py:6188 flatcamTools/ToolPanelize.py:156 msgid "Spacing rows:" msgstr "Abstand Reihen:" -#: flatcamGUI/FlatCAMGUI.py:6211 flatcamTools/ToolPanelize.py:158 +#: flatcamGUI/FlatCAMGUI.py:6190 flatcamTools/ToolPanelize.py:158 msgid "" "Spacing between rows of the desired panel.\n" "In current units." @@ -8429,27 +8417,27 @@ msgstr "" "Abstand zwischen den Reihen des gewünschten Feldes.\n" "In aktuellen Einheiten." -#: flatcamGUI/FlatCAMGUI.py:6219 flatcamTools/ToolPanelize.py:165 +#: flatcamGUI/FlatCAMGUI.py:6198 flatcamTools/ToolPanelize.py:165 msgid "Columns:" msgstr "Säulen:" -#: flatcamGUI/FlatCAMGUI.py:6221 flatcamTools/ToolPanelize.py:167 +#: flatcamGUI/FlatCAMGUI.py:6200 flatcamTools/ToolPanelize.py:167 msgid "Number of columns of the desired panel" msgstr "Anzahl der Spalten des gewünschten Bereichs" -#: flatcamGUI/FlatCAMGUI.py:6228 flatcamTools/ToolPanelize.py:173 +#: flatcamGUI/FlatCAMGUI.py:6207 flatcamTools/ToolPanelize.py:173 msgid "Rows:" msgstr "Reihen:" -#: flatcamGUI/FlatCAMGUI.py:6230 flatcamTools/ToolPanelize.py:175 +#: flatcamGUI/FlatCAMGUI.py:6209 flatcamTools/ToolPanelize.py:175 msgid "Number of rows of the desired panel" msgstr "Anzahl der Zeilen des gewünschten Panels" -#: flatcamGUI/FlatCAMGUI.py:6238 +#: flatcamGUI/FlatCAMGUI.py:6217 msgid "Panel Type:" msgstr "Panel-Typ:" -#: flatcamGUI/FlatCAMGUI.py:6240 +#: flatcamGUI/FlatCAMGUI.py:6219 msgid "" "Choose the type of object for the panel object:\n" "- Gerber\n" @@ -8459,11 +8447,11 @@ msgstr "" "- Gerber\n" "- Geometrie" -#: flatcamGUI/FlatCAMGUI.py:6249 +#: flatcamGUI/FlatCAMGUI.py:6228 msgid "Constrain within:" msgstr "Beschränkung innerhalb:" -#: flatcamGUI/FlatCAMGUI.py:6251 flatcamTools/ToolPanelize.py:195 +#: flatcamGUI/FlatCAMGUI.py:6230 flatcamTools/ToolPanelize.py:195 msgid "" "Area define by DX and DY within to constrain the panel.\n" "DX and DY values are in current units.\n" @@ -8477,11 +8465,11 @@ msgstr "" "Das letzte Panel enthält so viele Spalten und Zeilen wie\n" "Sie passen vollständig in den ausgewählten Bereich." -#: flatcamGUI/FlatCAMGUI.py:6260 flatcamTools/ToolPanelize.py:204 +#: flatcamGUI/FlatCAMGUI.py:6239 flatcamTools/ToolPanelize.py:204 msgid "Width (DX):" msgstr "Breite (DX):" -#: flatcamGUI/FlatCAMGUI.py:6262 flatcamTools/ToolPanelize.py:206 +#: flatcamGUI/FlatCAMGUI.py:6241 flatcamTools/ToolPanelize.py:206 msgid "" "The width (DX) within which the panel must fit.\n" "In current units." @@ -8489,11 +8477,11 @@ msgstr "" "Die Breite (DX), in die das Panel passen muss.\n" "In aktuellen Einheiten." -#: flatcamGUI/FlatCAMGUI.py:6269 flatcamTools/ToolPanelize.py:212 +#: flatcamGUI/FlatCAMGUI.py:6248 flatcamTools/ToolPanelize.py:212 msgid "Height (DY):" msgstr "Höhe (DY):" -#: flatcamGUI/FlatCAMGUI.py:6271 flatcamTools/ToolPanelize.py:214 +#: flatcamGUI/FlatCAMGUI.py:6250 flatcamTools/ToolPanelize.py:214 msgid "" "The height (DY)within which the panel must fit.\n" "In current units." @@ -8501,15 +8489,15 @@ msgstr "" "Die Höhe (DY), in die die Platte passen muss.\n" "In aktuellen Einheiten." -#: flatcamGUI/FlatCAMGUI.py:6285 +#: flatcamGUI/FlatCAMGUI.py:6264 msgid "Calculators Tool Options" msgstr "Rechner-Tool-Optionen" -#: flatcamGUI/FlatCAMGUI.py:6288 +#: flatcamGUI/FlatCAMGUI.py:6267 msgid "V-Shape Tool Calculator:" msgstr " V-Shape-Werkzeug Rechner: " -#: flatcamGUI/FlatCAMGUI.py:6290 +#: flatcamGUI/FlatCAMGUI.py:6269 msgid "" "Calculate the tool diameter for a given V-shape tool,\n" "having the tip diameter, tip angle and\n" @@ -8520,11 +8508,11 @@ msgstr "" "mit dem Spitzendurchmesser, Spitzenwinkel und\n" "Schnitttiefe als Parameter." -#: flatcamGUI/FlatCAMGUI.py:6301 flatcamTools/ToolCalculators.py:94 +#: flatcamGUI/FlatCAMGUI.py:6280 flatcamTools/ToolCalculators.py:94 msgid "Tip Diameter:" msgstr "Spitzendurchmesser" -#: flatcamGUI/FlatCAMGUI.py:6303 +#: flatcamGUI/FlatCAMGUI.py:6282 msgid "" "This is the tool tip diameter.\n" "It is specified by manufacturer." @@ -8532,11 +8520,11 @@ msgstr "" "Dies ist der Werkzeugspitzendurchmesser.\n" "Es wird vom Hersteller angegeben." -#: flatcamGUI/FlatCAMGUI.py:6311 +#: flatcamGUI/FlatCAMGUI.py:6290 msgid "Tip angle:" msgstr "Spitzenwinkel:" -#: flatcamGUI/FlatCAMGUI.py:6313 +#: flatcamGUI/FlatCAMGUI.py:6292 msgid "" "This is the angle on the tip of the tool.\n" "It is specified by manufacturer." @@ -8544,7 +8532,7 @@ msgstr "" "Dies ist der Winkel an der Spitze des Werkzeugs.\n" "Es wird vom Hersteller angegeben." -#: flatcamGUI/FlatCAMGUI.py:6323 +#: flatcamGUI/FlatCAMGUI.py:6302 msgid "" "This is depth to cut into material.\n" "In the CNCJob object it is the CutZ parameter." @@ -8552,11 +8540,11 @@ msgstr "" "Dies ist die Tiefe zum Schneiden in Material.\n" "Im CNCJob-Objekt ist dies der Parameter CutZ." -#: flatcamGUI/FlatCAMGUI.py:6330 +#: flatcamGUI/FlatCAMGUI.py:6309 msgid "ElectroPlating Calculator:" msgstr " Galvano-Rechner: " -#: flatcamGUI/FlatCAMGUI.py:6332 flatcamTools/ToolCalculators.py:152 +#: flatcamGUI/FlatCAMGUI.py:6311 flatcamTools/ToolCalculators.py:152 msgid "" "This calculator is useful for those who plate the via/pad/drill holes,\n" "using a method like grahite ink or calcium hypophosphite ink or palladium " @@ -8567,27 +8555,27 @@ msgstr "" "unter Verwendung einer Methode wie Grahit-Tinte oder Calcium-Hypophosphit-" "Tinte oder Palladiumchlorid." -#: flatcamGUI/FlatCAMGUI.py:6342 flatcamTools/ToolCalculators.py:161 +#: flatcamGUI/FlatCAMGUI.py:6321 flatcamTools/ToolCalculators.py:161 msgid "Board Length:" msgstr "PCB Länge:" -#: flatcamGUI/FlatCAMGUI.py:6344 flatcamTools/ToolCalculators.py:165 +#: flatcamGUI/FlatCAMGUI.py:6323 flatcamTools/ToolCalculators.py:165 msgid "This is the board length. In centimeters." msgstr "Dies ist die Boardlänge. In Zentimeter" -#: flatcamGUI/FlatCAMGUI.py:6350 flatcamTools/ToolCalculators.py:167 +#: flatcamGUI/FlatCAMGUI.py:6329 flatcamTools/ToolCalculators.py:167 msgid "Board Width:" msgstr "PCB Breite:" -#: flatcamGUI/FlatCAMGUI.py:6352 flatcamTools/ToolCalculators.py:171 +#: flatcamGUI/FlatCAMGUI.py:6331 flatcamTools/ToolCalculators.py:171 msgid "This is the board width.In centimeters." msgstr "Dies ist die Breite der Platte in Zentimetern." -#: flatcamGUI/FlatCAMGUI.py:6357 flatcamTools/ToolCalculators.py:173 +#: flatcamGUI/FlatCAMGUI.py:6336 flatcamTools/ToolCalculators.py:173 msgid "Current Density:" msgstr "Stromdichte:" -#: flatcamGUI/FlatCAMGUI.py:6360 flatcamTools/ToolCalculators.py:177 +#: flatcamGUI/FlatCAMGUI.py:6339 flatcamTools/ToolCalculators.py:177 msgid "" "Current density to pass through the board. \n" "In Amps per Square Feet ASF." @@ -8595,11 +8583,11 @@ msgstr "" "Stromdichte durch die Platine.\n" "In Ampere pro Quadratfuß ASF." -#: flatcamGUI/FlatCAMGUI.py:6366 flatcamTools/ToolCalculators.py:181 +#: flatcamGUI/FlatCAMGUI.py:6345 flatcamTools/ToolCalculators.py:181 msgid "Copper Growth:" msgstr "Kupferwachstum:" -#: flatcamGUI/FlatCAMGUI.py:6369 flatcamTools/ToolCalculators.py:185 +#: flatcamGUI/FlatCAMGUI.py:6348 flatcamTools/ToolCalculators.py:185 msgid "" "How thick the copper growth is intended to be.\n" "In microns." @@ -8607,11 +8595,11 @@ msgstr "" "Wie dick soll das Kupferwachstum sein.\n" "In Mikrometern" -#: flatcamGUI/FlatCAMGUI.py:6382 +#: flatcamGUI/FlatCAMGUI.py:6361 msgid "Transform Tool Options" msgstr "Umwandlungswerkzeug-Optionen" -#: flatcamGUI/FlatCAMGUI.py:6387 +#: flatcamGUI/FlatCAMGUI.py:6366 msgid "" "Various transformations that can be applied\n" "on a FlatCAM object." @@ -8619,47 +8607,47 @@ msgstr "" "Verschiedene Transformationen, die angewendet werden können\n" "auf einem FlatCAM-Objekt." -#: flatcamGUI/FlatCAMGUI.py:6397 +#: flatcamGUI/FlatCAMGUI.py:6376 msgid "Rotate Angle:" msgstr "Winkel drehen:" -#: flatcamGUI/FlatCAMGUI.py:6399 +#: flatcamGUI/FlatCAMGUI.py:6378 msgid "Angle for rotation. In degrees." msgstr "Drehwinkel. In grad." -#: flatcamGUI/FlatCAMGUI.py:6406 +#: flatcamGUI/FlatCAMGUI.py:6385 msgid "Skew_X angle:" msgstr "Neigungswinkel X:" -#: flatcamGUI/FlatCAMGUI.py:6408 +#: flatcamGUI/FlatCAMGUI.py:6387 msgid "Angle for Skew/Shear on X axis. In degrees." msgstr "Winkel für Neigung / Scherung auf der X-Achse. In grad." -#: flatcamGUI/FlatCAMGUI.py:6415 +#: flatcamGUI/FlatCAMGUI.py:6394 msgid "Skew_Y angle:" msgstr "Neigungswinkel Y:" -#: flatcamGUI/FlatCAMGUI.py:6417 +#: flatcamGUI/FlatCAMGUI.py:6396 msgid "Angle for Skew/Shear on Y axis. In degrees." msgstr "Winkel für Neigung / Scherung auf der Y-Achse. In grad." -#: flatcamGUI/FlatCAMGUI.py:6424 +#: flatcamGUI/FlatCAMGUI.py:6403 msgid "Scale_X factor:" msgstr "Skalierung des X-Faktors:" -#: flatcamGUI/FlatCAMGUI.py:6426 +#: flatcamGUI/FlatCAMGUI.py:6405 msgid "Factor for scaling on X axis." msgstr "Faktor für die Skalierung auf der X-Achse." -#: flatcamGUI/FlatCAMGUI.py:6433 +#: flatcamGUI/FlatCAMGUI.py:6412 msgid "Scale_Y factor:" msgstr "Skalierung des Y-Faktors:" -#: flatcamGUI/FlatCAMGUI.py:6435 +#: flatcamGUI/FlatCAMGUI.py:6414 msgid "Factor for scaling on Y axis." msgstr "Faktor für die Skalierung auf der Y-Achse." -#: flatcamGUI/FlatCAMGUI.py:6443 +#: flatcamGUI/FlatCAMGUI.py:6422 msgid "" "Scale the selected object(s)\n" "using the Scale_X factor for both axis." @@ -8667,7 +8655,7 @@ msgstr "" "Skalieren Sie die ausgewählten Objekte\n" "Verwenden des Skalierungsfaktors X für beide Achsen." -#: flatcamGUI/FlatCAMGUI.py:6451 flatcamTools/ToolTransform.py:210 +#: flatcamGUI/FlatCAMGUI.py:6430 flatcamTools/ToolTransform.py:210 msgid "" "Scale the selected object(s)\n" "using the origin reference when checked,\n" @@ -8679,27 +8667,27 @@ msgstr "" "und die Mitte der größten Begrenzungsbox\n" "der ausgewählten Objekte, wenn sie nicht markiert sind." -#: flatcamGUI/FlatCAMGUI.py:6460 +#: flatcamGUI/FlatCAMGUI.py:6439 msgid "Offset_X val:" msgstr "Offset X Wert:" -#: flatcamGUI/FlatCAMGUI.py:6462 +#: flatcamGUI/FlatCAMGUI.py:6441 msgid "Distance to offset on X axis. In current units." msgstr "Abstand zum Offset auf der X-Achse. In aktuellen Einheiten." -#: flatcamGUI/FlatCAMGUI.py:6469 +#: flatcamGUI/FlatCAMGUI.py:6448 msgid "Offset_Y val:" msgstr "Offset Y-Wert:" -#: flatcamGUI/FlatCAMGUI.py:6471 +#: flatcamGUI/FlatCAMGUI.py:6450 msgid "Distance to offset on Y axis. In current units." msgstr "Abstand zum Offset auf der Y-Achse. In aktuellen Einheiten." -#: flatcamGUI/FlatCAMGUI.py:6477 +#: flatcamGUI/FlatCAMGUI.py:6456 msgid "Mirror Reference" msgstr "Spiegelreferenz" -#: flatcamGUI/FlatCAMGUI.py:6479 flatcamTools/ToolTransform.py:314 +#: flatcamGUI/FlatCAMGUI.py:6458 flatcamTools/ToolTransform.py:314 msgid "" "Flip the selected object(s)\n" "around the point in Point Entry Field.\n" @@ -8722,11 +8710,11 @@ msgstr "" "Oder geben Sie die Koordinaten im Format (x, y) in ein\n" "Punkt-Eingabefeld und klicken Sie auf X (Y) drehen" -#: flatcamGUI/FlatCAMGUI.py:6490 +#: flatcamGUI/FlatCAMGUI.py:6469 msgid " Mirror Ref. Point:" msgstr "Spiegelref. Punkt:" -#: flatcamGUI/FlatCAMGUI.py:6492 flatcamTools/ToolTransform.py:327 +#: flatcamGUI/FlatCAMGUI.py:6471 flatcamTools/ToolTransform.py:327 msgid "" "Coordinates in format (x, y) used as reference for mirroring.\n" "The 'x' in (x, y) will be used when using Flip on X and\n" @@ -8737,11 +8725,11 @@ msgstr "" "Das 'x' in (x, y) wird verwendet, wenn Sie bei X und\n" "Das 'y' in (x, y) wird verwendet, wenn Flip auf Y und verwendet wird" -#: flatcamGUI/FlatCAMGUI.py:6509 +#: flatcamGUI/FlatCAMGUI.py:6488 msgid "SolderPaste Tool Options" msgstr "Lötpaste-Werkzeug-Optionen" -#: flatcamGUI/FlatCAMGUI.py:6514 +#: flatcamGUI/FlatCAMGUI.py:6493 msgid "" "A tool to create GCode for dispensing\n" "solder paste onto a PCB." @@ -8749,49 +8737,49 @@ msgstr "" "Ein Werkzeug zum Erstellen von GCode für die Ausgabe\n" "Lotpaste auf eine Leiterplatte." -#: flatcamGUI/FlatCAMGUI.py:6525 +#: flatcamGUI/FlatCAMGUI.py:6504 msgid "Diameters of nozzle tools, separated by ','" msgstr "Durchmesser der Düsenwerkzeuge, getrennt durch ','" -#: flatcamGUI/FlatCAMGUI.py:6532 +#: flatcamGUI/FlatCAMGUI.py:6511 msgid "New Nozzle Dia:" msgstr " Neuer Düsendurchmesser: " -#: flatcamGUI/FlatCAMGUI.py:6534 flatcamTools/ToolSolderPaste.py:103 +#: flatcamGUI/FlatCAMGUI.py:6513 flatcamTools/ToolSolderPaste.py:103 msgid "Diameter for the new Nozzle tool to add in the Tool Table" msgstr "" "Durchmesser für das neue Düsenwerkzeug, das in die Werkzeugtabelle eingefügt " "werden soll" -#: flatcamGUI/FlatCAMGUI.py:6542 flatcamTools/ToolSolderPaste.py:166 +#: flatcamGUI/FlatCAMGUI.py:6521 flatcamTools/ToolSolderPaste.py:166 msgid "Z Dispense Start:" msgstr "Z Dosierbeginn:" -#: flatcamGUI/FlatCAMGUI.py:6544 flatcamTools/ToolSolderPaste.py:168 +#: flatcamGUI/FlatCAMGUI.py:6523 flatcamTools/ToolSolderPaste.py:168 msgid "The height (Z) when solder paste dispensing starts." msgstr "Die Höhe (Z) bei der Lotpastendosierung." -#: flatcamGUI/FlatCAMGUI.py:6551 flatcamTools/ToolSolderPaste.py:174 +#: flatcamGUI/FlatCAMGUI.py:6530 flatcamTools/ToolSolderPaste.py:174 msgid "Z Dispense:" msgstr "Z-Abgabe:" -#: flatcamGUI/FlatCAMGUI.py:6553 flatcamTools/ToolSolderPaste.py:176 +#: flatcamGUI/FlatCAMGUI.py:6532 flatcamTools/ToolSolderPaste.py:176 msgid "The height (Z) when doing solder paste dispensing." msgstr "Die Höhe (Z) bei der Lotpastendosierung." -#: flatcamGUI/FlatCAMGUI.py:6560 flatcamTools/ToolSolderPaste.py:183 +#: flatcamGUI/FlatCAMGUI.py:6539 flatcamTools/ToolSolderPaste.py:183 msgid "Z Dispense Stop:" msgstr "Z Abgabestopp:" -#: flatcamGUI/FlatCAMGUI.py:6562 flatcamTools/ToolSolderPaste.py:185 +#: flatcamGUI/FlatCAMGUI.py:6541 flatcamTools/ToolSolderPaste.py:185 msgid "The height (Z) when solder paste dispensing stops." msgstr "Die Höhe (Z) bei der Lotpastendosierung stoppt." -#: flatcamGUI/FlatCAMGUI.py:6569 flatcamTools/ToolSolderPaste.py:191 +#: flatcamGUI/FlatCAMGUI.py:6548 flatcamTools/ToolSolderPaste.py:191 msgid "Z Travel:" msgstr "Z Reise:" -#: flatcamGUI/FlatCAMGUI.py:6571 flatcamTools/ToolSolderPaste.py:193 +#: flatcamGUI/FlatCAMGUI.py:6550 flatcamTools/ToolSolderPaste.py:193 msgid "" "The height (Z) for travel between pads\n" "(without dispensing solder paste)." @@ -8799,19 +8787,19 @@ msgstr "" "Die Höhe (Z) für den Weg zwischen Pads\n" "(ohne Lotpaste zu dosieren)." -#: flatcamGUI/FlatCAMGUI.py:6579 flatcamTools/ToolSolderPaste.py:200 +#: flatcamGUI/FlatCAMGUI.py:6558 flatcamTools/ToolSolderPaste.py:200 msgid "Z Toolchange:" msgstr "Z Werkzeugwechsel:" -#: flatcamGUI/FlatCAMGUI.py:6581 flatcamTools/ToolSolderPaste.py:202 +#: flatcamGUI/FlatCAMGUI.py:6560 flatcamTools/ToolSolderPaste.py:202 msgid "The height (Z) for tool (nozzle) change." msgstr "Die Höhe (Z) für Werkzeug (Düse) ändert sich." -#: flatcamGUI/FlatCAMGUI.py:6588 flatcamTools/ToolSolderPaste.py:208 +#: flatcamGUI/FlatCAMGUI.py:6567 flatcamTools/ToolSolderPaste.py:208 msgid "XY Toolchange:" msgstr "XY-Werkzeugwechsel:" -#: flatcamGUI/FlatCAMGUI.py:6590 flatcamTools/ToolSolderPaste.py:210 +#: flatcamGUI/FlatCAMGUI.py:6569 flatcamTools/ToolSolderPaste.py:210 msgid "" "The X,Y location for tool (nozzle) change.\n" "The format is (x, y) where x and y are real numbers." @@ -8819,19 +8807,19 @@ msgstr "" "Die X, Y-Position für Werkzeug (Düse) ändert sich.\n" "Das Format ist (x, y), wobei x und y reelle Zahlen sind." -#: flatcamGUI/FlatCAMGUI.py:6598 flatcamTools/ToolSolderPaste.py:217 +#: flatcamGUI/FlatCAMGUI.py:6577 flatcamTools/ToolSolderPaste.py:217 msgid "Feedrate X-Y:" msgstr "Vorschub X-Y:" -#: flatcamGUI/FlatCAMGUI.py:6600 flatcamTools/ToolSolderPaste.py:219 +#: flatcamGUI/FlatCAMGUI.py:6579 flatcamTools/ToolSolderPaste.py:219 msgid "Feedrate (speed) while moving on the X-Y plane." msgstr "Vorschub (Geschwindigkeit) während der Bewegung auf der X-Y-Ebene." -#: flatcamGUI/FlatCAMGUI.py:6607 flatcamTools/ToolSolderPaste.py:225 +#: flatcamGUI/FlatCAMGUI.py:6586 flatcamTools/ToolSolderPaste.py:225 msgid "Feedrate Z:" msgstr "Vorschub Z:" -#: flatcamGUI/FlatCAMGUI.py:6609 flatcamTools/ToolSolderPaste.py:227 +#: flatcamGUI/FlatCAMGUI.py:6588 flatcamTools/ToolSolderPaste.py:227 msgid "" "Feedrate (speed) while moving vertically\n" "(on Z plane)." @@ -8839,11 +8827,11 @@ msgstr "" "Vorschub (Geschwindigkeit) bei vertikaler Bewegung\n" "(auf der Z-Ebene)." -#: flatcamGUI/FlatCAMGUI.py:6617 flatcamTools/ToolSolderPaste.py:234 +#: flatcamGUI/FlatCAMGUI.py:6596 flatcamTools/ToolSolderPaste.py:234 msgid "Feedrate Z Dispense:" msgstr "Vorschub Z Dosierung:" -#: flatcamGUI/FlatCAMGUI.py:6619 +#: flatcamGUI/FlatCAMGUI.py:6598 msgid "" "Feedrate (speed) while moving up vertically\n" "to Dispense position (on Z plane)." @@ -8851,11 +8839,11 @@ msgstr "" "Vorschub (Geschwindigkeit) bei vertikaler Aufwärtsbewegung\n" "in Ausgabeposition (in der Z-Ebene)." -#: flatcamGUI/FlatCAMGUI.py:6627 flatcamTools/ToolSolderPaste.py:243 +#: flatcamGUI/FlatCAMGUI.py:6606 flatcamTools/ToolSolderPaste.py:243 msgid "Spindle Speed FWD:" msgstr "Spindeldrehzahl FWD:" -#: flatcamGUI/FlatCAMGUI.py:6629 flatcamTools/ToolSolderPaste.py:245 +#: flatcamGUI/FlatCAMGUI.py:6608 flatcamTools/ToolSolderPaste.py:245 msgid "" "The dispenser speed while pushing solder paste\n" "through the dispenser nozzle." @@ -8863,19 +8851,19 @@ msgstr "" "Die Spendergeschwindigkeit beim Schieben der Lötpaste\n" "durch die Spenderdüse." -#: flatcamGUI/FlatCAMGUI.py:6637 flatcamTools/ToolSolderPaste.py:252 +#: flatcamGUI/FlatCAMGUI.py:6616 flatcamTools/ToolSolderPaste.py:252 msgid "Dwell FWD:" msgstr "Verweilzeit FWD:" -#: flatcamGUI/FlatCAMGUI.py:6639 flatcamTools/ToolSolderPaste.py:254 +#: flatcamGUI/FlatCAMGUI.py:6618 flatcamTools/ToolSolderPaste.py:254 msgid "Pause after solder dispensing." msgstr "Pause nach dem Löten." -#: flatcamGUI/FlatCAMGUI.py:6646 flatcamTools/ToolSolderPaste.py:260 +#: flatcamGUI/FlatCAMGUI.py:6625 flatcamTools/ToolSolderPaste.py:260 msgid "Spindle Speed REV:" msgstr "Spindeldrehzahl REV:" -#: flatcamGUI/FlatCAMGUI.py:6648 flatcamTools/ToolSolderPaste.py:262 +#: flatcamGUI/FlatCAMGUI.py:6627 flatcamTools/ToolSolderPaste.py:262 msgid "" "The dispenser speed while retracting solder paste\n" "through the dispenser nozzle." @@ -8883,11 +8871,11 @@ msgstr "" "Die Spendergeschwindigkeit beim Einfahren der Lötpaste\n" "durch die Spenderdüse." -#: flatcamGUI/FlatCAMGUI.py:6656 flatcamTools/ToolSolderPaste.py:269 +#: flatcamGUI/FlatCAMGUI.py:6635 flatcamTools/ToolSolderPaste.py:269 msgid "Dwell REV:" msgstr "Verweilen REV:" -#: flatcamGUI/FlatCAMGUI.py:6658 flatcamTools/ToolSolderPaste.py:271 +#: flatcamGUI/FlatCAMGUI.py:6637 flatcamTools/ToolSolderPaste.py:271 msgid "" "Pause after solder paste dispenser retracted,\n" "to allow pressure equilibrium." @@ -8895,23 +8883,23 @@ msgstr "" "Pause nachdem Lotpastendispenser eingefahren wurde,\n" "das Druckgleichgewicht zu ermöglichen." -#: flatcamGUI/FlatCAMGUI.py:6665 flatcamTools/ToolSolderPaste.py:277 +#: flatcamGUI/FlatCAMGUI.py:6644 flatcamTools/ToolSolderPaste.py:277 msgid "PostProcessors:" msgstr "Postprozessoren:" -#: flatcamGUI/FlatCAMGUI.py:6667 flatcamTools/ToolSolderPaste.py:279 +#: flatcamGUI/FlatCAMGUI.py:6646 flatcamTools/ToolSolderPaste.py:279 msgid "Files that control the GCode generation." msgstr "Dateien, die die GCode-Generierung steuern." -#: flatcamGUI/FlatCAMGUI.py:6697 flatcamGUI/FlatCAMGUI.py:6703 +#: flatcamGUI/FlatCAMGUI.py:6676 flatcamGUI/FlatCAMGUI.py:6682 msgid "Idle." msgstr "Untätig" -#: flatcamGUI/FlatCAMGUI.py:6727 +#: flatcamGUI/FlatCAMGUI.py:6706 msgid "Application started ..." msgstr "Bewerbung gestartet ..." -#: flatcamGUI/FlatCAMGUI.py:6728 +#: flatcamGUI/FlatCAMGUI.py:6707 msgid "Hello!" msgstr "Hello!" @@ -12209,6 +12197,16 @@ msgstr "" msgid "CNCJob objects can't be offseted." msgstr "CNCJob-Objekte können nicht versetzt werden." +#~ msgid "Tool dia: " +#~ msgstr "Werkzeugdurchmesser:" + +#~ msgid "" +#~ "The diameter of the cutting\n" +#~ "tool.." +#~ msgstr "" +#~ "Der Durchmesser des Schnitts\n" +#~ "Werkzeug.." + #~ msgid "Disable" #~ msgstr "Deaktivieren" diff --git a/locale/en/LC_MESSAGES/strings.mo b/locale/en/LC_MESSAGES/strings.mo index ee9dba4f739ab0900bf6e79f1f5dedc962b832cf..8862065da70565ed9a2fa3f0ea5de85227b851a8 100644 GIT binary patch delta 39365 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 delta 39481 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 diff --git a/locale/en/LC_MESSAGES/strings.po b/locale/en/LC_MESSAGES/strings.po index 17b07cd9..e63a42c2 100644 --- a/locale/en/LC_MESSAGES/strings.po +++ b/locale/en/LC_MESSAGES/strings.po @@ -5,8 +5,8 @@ msgid "" msgstr "" "Project-Id-Version: \n" -"POT-Creation-Date: 2019-06-20 19:33+0300\n" -"PO-Revision-Date: 2019-06-20 19:33+0300\n" +"POT-Creation-Date: 2019-06-22 16:41+0300\n" +"PO-Revision-Date: 2019-06-22 16:41+0300\n" "Last-Translator: \n" "Language-Team: \n" "Language: en\n" @@ -66,17 +66,17 @@ msgstr "Do you want to save the edited object?" msgid "Close Editor" msgstr "Close Editor" -#: FlatCAMApp.py:2311 FlatCAMApp.py:3403 FlatCAMApp.py:5887 +#: FlatCAMApp.py:2311 FlatCAMApp.py:3403 FlatCAMApp.py:5908 #: FlatCAMTranslation.py:89 flatcamGUI/FlatCAMGUI.py:3730 msgid "Yes" msgstr "Yes" -#: FlatCAMApp.py:2312 FlatCAMApp.py:3404 FlatCAMApp.py:5888 +#: FlatCAMApp.py:2312 FlatCAMApp.py:3404 FlatCAMApp.py:5909 #: FlatCAMTranslation.py:90 flatcamGUI/FlatCAMGUI.py:3731 msgid "No" msgstr "No" -#: FlatCAMApp.py:2313 FlatCAMApp.py:3405 FlatCAMApp.py:3737 FlatCAMApp.py:5889 +#: FlatCAMApp.py:2313 FlatCAMApp.py:3405 FlatCAMApp.py:3754 FlatCAMApp.py:5910 msgid "Cancel" msgstr "Cancel" @@ -220,7 +220,7 @@ msgstr "" "There are files/objects modified in FlatCAM. \n" "Do you want to Save the project?" -#: FlatCAMApp.py:3401 FlatCAMApp.py:5885 +#: FlatCAMApp.py:3401 FlatCAMApp.py:5906 msgid "Save changes" msgstr "Save changes" @@ -265,42 +265,42 @@ msgstr "[success] A Geometry object was converted to MultiGeo type." msgid "[success] A Geometry object was converted to SingleGeo type." msgstr "[success] A Geometry object was converted to SingleGeo type." -#: FlatCAMApp.py:3736 FlatCAMApp.py:4572 FlatCAMApp.py:6160 FlatCAMApp.py:6171 -#: FlatCAMApp.py:6411 FlatCAMApp.py:6421 +#: FlatCAMApp.py:3753 FlatCAMApp.py:4593 FlatCAMApp.py:6181 FlatCAMApp.py:6192 +#: FlatCAMApp.py:6432 FlatCAMApp.py:6442 msgid "Ok" msgstr "Ok" -#: FlatCAMApp.py:3778 +#: FlatCAMApp.py:3799 #, python-format msgid "[success] Converted units to %s" msgstr "[success] Converted units to %s" -#: FlatCAMApp.py:3789 +#: FlatCAMApp.py:3810 msgid "[WARNING_NOTCL] Units conversion cancelled." msgstr "[WARNING_NOTCL] Units conversion cancelled." -#: FlatCAMApp.py:4441 +#: FlatCAMApp.py:4462 msgid "Open file" msgstr "Open file" -#: FlatCAMApp.py:4472 FlatCAMApp.py:4477 +#: FlatCAMApp.py:4493 FlatCAMApp.py:4498 msgid "Export G-Code ..." msgstr "Export G-Code ..." -#: FlatCAMApp.py:4480 +#: FlatCAMApp.py:4501 msgid "[WARNING_NOTCL] Export Code cancelled." msgstr "[WARNING_NOTCL] Export Code cancelled." -#: FlatCAMApp.py:4490 +#: FlatCAMApp.py:4511 msgid "[WARNING] No such file or directory" msgstr "[WARNING] No such file or directory" -#: FlatCAMApp.py:4497 +#: FlatCAMApp.py:4518 #, python-format msgid "Saved to: %s" msgstr "Saved to: %s" -#: FlatCAMApp.py:4560 FlatCAMApp.py:4593 FlatCAMApp.py:4604 FlatCAMApp.py:4615 +#: FlatCAMApp.py:4581 FlatCAMApp.py:4614 FlatCAMApp.py:4625 FlatCAMApp.py:4636 #: flatcamTools/ToolNonCopperClear.py:489 flatcamTools/ToolSolderPaste.py:765 msgid "" "[WARNING_NOTCL] Please enter a tool diameter with non-zero value, in Float " @@ -309,12 +309,12 @@ msgstr "" "[WARNING_NOTCL] Please enter a tool diameter with non-zero value, in Float " "format." -#: FlatCAMApp.py:4565 FlatCAMApp.py:4598 FlatCAMApp.py:4609 FlatCAMApp.py:4620 +#: FlatCAMApp.py:4586 FlatCAMApp.py:4619 FlatCAMApp.py:4630 FlatCAMApp.py:4641 #: flatcamGUI/FlatCAMGUI.py:3001 msgid "[WARNING_NOTCL] Adding Tool cancelled ..." msgstr "[WARNING_NOTCL] Adding Tool cancelled ..." -#: FlatCAMApp.py:4568 +#: FlatCAMApp.py:4589 msgid "" "Adding Tool works only when Advanced is checked.\n" "Go to Preferences -> General - Show Advanced Options." @@ -322,38 +322,38 @@ msgstr "" "Adding Tool works only when Advanced is checked.\n" "Go to Preferences -> General - Show Advanced Options." -#: FlatCAMApp.py:4681 +#: FlatCAMApp.py:4702 msgid "Object(s) deleted ..." msgstr "Object(s) deleted ..." -#: FlatCAMApp.py:4685 +#: FlatCAMApp.py:4706 msgid "Failed. No object(s) selected..." msgstr "Failed. No object(s) selected..." -#: FlatCAMApp.py:4687 +#: FlatCAMApp.py:4708 msgid "Save the work in Editor and try again ..." msgstr "Save the work in Editor and try again ..." -#: FlatCAMApp.py:4700 +#: FlatCAMApp.py:4721 msgid "Click to set the origin ..." msgstr "Click to set the origin ..." -#: FlatCAMApp.py:4712 +#: FlatCAMApp.py:4733 msgid "Jump to ..." msgstr "Jump to ..." -#: FlatCAMApp.py:4713 +#: FlatCAMApp.py:4734 msgid "Enter the coordinates in format X,Y:" msgstr "Enter the coordinates in format X,Y:" -#: FlatCAMApp.py:4720 +#: FlatCAMApp.py:4741 msgid "Wrong coordinates. Enter coordinates in format: X,Y" msgstr "Wrong coordinates. Enter coordinates in format: X,Y" -#: FlatCAMApp.py:4738 flatcamEditors/FlatCAMExcEditor.py:2320 +#: FlatCAMApp.py:4759 flatcamEditors/FlatCAMExcEditor.py:2320 #: flatcamEditors/FlatCAMExcEditor.py:2327 -#: flatcamEditors/FlatCAMGeoEditor.py:3645 -#: flatcamEditors/FlatCAMGeoEditor.py:3659 +#: flatcamEditors/FlatCAMGeoEditor.py:3648 +#: flatcamEditors/FlatCAMGeoEditor.py:3662 #: flatcamEditors/FlatCAMGrbEditor.py:1040 #: flatcamEditors/FlatCAMGrbEditor.py:1141 #: flatcamEditors/FlatCAMGrbEditor.py:1409 @@ -364,84 +364,84 @@ msgstr "Wrong coordinates. Enter coordinates in format: X,Y" msgid "[success] Done." msgstr "[success] Done." -#: FlatCAMApp.py:4870 FlatCAMApp.py:4937 +#: FlatCAMApp.py:4891 FlatCAMApp.py:4958 msgid "[WARNING_NOTCL] No object is selected. Select an object and try again." msgstr "[WARNING_NOTCL] No object is selected. Select an object and try again." -#: FlatCAMApp.py:4978 +#: FlatCAMApp.py:4999 msgid "[success] Origin set ..." msgstr "[success] Origin set ..." -#: FlatCAMApp.py:4998 +#: FlatCAMApp.py:5019 msgid "Preferences" msgstr "Preferences" -#: FlatCAMApp.py:5018 +#: FlatCAMApp.py:5039 msgid "[WARNING_NOTCL] No object selected to Flip on Y axis." msgstr "[WARNING_NOTCL] No object selected to Flip on Y axis." -#: FlatCAMApp.py:5043 +#: FlatCAMApp.py:5064 msgid "[success] Flip on Y axis done." msgstr "[success] Flip on Y axis done." -#: FlatCAMApp.py:5045 FlatCAMApp.py:5085 +#: FlatCAMApp.py:5066 FlatCAMApp.py:5106 #: flatcamEditors/FlatCAMGeoEditor.py:1355 #: flatcamEditors/FlatCAMGrbEditor.py:5343 flatcamTools/ToolTransform.py:748 #, 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:5058 +#: FlatCAMApp.py:5079 msgid "[WARNING_NOTCL] No object selected to Flip on X axis." msgstr "[WARNING_NOTCL] No object selected to Flip on X axis." -#: FlatCAMApp.py:5083 +#: FlatCAMApp.py:5104 msgid "[success] Flip on X axis done." msgstr "[success] Flip on X axis done." -#: FlatCAMApp.py:5098 +#: FlatCAMApp.py:5119 msgid "[WARNING_NOTCL] No object selected to Rotate." msgstr "[WARNING_NOTCL] No object selected to Rotate." -#: FlatCAMApp.py:5101 FlatCAMApp.py:5146 FlatCAMApp.py:5177 +#: FlatCAMApp.py:5122 FlatCAMApp.py:5167 FlatCAMApp.py:5198 msgid "Transform" msgstr "Transform" -#: FlatCAMApp.py:5101 FlatCAMApp.py:5146 FlatCAMApp.py:5177 +#: FlatCAMApp.py:5122 FlatCAMApp.py:5167 FlatCAMApp.py:5198 msgid "Enter the Angle value:" msgstr "Enter the Angle value:" -#: FlatCAMApp.py:5131 +#: FlatCAMApp.py:5152 msgid "[success] Rotation done." msgstr "[success] Rotation done." -#: FlatCAMApp.py:5133 flatcamEditors/FlatCAMGeoEditor.py:1298 +#: FlatCAMApp.py:5154 flatcamEditors/FlatCAMGeoEditor.py:1298 #: flatcamEditors/FlatCAMGrbEditor.py:5272 flatcamTools/ToolTransform.py:677 #, 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:5144 +#: FlatCAMApp.py:5165 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:5165 +#: FlatCAMApp.py:5186 msgid "[success] Skew on X axis done." msgstr "[success] Skew on X axis done." -#: FlatCAMApp.py:5175 +#: FlatCAMApp.py:5196 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:5196 +#: FlatCAMApp.py:5217 msgid "[success] Skew on Y axis done." msgstr "[success] Skew on Y axis done." -#: FlatCAMApp.py:5266 +#: FlatCAMApp.py:5287 msgid "Grid On/Off" msgstr "Grid On/Off" -#: FlatCAMApp.py:5279 flatcamEditors/FlatCAMGeoEditor.py:937 +#: FlatCAMApp.py:5300 flatcamEditors/FlatCAMGeoEditor.py:937 #: flatcamEditors/FlatCAMGrbEditor.py:2381 #: flatcamEditors/FlatCAMGrbEditor.py:4861 flatcamGUI/ObjectUI.py:991 #: flatcamTools/ToolDblSided.py:160 flatcamTools/ToolDblSided.py:208 @@ -451,7 +451,7 @@ msgstr "Grid On/Off" msgid "Add" msgstr "Add" -#: FlatCAMApp.py:5280 FlatCAMObj.py:3276 +#: FlatCAMApp.py:5301 FlatCAMObj.py:3296 #: flatcamEditors/FlatCAMGrbEditor.py:2386 flatcamGUI/FlatCAMGUI.py:527 #: flatcamGUI/FlatCAMGUI.py:724 flatcamGUI/FlatCAMGUI.py:1616 #: flatcamGUI/FlatCAMGUI.py:1953 flatcamGUI/ObjectUI.py:1007 @@ -460,15 +460,15 @@ msgstr "Add" msgid "Delete" msgstr "Delete" -#: FlatCAMApp.py:5293 +#: FlatCAMApp.py:5314 msgid "New Grid ..." msgstr "New Grid ..." -#: FlatCAMApp.py:5294 +#: FlatCAMApp.py:5315 msgid "Enter a Grid Value:" msgstr "Enter a Grid Value:" -#: FlatCAMApp.py:5302 FlatCAMApp.py:5329 +#: FlatCAMApp.py:5323 FlatCAMApp.py:5350 msgid "" "[WARNING_NOTCL] Please enter a grid value with non-zero value, in Float " "format." @@ -476,53 +476,52 @@ msgstr "" "[WARNING_NOTCL] Please enter a grid value with non-zero value, in Float " "format." -#: FlatCAMApp.py:5308 +#: FlatCAMApp.py:5329 msgid "[success] New Grid added ..." msgstr "[success] New Grid added ..." -#: FlatCAMApp.py:5311 +#: FlatCAMApp.py:5332 msgid "[WARNING_NOTCL] Grid already exists ..." msgstr "[WARNING_NOTCL] Grid already exists ..." -#: FlatCAMApp.py:5314 +#: FlatCAMApp.py:5335 msgid "[WARNING_NOTCL] Adding New Grid cancelled ..." msgstr "[WARNING_NOTCL] Adding New Grid cancelled ..." -#: FlatCAMApp.py:5336 +#: FlatCAMApp.py:5357 msgid "[ERROR_NOTCL] Grid Value does not exist ..." msgstr "[ERROR_NOTCL] Grid Value does not exist ..." -#: FlatCAMApp.py:5339 +#: FlatCAMApp.py:5360 msgid "[success] Grid Value deleted ..." msgstr "[success] Grid Value deleted ..." -#: FlatCAMApp.py:5342 +#: FlatCAMApp.py:5363 msgid "[WARNING_NOTCL] Delete Grid value cancelled ..." msgstr "[WARNING_NOTCL] Delete Grid value cancelled ..." -#: FlatCAMApp.py:5381 +#: FlatCAMApp.py:5402 msgid "[WARNING_NOTCL] No object selected to copy it's name" msgstr "[WARNING_NOTCL] No object selected to copy it's name" -#: FlatCAMApp.py:5385 +#: FlatCAMApp.py:5406 msgid "Name copied on clipboard ..." msgstr "Name copied on clipboard ..." -#: FlatCAMApp.py:5427 flatcamEditors/FlatCAMGrbEditor.py:3901 -#| msgid "[success] Tool was copied in Tool Table." +#: FlatCAMApp.py:5448 flatcamEditors/FlatCAMGrbEditor.py:3901 msgid "[success] Coordinates copied to clipboard." msgstr "[success] Coordinates copied to clipboard." -#: FlatCAMApp.py:5683 FlatCAMApp.py:5686 FlatCAMApp.py:5689 FlatCAMApp.py:5692 -#: FlatCAMApp.py:5707 FlatCAMApp.py:5710 FlatCAMApp.py:5713 FlatCAMApp.py:5716 -#: FlatCAMApp.py:5756 FlatCAMApp.py:5759 FlatCAMApp.py:5762 FlatCAMApp.py:5765 +#: FlatCAMApp.py:5704 FlatCAMApp.py:5707 FlatCAMApp.py:5710 FlatCAMApp.py:5713 +#: FlatCAMApp.py:5728 FlatCAMApp.py:5731 FlatCAMApp.py:5734 FlatCAMApp.py:5737 +#: FlatCAMApp.py:5777 FlatCAMApp.py:5780 FlatCAMApp.py:5783 FlatCAMApp.py:5786 #: ObjectCollection.py:719 ObjectCollection.py:722 ObjectCollection.py:725 #: ObjectCollection.py:728 #, python-brace-format msgid "[selected]{name} selected" msgstr "[selected]{name} selected" -#: FlatCAMApp.py:5882 +#: FlatCAMApp.py:5903 msgid "" "There are files/objects opened in FlatCAM.\n" "Creating a New project will delete them.\n" @@ -532,106 +531,106 @@ msgstr "" "Creating a New project will delete them.\n" "Do you want to Save the project?" -#: FlatCAMApp.py:5903 +#: FlatCAMApp.py:5924 msgid "[success] New Project created..." msgstr "[success] New Project created..." -#: FlatCAMApp.py:6019 FlatCAMApp.py:6022 flatcamGUI/FlatCAMGUI.py:608 +#: FlatCAMApp.py:6040 FlatCAMApp.py:6043 flatcamGUI/FlatCAMGUI.py:608 #: flatcamGUI/FlatCAMGUI.py:1832 msgid "Open Gerber" msgstr "Open Gerber" -#: FlatCAMApp.py:6027 +#: FlatCAMApp.py:6048 msgid "[WARNING_NOTCL] Open Gerber cancelled." msgstr "[WARNING_NOTCL] Open Gerber cancelled." -#: FlatCAMApp.py:6048 FlatCAMApp.py:6051 flatcamGUI/FlatCAMGUI.py:609 +#: FlatCAMApp.py:6069 FlatCAMApp.py:6072 flatcamGUI/FlatCAMGUI.py:609 #: flatcamGUI/FlatCAMGUI.py:1833 msgid "Open Excellon" msgstr "Open Excellon" -#: FlatCAMApp.py:6056 +#: FlatCAMApp.py:6077 msgid "[WARNING_NOTCL] Open Excellon cancelled." msgstr "[WARNING_NOTCL] Open Excellon cancelled." -#: FlatCAMApp.py:6078 FlatCAMApp.py:6081 +#: FlatCAMApp.py:6099 FlatCAMApp.py:6102 msgid "Open G-Code" msgstr "Open G-Code" -#: FlatCAMApp.py:6086 +#: FlatCAMApp.py:6107 msgid "[WARNING_NOTCL] Open G-Code cancelled." msgstr "[WARNING_NOTCL] Open G-Code cancelled." -#: FlatCAMApp.py:6104 FlatCAMApp.py:6107 +#: FlatCAMApp.py:6125 FlatCAMApp.py:6128 msgid "Open Project" msgstr "Open Project" -#: FlatCAMApp.py:6115 +#: FlatCAMApp.py:6136 msgid "[WARNING_NOTCL] Open Project cancelled." msgstr "[WARNING_NOTCL] Open Project cancelled." -#: FlatCAMApp.py:6134 FlatCAMApp.py:6137 +#: FlatCAMApp.py:6155 FlatCAMApp.py:6158 msgid "Open Configuration File" msgstr "Open Configuration File" -#: FlatCAMApp.py:6141 +#: FlatCAMApp.py:6162 msgid "[WARNING_NOTCL] Open Config cancelled." msgstr "[WARNING_NOTCL] Open Config cancelled." -#: FlatCAMApp.py:6156 FlatCAMApp.py:6407 FlatCAMApp.py:8560 FlatCAMApp.py:8580 -#: FlatCAMApp.py:8601 FlatCAMApp.py:8623 +#: FlatCAMApp.py:6177 FlatCAMApp.py:6428 FlatCAMApp.py:8581 FlatCAMApp.py:8601 +#: FlatCAMApp.py:8622 FlatCAMApp.py:8644 msgid "[WARNING_NOTCL] No object selected." msgstr "[WARNING_NOTCL] No object selected." -#: FlatCAMApp.py:6157 FlatCAMApp.py:6408 +#: FlatCAMApp.py:6178 FlatCAMApp.py:6429 msgid "Please Select a Geometry object to export" msgstr "Please Select a Geometry object to export" -#: FlatCAMApp.py:6168 +#: FlatCAMApp.py:6189 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:6181 FlatCAMApp.py:6185 +#: FlatCAMApp.py:6202 FlatCAMApp.py:6206 msgid "Export SVG" msgstr "Export SVG" -#: FlatCAMApp.py:6190 +#: FlatCAMApp.py:6211 msgid "[WARNING_NOTCL] Export SVG cancelled." msgstr "[WARNING_NOTCL] Export SVG cancelled." -#: FlatCAMApp.py:6209 +#: FlatCAMApp.py:6230 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:6215 FlatCAMApp.py:6219 +#: FlatCAMApp.py:6236 FlatCAMApp.py:6240 msgid "Export PNG Image" msgstr "Export PNG Image" -#: FlatCAMApp.py:6224 +#: FlatCAMApp.py:6245 msgid "Export PNG cancelled." msgstr "Export PNG cancelled." -#: FlatCAMApp.py:6243 +#: FlatCAMApp.py:6264 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:6248 FlatCAMApp.py:6371 +#: FlatCAMApp.py:6269 FlatCAMApp.py:6392 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:6260 +#: FlatCAMApp.py:6281 msgid "Save Gerber source file" msgstr "Save Gerber source file" -#: FlatCAMApp.py:6265 +#: FlatCAMApp.py:6286 msgid "[WARNING_NOTCL] Save Gerber source file cancelled." msgstr "[WARNING_NOTCL] Save Gerber source file cancelled." -#: FlatCAMApp.py:6284 +#: FlatCAMApp.py:6305 msgid "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." @@ -639,21 +638,21 @@ msgstr "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." -#: FlatCAMApp.py:6289 FlatCAMApp.py:6330 +#: FlatCAMApp.py:6310 FlatCAMApp.py:6351 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:6297 FlatCAMApp.py:6301 +#: FlatCAMApp.py:6318 FlatCAMApp.py:6322 msgid "Save Excellon source file" msgstr "Save Excellon source file" -#: FlatCAMApp.py:6306 +#: FlatCAMApp.py:6327 msgid "[WARNING_NOTCL] Saving Excellon source file cancelled." msgstr "[WARNING_NOTCL] Saving Excellon source file cancelled." -#: FlatCAMApp.py:6325 +#: FlatCAMApp.py:6346 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." @@ -661,68 +660,68 @@ msgstr "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." -#: FlatCAMApp.py:6338 FlatCAMApp.py:6342 +#: FlatCAMApp.py:6359 FlatCAMApp.py:6363 msgid "Export Excellon" msgstr "Export Excellon" -#: FlatCAMApp.py:6347 +#: FlatCAMApp.py:6368 msgid "[WARNING_NOTCL] Export Excellon cancelled." msgstr "[WARNING_NOTCL] Export Excellon cancelled." -#: FlatCAMApp.py:6366 +#: FlatCAMApp.py:6387 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:6379 FlatCAMApp.py:6383 +#: FlatCAMApp.py:6400 FlatCAMApp.py:6404 msgid "Export Gerber" msgstr "Export Gerber" -#: FlatCAMApp.py:6388 +#: FlatCAMApp.py:6409 msgid "[WARNING_NOTCL] Export Gerber cancelled." msgstr "[WARNING_NOTCL] Export Gerber cancelled." -#: FlatCAMApp.py:6418 +#: FlatCAMApp.py:6439 msgid "[ERROR_NOTCL] Only Geometry objects can be used." msgstr "[ERROR_NOTCL] Only Geometry objects can be used." -#: FlatCAMApp.py:6432 FlatCAMApp.py:6436 +#: FlatCAMApp.py:6453 FlatCAMApp.py:6457 msgid "Export DXF" msgstr "Export DXF" -#: FlatCAMApp.py:6442 +#: FlatCAMApp.py:6463 msgid "[WARNING_NOTCL] Export DXF cancelled." msgstr "[WARNING_NOTCL] Export DXF cancelled." -#: FlatCAMApp.py:6462 FlatCAMApp.py:6465 +#: FlatCAMApp.py:6483 FlatCAMApp.py:6486 msgid "Import SVG" msgstr "Import SVG" -#: FlatCAMApp.py:6474 +#: FlatCAMApp.py:6495 msgid "[WARNING_NOTCL] Open SVG cancelled." msgstr "[WARNING_NOTCL] Open SVG cancelled." -#: FlatCAMApp.py:6493 FlatCAMApp.py:6497 +#: FlatCAMApp.py:6514 FlatCAMApp.py:6518 msgid "Import DXF" msgstr "Import DXF" -#: FlatCAMApp.py:6506 +#: FlatCAMApp.py:6527 msgid "[WARNING_NOTCL] Open DXF cancelled." msgstr "[WARNING_NOTCL] Open DXF cancelled." -#: FlatCAMApp.py:6524 +#: FlatCAMApp.py:6545 #, python-format msgid "%s" msgstr "%s" -#: FlatCAMApp.py:6544 +#: FlatCAMApp.py:6565 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:6551 +#: FlatCAMApp.py:6572 msgid "" "[WARNING_NOTCL] There is no selected object for which to see it's source " "file code." @@ -730,25 +729,25 @@ msgstr "" "[WARNING_NOTCL] There is no selected object for which to see it's source " "file code." -#: FlatCAMApp.py:6559 +#: FlatCAMApp.py:6580 msgid "Source Editor" msgstr "Source Editor" -#: FlatCAMApp.py:6569 +#: FlatCAMApp.py:6590 #, python-format msgid "[ERROR]App.on_view_source() -->%s" msgstr "[ERROR]App.on_view_source() -->%s" -#: FlatCAMApp.py:6581 FlatCAMApp.py:7723 FlatCAMObj.py:5560 +#: FlatCAMApp.py:6602 FlatCAMApp.py:7744 FlatCAMObj.py:5581 #: flatcamTools/ToolSolderPaste.py:1278 msgid "Code Editor" msgstr "Code Editor" -#: FlatCAMApp.py:6593 +#: FlatCAMApp.py:6614 msgid "Script Editor" msgstr "Script Editor" -#: FlatCAMApp.py:6596 +#: FlatCAMApp.py:6617 msgid "" "#\n" "# CREATE A NEW FLATCAM TCL SCRIPT\n" @@ -792,98 +791,98 @@ msgstr "" "#\n" "\n" -#: FlatCAMApp.py:6619 FlatCAMApp.py:6622 +#: FlatCAMApp.py:6640 FlatCAMApp.py:6643 msgid "Open TCL script" msgstr "Open TCL script" -#: FlatCAMApp.py:6630 +#: FlatCAMApp.py:6651 msgid "[WARNING_NOTCL] Open TCL script cancelled." msgstr "[WARNING_NOTCL] Open TCL script cancelled." -#: FlatCAMApp.py:6642 +#: FlatCAMApp.py:6663 #, python-format msgid "[ERROR]App.on_fileopenscript() -->%s" msgstr "[ERROR]App.on_fileopenscript() -->%s" -#: FlatCAMApp.py:6668 FlatCAMApp.py:6671 +#: FlatCAMApp.py:6689 FlatCAMApp.py:6692 msgid "Run TCL script" msgstr "Run TCL script" -#: FlatCAMApp.py:6679 +#: FlatCAMApp.py:6700 msgid "[WARNING_NOTCL] Run TCL script cancelled." msgstr "[WARNING_NOTCL] Run TCL script cancelled." -#: FlatCAMApp.py:6729 FlatCAMApp.py:6733 +#: FlatCAMApp.py:6750 FlatCAMApp.py:6754 msgid "Save Project As ..." msgstr "Save Project As ..." -#: FlatCAMApp.py:6730 +#: FlatCAMApp.py:6751 #, python-brace-format msgid "{l_save}/Project_{date}" msgstr "{l_save}/Project_{date}" -#: FlatCAMApp.py:6738 +#: FlatCAMApp.py:6759 msgid "[WARNING_NOTCL] Save Project cancelled." msgstr "[WARNING_NOTCL] Save Project cancelled." -#: FlatCAMApp.py:6782 +#: FlatCAMApp.py:6803 msgid "Exporting SVG" msgstr "Exporting SVG" -#: FlatCAMApp.py:6816 FlatCAMApp.py:6922 FlatCAMApp.py:7037 +#: FlatCAMApp.py:6837 FlatCAMApp.py:6943 FlatCAMApp.py:7058 #, python-format msgid "[success] SVG file exported to %s" msgstr "[success] SVG file exported to %s" -#: FlatCAMApp.py:6847 FlatCAMApp.py:6968 +#: FlatCAMApp.py:6868 FlatCAMApp.py:6989 #, python-format msgid "[WARNING_NOTCL] No object Box. Using instead %s" msgstr "[WARNING_NOTCL] No object Box. Using instead %s" -#: FlatCAMApp.py:6925 FlatCAMApp.py:7040 +#: FlatCAMApp.py:6946 FlatCAMApp.py:7061 msgid "Generating Film ... Please wait." msgstr "Generating Film ... Please wait." -#: FlatCAMApp.py:7188 +#: FlatCAMApp.py:7209 #, python-format msgid "[success] Excellon file exported to %s" msgstr "[success] Excellon file exported to %s" -#: FlatCAMApp.py:7195 +#: FlatCAMApp.py:7216 msgid "Exporting Excellon" msgstr "Exporting Excellon" -#: FlatCAMApp.py:7200 FlatCAMApp.py:7207 +#: FlatCAMApp.py:7221 FlatCAMApp.py:7228 msgid "[ERROR_NOTCL] Could not export Excellon file." msgstr "[ERROR_NOTCL] Could not export Excellon file." -#: FlatCAMApp.py:7305 +#: FlatCAMApp.py:7326 #, python-format msgid "[success] Gerber file exported to %s" msgstr "[success] Gerber file exported to %s" -#: FlatCAMApp.py:7312 +#: FlatCAMApp.py:7333 msgid "Exporting Gerber" msgstr "Exporting Gerber" -#: FlatCAMApp.py:7317 FlatCAMApp.py:7324 +#: FlatCAMApp.py:7338 FlatCAMApp.py:7345 msgid "[ERROR_NOTCL] Could not export Gerber file." msgstr "[ERROR_NOTCL] Could not export Gerber file." -#: FlatCAMApp.py:7364 +#: FlatCAMApp.py:7385 #, python-format msgid "[success] DXF file exported to %s" msgstr "[success] DXF file exported to %s" -#: FlatCAMApp.py:7370 +#: FlatCAMApp.py:7391 msgid "Exporting DXF" msgstr "Exporting DXF" -#: FlatCAMApp.py:7375 FlatCAMApp.py:7382 +#: FlatCAMApp.py:7396 FlatCAMApp.py:7403 msgid "[[WARNING_NOTCL]] Could not export DXF file." msgstr "[[WARNING_NOTCL]] Could not export DXF file." -#: FlatCAMApp.py:7402 FlatCAMApp.py:7444 FlatCAMApp.py:7488 +#: FlatCAMApp.py:7423 FlatCAMApp.py:7465 FlatCAMApp.py:7509 msgid "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" @@ -891,95 +890,95 @@ msgstr "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" -#: FlatCAMApp.py:7412 +#: FlatCAMApp.py:7433 msgid "Importing SVG" msgstr "Importing SVG" -#: FlatCAMApp.py:7423 FlatCAMApp.py:7465 FlatCAMApp.py:7508 FlatCAMApp.py:7585 -#: FlatCAMApp.py:7646 FlatCAMApp.py:7709 flatcamTools/ToolPDF.py:212 +#: FlatCAMApp.py:7444 FlatCAMApp.py:7486 FlatCAMApp.py:7529 FlatCAMApp.py:7606 +#: FlatCAMApp.py:7667 FlatCAMApp.py:7730 flatcamTools/ToolPDF.py:212 #, python-format msgid "[success] Opened: %s" msgstr "[success] Opened: %s" -#: FlatCAMApp.py:7454 +#: FlatCAMApp.py:7475 msgid "Importing DXF" msgstr "Importing DXF" -#: FlatCAMApp.py:7496 +#: FlatCAMApp.py:7517 msgid "Importing Image" msgstr "Importing Image" -#: FlatCAMApp.py:7537 FlatCAMApp.py:7539 +#: FlatCAMApp.py:7558 FlatCAMApp.py:7560 #, python-format msgid "[ERROR_NOTCL] Failed to open file: %s" msgstr "[ERROR_NOTCL] Failed to open file: %s" -#: FlatCAMApp.py:7542 +#: FlatCAMApp.py:7563 #, python-brace-format msgid "[ERROR_NOTCL] Failed to parse file: {name}. {error}" msgstr "[ERROR_NOTCL] Failed to parse file: {name}. {error}" -#: FlatCAMApp.py:7549 FlatCAMObj.py:4239 +#: FlatCAMApp.py:7570 FlatCAMObj.py:4259 #: flatcamEditors/FlatCAMExcEditor.py:2077 msgid "[ERROR] An internal error has ocurred. See shell.\n" msgstr "[ERROR] An internal error has ocurred. See shell.\n" -#: FlatCAMApp.py:7558 +#: FlatCAMApp.py:7579 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:7566 +#: FlatCAMApp.py:7587 msgid "Opening Gerber" msgstr "Opening Gerber" -#: FlatCAMApp.py:7576 +#: FlatCAMApp.py:7597 msgid "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." msgstr "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." -#: FlatCAMApp.py:7609 flatcamTools/ToolPcbWizard.py:421 +#: FlatCAMApp.py:7630 flatcamTools/ToolPcbWizard.py:421 msgid "[ERROR_NOTCL] This is not Excellon file." msgstr "[ERROR_NOTCL] This is not Excellon file." -#: FlatCAMApp.py:7612 +#: FlatCAMApp.py:7633 #, python-format msgid "[ERROR_NOTCL] Cannot open file: %s" msgstr "[ERROR_NOTCL] Cannot open file: %s" -#: FlatCAMApp.py:7617 flatcamTools/ToolPcbWizard.py:429 +#: FlatCAMApp.py:7638 flatcamTools/ToolPcbWizard.py:429 msgid "[ERROR_NOTCL] An internal error has occurred. See shell.\n" msgstr "[ERROR_NOTCL] An internal error has occurred. See shell.\n" -#: FlatCAMApp.py:7630 flatcamTools/ToolPDF.py:262 +#: FlatCAMApp.py:7651 flatcamTools/ToolPDF.py:262 #: flatcamTools/ToolPcbWizard.py:442 #, python-format msgid "[ERROR_NOTCL] No geometry found in file: %s" msgstr "[ERROR_NOTCL] No geometry found in file: %s" -#: FlatCAMApp.py:7633 +#: FlatCAMApp.py:7654 msgid "Opening Excellon." msgstr "Opening Excellon." -#: FlatCAMApp.py:7639 +#: FlatCAMApp.py:7660 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:7676 +#: FlatCAMApp.py:7697 #, python-format msgid "[ERROR_NOTCL] Failed to open %s" msgstr "[ERROR_NOTCL] Failed to open %s" -#: FlatCAMApp.py:7686 +#: FlatCAMApp.py:7707 msgid "[ERROR_NOTCL] This is not GCODE" msgstr "[ERROR_NOTCL] This is not GCODE" -#: FlatCAMApp.py:7692 +#: FlatCAMApp.py:7713 msgid "Opening G-Code." msgstr "Opening G-Code." -#: FlatCAMApp.py:7700 +#: FlatCAMApp.py:7721 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 " @@ -989,26 +988,26 @@ msgstr "" " Attempting to create a FlatCAM CNCJob Object from G-Code file failed during " "processing" -#: FlatCAMApp.py:7740 +#: FlatCAMApp.py:7761 #, python-format msgid "[ERROR_NOTCL] Failed to open config file: %s" msgstr "[ERROR_NOTCL] Failed to open config file: %s" -#: FlatCAMApp.py:7766 FlatCAMApp.py:7783 +#: FlatCAMApp.py:7787 FlatCAMApp.py:7804 #, python-format msgid "[ERROR_NOTCL] Failed to open project file: %s" msgstr "[ERROR_NOTCL] Failed to open project file: %s" -#: FlatCAMApp.py:7806 +#: FlatCAMApp.py:7827 #, python-format msgid "[success] Project loaded from: %s" msgstr "[success] Project loaded from: %s" -#: FlatCAMApp.py:7911 +#: FlatCAMApp.py:7932 msgid "Available commands:\n" msgstr "Available commands:\n" -#: FlatCAMApp.py:7913 +#: FlatCAMApp.py:7934 msgid "" "\n" "\n" @@ -1020,27 +1019,27 @@ msgstr "" "Type help for usage.\n" " Example: help open_gerber" -#: FlatCAMApp.py:8063 +#: FlatCAMApp.py:8084 msgid "Shows list of commands." msgstr "Shows list of commands." -#: FlatCAMApp.py:8120 +#: FlatCAMApp.py:8141 msgid "[ERROR_NOTCL] Failed to load recent item list." msgstr "[ERROR_NOTCL] Failed to load recent item list." -#: FlatCAMApp.py:8127 +#: FlatCAMApp.py:8148 msgid "[ERROR_NOTCL] Failed to parse recent item list." msgstr "[ERROR_NOTCL] Failed to parse recent item list." -#: FlatCAMApp.py:8171 +#: FlatCAMApp.py:8192 msgid "Clear Recent files" msgstr "Clear Recent files" -#: FlatCAMApp.py:8188 flatcamGUI/FlatCAMGUI.py:968 +#: FlatCAMApp.py:8209 flatcamGUI/FlatCAMGUI.py:968 msgid "Shortcut Key List" msgstr "Shortcut Key List" -#: FlatCAMApp.py:8195 +#: FlatCAMApp.py:8216 msgid "" "\n" "

Selected Tab - Choose an Item from " @@ -1136,23 +1135,23 @@ msgstr "" "\n" " " -#: FlatCAMApp.py:8302 +#: FlatCAMApp.py:8323 msgid "[WARNING_NOTCL] Failed checking for latest version. Could not connect." msgstr "[WARNING_NOTCL] Failed checking for latest version. Could not connect." -#: FlatCAMApp.py:8309 +#: FlatCAMApp.py:8330 msgid "[ERROR_NOTCL] Could not parse information about latest version." msgstr "[ERROR_NOTCL] Could not parse information about latest version." -#: FlatCAMApp.py:8319 +#: FlatCAMApp.py:8340 msgid "[success] FlatCAM is up to date!" msgstr "[success] FlatCAM is up to date!" -#: FlatCAMApp.py:8324 +#: FlatCAMApp.py:8345 msgid "Newer Version Available" msgstr "Newer Version Available" -#: FlatCAMApp.py:8325 +#: FlatCAMApp.py:8346 msgid "" "There is a newer version of FlatCAM available for download:\n" "\n" @@ -1160,55 +1159,55 @@ msgstr "" "There is a newer version of FlatCAM available for download:\n" "\n" -#: FlatCAMApp.py:8327 +#: FlatCAMApp.py:8348 msgid "info" msgstr "info" -#: FlatCAMApp.py:8346 +#: FlatCAMApp.py:8367 msgid "[success] All plots disabled." msgstr "[success] All plots disabled." -#: FlatCAMApp.py:8352 +#: FlatCAMApp.py:8373 msgid "[success] All non selected plots disabled." msgstr "[success] All non selected plots disabled." -#: FlatCAMApp.py:8358 +#: FlatCAMApp.py:8379 msgid "[success] All plots enabled." msgstr "[success] All plots enabled." -#: FlatCAMApp.py:8364 +#: FlatCAMApp.py:8385 msgid "[success] Selected plots enabled..." msgstr "[success] Selected plots enabled..." -#: FlatCAMApp.py:8372 +#: FlatCAMApp.py:8393 msgid "[success] Selected plots disabled..." msgstr "[success] Selected plots disabled..." -#: FlatCAMApp.py:8382 FlatCAMApp.py:8395 +#: FlatCAMApp.py:8403 FlatCAMApp.py:8416 msgid "Working ..." msgstr "Working ..." -#: FlatCAMApp.py:8429 +#: FlatCAMApp.py:8450 msgid "Saving FlatCAM Project" msgstr "Saving FlatCAM Project" -#: FlatCAMApp.py:8450 FlatCAMApp.py:8481 +#: FlatCAMApp.py:8471 FlatCAMApp.py:8502 #, python-format msgid "[success] Project saved to: %s" msgstr "[success] Project saved to: %s" -#: FlatCAMApp.py:8468 +#: FlatCAMApp.py:8489 #, 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:8475 +#: FlatCAMApp.py:8496 #, 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:8483 +#: FlatCAMApp.py:8504 #, 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." @@ -1218,11 +1217,11 @@ msgstr "[ERROR_NOTCL] Failed to save project file: %s. Retry to save it." msgid "[success] Name changed from {old} to {new}" msgstr "[success] Name changed from {old} to {new}" -#: FlatCAMObj.py:553 FlatCAMObj.py:2035 FlatCAMObj.py:3281 FlatCAMObj.py:5457 +#: FlatCAMObj.py:553 FlatCAMObj.py:2035 FlatCAMObj.py:3301 FlatCAMObj.py:5478 msgid "Basic" msgstr "Basic" -#: FlatCAMObj.py:565 FlatCAMObj.py:2051 FlatCAMObj.py:3303 FlatCAMObj.py:5463 +#: FlatCAMObj.py:565 FlatCAMObj.py:2051 FlatCAMObj.py:3323 FlatCAMObj.py:5484 msgid "Advanced" msgstr "Advanced" @@ -1243,9 +1242,9 @@ msgstr "Total Drills" msgid "Total Slots" msgstr "Total Slots" -#: FlatCAMObj.py:2107 FlatCAMObj.py:3355 FlatCAMObj.py:3655 FlatCAMObj.py:3842 -#: FlatCAMObj.py:3855 FlatCAMObj.py:3972 FlatCAMObj.py:4389 FlatCAMObj.py:4627 -#: FlatCAMObj.py:5040 flatcamEditors/FlatCAMExcEditor.py:1474 +#: FlatCAMObj.py:2107 FlatCAMObj.py:3375 FlatCAMObj.py:3675 FlatCAMObj.py:3862 +#: FlatCAMObj.py:3875 FlatCAMObj.py:3992 FlatCAMObj.py:4409 FlatCAMObj.py:4647 +#: FlatCAMObj.py:5060 flatcamEditors/FlatCAMExcEditor.py:1474 #: flatcamTools/ToolCalculators.py:307 flatcamTools/ToolCalculators.py:318 #: flatcamTools/ToolCalculators.py:330 flatcamTools/ToolCalculators.py:345 #: flatcamTools/ToolCalculators.py:358 flatcamTools/ToolCalculators.py:372 @@ -1302,7 +1301,7 @@ msgid "" msgstr "" "[ERROR_NOTCL] Milling tool for SLOTS is larger than hole size. Cancelled." -#: FlatCAMObj.py:2608 FlatCAMObj.py:4277 FlatCAMObj.py:4493 FlatCAMObj.py:4810 +#: FlatCAMObj.py:2608 FlatCAMObj.py:4297 FlatCAMObj.py:4513 FlatCAMObj.py:4830 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"z_pdepth\"] or self." "options[\"z_pdepth\"]" @@ -1310,7 +1309,7 @@ msgstr "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"z_pdepth\"] or self." "options[\"z_pdepth\"]" -#: FlatCAMObj.py:2620 FlatCAMObj.py:4289 FlatCAMObj.py:4505 FlatCAMObj.py:4822 +#: FlatCAMObj.py:2620 FlatCAMObj.py:4309 FlatCAMObj.py:4525 FlatCAMObj.py:4842 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"feedrate_probe\"] or " "self.options[\"feedrate_probe\"]" @@ -1318,11 +1317,11 @@ msgstr "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"feedrate_probe\"] or " "self.options[\"feedrate_probe\"]" -#: FlatCAMObj.py:2652 FlatCAMObj.py:4698 FlatCAMObj.py:4703 FlatCAMObj.py:4853 +#: FlatCAMObj.py:2652 FlatCAMObj.py:4718 FlatCAMObj.py:4723 FlatCAMObj.py:4873 msgid "Generating CNC Code" msgstr "Generating CNC Code" -#: FlatCAMObj.py:2678 FlatCAMObj.py:4999 camlib.py:5167 camlib.py:5626 +#: FlatCAMObj.py:2678 FlatCAMObj.py:5019 camlib.py:5167 camlib.py:5626 #: camlib.py:5889 msgid "" "[ERROR]The Toolchange X,Y field in Edit -> Preferences has to be in the " @@ -1333,77 +1332,77 @@ msgstr "" "format (x, y) \n" "but now there is only one value, not two. " -#: FlatCAMObj.py:2990 FlatCAMObj.py:3898 FlatCAMObj.py:3899 FlatCAMObj.py:3908 +#: FlatCAMObj.py:2998 FlatCAMObj.py:3918 FlatCAMObj.py:3919 FlatCAMObj.py:3928 msgid "Iso" msgstr "Iso" -#: FlatCAMObj.py:2990 FlatCAMObj.py:3239 FlatCAMObj.py:3520 +#: FlatCAMObj.py:2998 FlatCAMObj.py:3258 FlatCAMObj.py:3540 msgid "Rough" msgstr "Rough" -#: FlatCAMObj.py:2990 +#: FlatCAMObj.py:2998 msgid "Finish" msgstr "Finish" -#: FlatCAMObj.py:3274 flatcamGUI/FlatCAMGUI.py:526 flatcamGUI/FlatCAMGUI.py:722 +#: FlatCAMObj.py:3294 flatcamGUI/FlatCAMGUI.py:526 flatcamGUI/FlatCAMGUI.py:722 #: flatcamGUI/FlatCAMGUI.py:1615 flatcamGUI/FlatCAMGUI.py:1951 #: flatcamGUI/ObjectUI.py:999 msgid "Copy" msgstr "Copy" -#: FlatCAMObj.py:3490 +#: FlatCAMObj.py:3510 msgid "[ERROR_NOTCL] Please enter the desired tool diameter in Float format." msgstr "[ERROR_NOTCL] Please enter the desired tool diameter in Float format." -#: FlatCAMObj.py:3565 +#: FlatCAMObj.py:3585 msgid "[success] Tool added in Tool Table." msgstr "[success] Tool added in Tool Table." -#: FlatCAMObj.py:3570 +#: FlatCAMObj.py:3590 msgid "[ERROR_NOTCL] Default Tool added. Wrong value format entered." msgstr "[ERROR_NOTCL] Default Tool added. Wrong value format entered." -#: FlatCAMObj.py:3600 FlatCAMObj.py:3610 +#: FlatCAMObj.py:3620 FlatCAMObj.py:3630 msgid "[WARNING_NOTCL] Failed. Select a tool to copy." msgstr "[WARNING_NOTCL] Failed. Select a tool to copy." -#: FlatCAMObj.py:3639 +#: FlatCAMObj.py:3659 msgid "[success] Tool was copied in Tool Table." msgstr "[success] Tool was copied in Tool Table." -#: FlatCAMObj.py:3672 +#: FlatCAMObj.py:3692 msgid "[success] Tool was edited in Tool Table." msgstr "[success] Tool was edited in Tool Table." -#: FlatCAMObj.py:3703 FlatCAMObj.py:3713 +#: FlatCAMObj.py:3723 FlatCAMObj.py:3733 msgid "[WARNING_NOTCL] Failed. Select a tool to delete." msgstr "[WARNING_NOTCL] Failed. Select a tool to delete." -#: FlatCAMObj.py:3737 +#: FlatCAMObj.py:3757 msgid "[success] Tool was deleted in Tool Table." msgstr "[success] Tool was deleted in Tool Table." -#: FlatCAMObj.py:4158 +#: FlatCAMObj.py:4178 #, python-format msgid "" "[WARNING_NOTCL] This Geometry can't be processed because it is %s geometry." msgstr "" "[WARNING_NOTCL] This Geometry can't be processed because it is %s geometry." -#: FlatCAMObj.py:4175 +#: FlatCAMObj.py:4195 msgid "[ERROR_NOTCL] Wrong Tool Dia value format entered, use a number." msgstr "[ERROR_NOTCL] Wrong Tool Dia value format entered, use a number." -#: FlatCAMObj.py:4202 +#: FlatCAMObj.py:4222 msgid "[ERROR_NOTCL] Failed. No tool selected in the tool table ..." msgstr "[ERROR_NOTCL] Failed. No tool selected in the tool table ..." -#: FlatCAMObj.py:4240 +#: FlatCAMObj.py:4260 #, python-format msgid "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" msgstr "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" -#: FlatCAMObj.py:4398 FlatCAMObj.py:4636 +#: FlatCAMObj.py:4418 FlatCAMObj.py:4656 msgid "" "[WARNING] Tool Offset is selected in Tool Table but no value is provided.\n" "Add a Tool Offset or change the Offset Type." @@ -1411,20 +1410,20 @@ msgstr "" "[WARNING] Tool Offset is selected in Tool Table but no value is provided.\n" "Add a Tool Offset or change the Offset Type." -#: FlatCAMObj.py:4517 flatcamTools/ToolSolderPaste.py:1107 +#: FlatCAMObj.py:4537 flatcamTools/ToolSolderPaste.py:1107 #: flatcamTools/ToolSolderPaste.py:1162 msgid "[ERROR_NOTCL] Cancelled. Empty file, it has no geometry..." msgstr "[ERROR_NOTCL] Cancelled. Empty file, it has no geometry..." -#: FlatCAMObj.py:4886 FlatCAMObj.py:4896 camlib.py:3348 camlib.py:3357 +#: FlatCAMObj.py:4906 FlatCAMObj.py:4916 camlib.py:3348 camlib.py:3357 msgid "[ERROR_NOTCL] Scale factor has to be a number: integer or float." msgstr "[ERROR_NOTCL] Scale factor has to be a number: integer or float." -#: FlatCAMObj.py:4934 +#: FlatCAMObj.py:4954 msgid "[success] Geometry Scale done." msgstr "[success] Geometry Scale done." -#: FlatCAMObj.py:4951 camlib.py:3426 +#: FlatCAMObj.py:4971 camlib.py:3426 msgid "" "[ERROR_NOTCL] An (x,y) pair of values are needed. Probable you entered only " "one value in the Offset field." @@ -1432,29 +1431,29 @@ msgstr "" "[ERROR_NOTCL] An (x,y) pair of values are needed. Probable you entered only " "one value in the Offset field." -#: FlatCAMObj.py:4971 +#: FlatCAMObj.py:4991 msgid "[success] Geometry Offset done." msgstr "[success] Geometry Offset done." -#: FlatCAMObj.py:5525 FlatCAMObj.py:5530 flatcamTools/ToolSolderPaste.py:1361 +#: FlatCAMObj.py:5546 FlatCAMObj.py:5551 flatcamTools/ToolSolderPaste.py:1361 msgid "Export Machine Code ..." msgstr "Export Machine Code ..." -#: FlatCAMObj.py:5536 flatcamTools/ToolSolderPaste.py:1364 +#: FlatCAMObj.py:5557 flatcamTools/ToolSolderPaste.py:1364 msgid "[WARNING_NOTCL] Export Machine Code cancelled ..." msgstr "[WARNING_NOTCL] Export Machine Code cancelled ..." -#: FlatCAMObj.py:5549 +#: FlatCAMObj.py:5570 #, python-format msgid "[success] Machine Code file saved to: %s" msgstr "[success] Machine Code file saved to: %s" -#: FlatCAMObj.py:5571 +#: FlatCAMObj.py:5592 #, python-format msgid "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" msgstr "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" -#: FlatCAMObj.py:5688 +#: FlatCAMObj.py:5709 #, python-format msgid "" "[WARNING_NOTCL] This CNCJob object can't be processed because it is a %s " @@ -1463,11 +1462,11 @@ msgstr "" "[WARNING_NOTCL] This CNCJob object can't be processed because it is a %s " "CNCJob object." -#: FlatCAMObj.py:5741 +#: FlatCAMObj.py:5762 msgid "[ERROR_NOTCL] G-code does not have a units code: either G20 or G21" msgstr "[ERROR_NOTCL] G-code does not have a units code: either G20 or G21" -#: FlatCAMObj.py:5754 +#: FlatCAMObj.py:5775 msgid "" "[ERROR_NOTCL] Cancelled. The Toolchange Custom code is enabled but it's " "empty." @@ -1475,15 +1474,15 @@ msgstr "" "[ERROR_NOTCL] Cancelled. The Toolchange Custom code is enabled but it's " "empty." -#: FlatCAMObj.py:5761 +#: FlatCAMObj.py:5782 msgid "[success] Toolchange G-code was replaced by a custom code." msgstr "[success] Toolchange G-code was replaced by a custom code." -#: FlatCAMObj.py:5776 flatcamTools/ToolSolderPaste.py:1390 +#: FlatCAMObj.py:5797 flatcamTools/ToolSolderPaste.py:1390 msgid "[WARNING_NOTCL] No such file or directory" msgstr "[WARNING_NOTCL] No such file or directory" -#: FlatCAMObj.py:5796 FlatCAMObj.py:5808 +#: FlatCAMObj.py:5817 FlatCAMObj.py:5829 msgid "" "[WARNING_NOTCL] The used postprocessor file has to have in it's name: " "'toolchange_custom'" @@ -1491,7 +1490,7 @@ msgstr "" "[WARNING_NOTCL] The used postprocessor file has to have in it's name: " "'toolchange_custom'" -#: FlatCAMObj.py:5814 +#: FlatCAMObj.py:5835 msgid "[ERROR] There is no postprocessor file." msgstr "[ERROR] There is no postprocessor file." @@ -1814,7 +1813,7 @@ msgstr "[success] Done. Drill(s) Move completed." msgid "[success] Done. Drill(s) copied." msgstr "[success] Done. Drill(s) copied." -#: flatcamEditors/FlatCAMExcEditor.py:792 flatcamGUI/FlatCAMGUI.py:5026 +#: flatcamEditors/FlatCAMExcEditor.py:792 flatcamGUI/FlatCAMGUI.py:5008 msgid "Excellon Editor" msgstr "Excellon Editor" @@ -1852,7 +1851,7 @@ msgstr "" msgid "Tool Dia:" msgstr "Tool Dia:" -#: flatcamEditors/FlatCAMExcEditor.py:839 flatcamGUI/FlatCAMGUI.py:5055 +#: flatcamEditors/FlatCAMExcEditor.py:839 flatcamGUI/FlatCAMGUI.py:5037 #: flatcamGUI/ObjectUI.py:978 msgid "Diameter for the new tool" msgstr "Diameter for the new tool" @@ -1931,11 +1930,11 @@ msgstr "Linear" msgid "Circular" msgstr "Circular" -#: flatcamEditors/FlatCAMExcEditor.py:944 flatcamGUI/FlatCAMGUI.py:5065 +#: flatcamEditors/FlatCAMExcEditor.py:944 flatcamGUI/FlatCAMGUI.py:5047 msgid "Nr of drills:" msgstr "Nr of drills:" -#: flatcamEditors/FlatCAMExcEditor.py:946 flatcamGUI/FlatCAMGUI.py:5067 +#: flatcamEditors/FlatCAMExcEditor.py:946 flatcamGUI/FlatCAMGUI.py:5049 msgid "Specify how many drills to be in the array." msgstr "Specify how many drills to be in the array." @@ -1947,7 +1946,7 @@ msgid "Direction:" msgstr "Direction:" #: flatcamEditors/FlatCAMExcEditor.py:966 -#: flatcamEditors/FlatCAMGrbEditor.py:2528 flatcamGUI/FlatCAMGUI.py:5082 +#: flatcamEditors/FlatCAMGrbEditor.py:2528 flatcamGUI/FlatCAMGUI.py:5064 msgid "" "Direction on which the linear array is oriented:\n" "- 'X' - horizontal axis \n" @@ -1960,12 +1959,12 @@ msgstr "" "- 'Angle' - a custom angle for the array inclination" #: flatcamEditors/FlatCAMExcEditor.py:979 -#: flatcamEditors/FlatCAMGrbEditor.py:2541 flatcamGUI/FlatCAMGUI.py:5096 +#: flatcamEditors/FlatCAMGrbEditor.py:2541 flatcamGUI/FlatCAMGUI.py:5078 msgid "Pitch:" msgstr "Pitch:" #: flatcamEditors/FlatCAMExcEditor.py:981 -#: flatcamEditors/FlatCAMGrbEditor.py:2543 flatcamGUI/FlatCAMGUI.py:5098 +#: flatcamEditors/FlatCAMGrbEditor.py:2543 flatcamGUI/FlatCAMGUI.py:5080 msgid "Pitch = Distance between elements of the array." msgstr "Pitch = Distance between elements of the array." @@ -1974,7 +1973,7 @@ msgstr "Pitch = Distance between elements of the array." #: flatcamEditors/FlatCAMGeoEditor.py:665 #: flatcamEditors/FlatCAMGrbEditor.py:2550 #: flatcamEditors/FlatCAMGrbEditor.py:2586 -#: flatcamEditors/FlatCAMGrbEditor.py:4588 flatcamGUI/FlatCAMGUI.py:5107 +#: flatcamEditors/FlatCAMGrbEditor.py:4588 flatcamGUI/FlatCAMGUI.py:5089 #: flatcamTools/ToolTransform.py:68 msgid "Angle:" msgstr "Angle:" @@ -2002,8 +2001,8 @@ msgstr "" "clockwise." #: flatcamEditors/FlatCAMExcEditor.py:1026 -#: flatcamEditors/FlatCAMGrbEditor.py:2588 flatcamGUI/FlatCAMGUI.py:5109 -#: flatcamGUI/FlatCAMGUI.py:5135 +#: flatcamEditors/FlatCAMGrbEditor.py:2588 flatcamGUI/FlatCAMGUI.py:5091 +#: flatcamGUI/FlatCAMGUI.py:5117 msgid "Angle at which each element in circular array is placed." msgstr "Angle at which each element in circular array is placed." @@ -2137,12 +2136,13 @@ msgid "Tool" msgstr "Tool" #: flatcamEditors/FlatCAMGeoEditor.py:432 flatcamGUI/FlatCAMGUI.py:4054 -#: flatcamGUI/FlatCAMGUI.py:5618 flatcamGUI/FlatCAMGUI.py:5895 -#: flatcamGUI/FlatCAMGUI.py:6035 flatcamGUI/ObjectUI.py:260 +#: flatcamGUI/FlatCAMGUI.py:5163 flatcamGUI/FlatCAMGUI.py:5597 +#: flatcamGUI/FlatCAMGUI.py:5874 flatcamGUI/FlatCAMGUI.py:6014 +#: flatcamGUI/ObjectUI.py:260 msgid "Tool dia:" msgstr "Tool dia:" -#: flatcamEditors/FlatCAMGeoEditor.py:434 flatcamGUI/FlatCAMGUI.py:6037 +#: flatcamEditors/FlatCAMGeoEditor.py:434 flatcamGUI/FlatCAMGUI.py:6016 msgid "" "Diameter of the tool to\n" "be used in the operation." @@ -2150,8 +2150,8 @@ msgstr "" "Diameter of the tool to\n" "be used in the operation." -#: flatcamEditors/FlatCAMGeoEditor.py:443 flatcamGUI/FlatCAMGUI.py:5801 -#: flatcamGUI/FlatCAMGUI.py:6046 flatcamTools/ToolNonCopperClear.py:165 +#: flatcamEditors/FlatCAMGeoEditor.py:443 flatcamGUI/FlatCAMGUI.py:5780 +#: flatcamGUI/FlatCAMGUI.py:6025 flatcamTools/ToolNonCopperClear.py:165 #: flatcamTools/ToolPaint.py:160 msgid "Overlap Rate:" msgstr "Overlap Rate:" @@ -2181,14 +2181,14 @@ msgstr "" "Higher values = slow processing and slow execution on CNC\n" "due of too many paths." -#: flatcamEditors/FlatCAMGeoEditor.py:461 flatcamGUI/FlatCAMGUI.py:5817 -#: flatcamGUI/FlatCAMGUI.py:5903 flatcamGUI/FlatCAMGUI.py:6056 +#: flatcamEditors/FlatCAMGeoEditor.py:461 flatcamGUI/FlatCAMGUI.py:5796 +#: flatcamGUI/FlatCAMGUI.py:5882 flatcamGUI/FlatCAMGUI.py:6035 #: flatcamTools/ToolCutOut.py:86 flatcamTools/ToolNonCopperClear.py:181 #: flatcamTools/ToolPaint.py:177 msgid "Margin:" msgstr "Margin:" -#: flatcamEditors/FlatCAMGeoEditor.py:463 flatcamGUI/FlatCAMGUI.py:6058 +#: flatcamEditors/FlatCAMGeoEditor.py:463 flatcamGUI/FlatCAMGUI.py:6037 #: flatcamTools/ToolPaint.py:179 msgid "" "Distance by which to avoid\n" @@ -2199,13 +2199,13 @@ msgstr "" "the edges of the polygon to\n" "be painted." -#: flatcamEditors/FlatCAMGeoEditor.py:472 flatcamGUI/FlatCAMGUI.py:5826 -#: flatcamGUI/FlatCAMGUI.py:6067 flatcamTools/ToolNonCopperClear.py:190 +#: flatcamEditors/FlatCAMGeoEditor.py:472 flatcamGUI/FlatCAMGUI.py:5805 +#: flatcamGUI/FlatCAMGUI.py:6046 flatcamTools/ToolNonCopperClear.py:190 #: flatcamTools/ToolPaint.py:188 msgid "Method:" msgstr "Method:" -#: flatcamEditors/FlatCAMGeoEditor.py:474 flatcamGUI/FlatCAMGUI.py:6069 +#: flatcamEditors/FlatCAMGeoEditor.py:474 flatcamGUI/FlatCAMGUI.py:6048 msgid "" "Algorithm to paint the polygon:
Standard: Fixed step inwards." "
Seed-based: Outwards from seed." @@ -2213,14 +2213,14 @@ msgstr "" "Algorithm to paint the polygon:
Standard: Fixed step inwards." "
Seed-based: Outwards from seed." -#: flatcamEditors/FlatCAMGeoEditor.py:487 flatcamGUI/FlatCAMGUI.py:5842 -#: flatcamGUI/FlatCAMGUI.py:6082 flatcamTools/ToolNonCopperClear.py:206 +#: flatcamEditors/FlatCAMGeoEditor.py:487 flatcamGUI/FlatCAMGUI.py:5821 +#: flatcamGUI/FlatCAMGUI.py:6061 flatcamTools/ToolNonCopperClear.py:206 #: flatcamTools/ToolPaint.py:204 msgid "Connect:" msgstr "Connect:" -#: flatcamEditors/FlatCAMGeoEditor.py:489 flatcamGUI/FlatCAMGUI.py:5844 -#: flatcamGUI/FlatCAMGUI.py:6084 flatcamTools/ToolNonCopperClear.py:208 +#: flatcamEditors/FlatCAMGeoEditor.py:489 flatcamGUI/FlatCAMGUI.py:5823 +#: flatcamGUI/FlatCAMGUI.py:6063 flatcamTools/ToolNonCopperClear.py:208 #: flatcamTools/ToolPaint.py:206 msgid "" "Draw lines between resulting\n" @@ -2229,14 +2229,14 @@ msgstr "" "Draw lines between resulting\n" "segments to minimize tool lifts." -#: flatcamEditors/FlatCAMGeoEditor.py:496 flatcamGUI/FlatCAMGUI.py:5851 -#: flatcamGUI/FlatCAMGUI.py:6092 flatcamTools/ToolNonCopperClear.py:215 +#: flatcamEditors/FlatCAMGeoEditor.py:496 flatcamGUI/FlatCAMGUI.py:5830 +#: flatcamGUI/FlatCAMGUI.py:6071 flatcamTools/ToolNonCopperClear.py:215 #: flatcamTools/ToolPaint.py:213 msgid "Contour:" msgstr "Contour:" -#: flatcamEditors/FlatCAMGeoEditor.py:498 flatcamGUI/FlatCAMGUI.py:5853 -#: flatcamGUI/FlatCAMGUI.py:6094 flatcamTools/ToolNonCopperClear.py:217 +#: flatcamEditors/FlatCAMGeoEditor.py:498 flatcamGUI/FlatCAMGUI.py:5832 +#: flatcamGUI/FlatCAMGUI.py:6073 flatcamTools/ToolNonCopperClear.py:217 #: flatcamTools/ToolPaint.py:215 msgid "" "Cut around the perimeter of the polygon\n" @@ -2451,7 +2451,7 @@ msgid "Scale Y" msgstr "Scale Y" #: flatcamEditors/FlatCAMGeoEditor.py:797 -#: flatcamEditors/FlatCAMGrbEditor.py:4720 flatcamGUI/FlatCAMGUI.py:6441 +#: flatcamEditors/FlatCAMGrbEditor.py:4720 flatcamGUI/FlatCAMGUI.py:6420 #: flatcamTools/ToolTransform.py:200 msgid "Link" msgstr "Link" @@ -2466,7 +2466,7 @@ msgstr "" "using the Scale Factor X for both axis." #: flatcamEditors/FlatCAMGeoEditor.py:805 -#: flatcamEditors/FlatCAMGrbEditor.py:4728 flatcamGUI/FlatCAMGUI.py:6449 +#: flatcamEditors/FlatCAMGrbEditor.py:4728 flatcamGUI/FlatCAMGUI.py:6428 #: flatcamTools/ToolTransform.py:208 msgid "Scale Reference" msgstr "Scale Reference" @@ -3029,26 +3029,26 @@ msgstr "Create Paint geometry ..." msgid "Shape transformations ..." msgstr "Shape transformations ..." -#: flatcamEditors/FlatCAMGeoEditor.py:3416 +#: flatcamEditors/FlatCAMGeoEditor.py:3419 #, python-brace-format msgid "" "[WARNING_NOTCL] Editing MultiGeo Geometry, tool: {tool} with diameter: {dia}" msgstr "" "[WARNING_NOTCL] Editing MultiGeo Geometry, tool: {tool} with diameter: {dia}" -#: flatcamEditors/FlatCAMGeoEditor.py:3793 +#: flatcamEditors/FlatCAMGeoEditor.py:3796 msgid "[WARNING_NOTCL] Copy cancelled. No shape selected." msgstr "[WARNING_NOTCL] Copy cancelled. No shape selected." -#: flatcamEditors/FlatCAMGeoEditor.py:3800 flatcamGUI/FlatCAMGUI.py:2727 +#: flatcamEditors/FlatCAMGeoEditor.py:3803 flatcamGUI/FlatCAMGUI.py:2727 #: flatcamGUI/FlatCAMGUI.py:2773 flatcamGUI/FlatCAMGUI.py:2791 #: flatcamGUI/FlatCAMGUI.py:2922 flatcamGUI/FlatCAMGUI.py:2934 #: flatcamGUI/FlatCAMGUI.py:2968 msgid "Click on target point." msgstr "Click on target point." -#: flatcamEditors/FlatCAMGeoEditor.py:4044 -#: flatcamEditors/FlatCAMGeoEditor.py:4079 +#: flatcamEditors/FlatCAMGeoEditor.py:4047 +#: flatcamEditors/FlatCAMGeoEditor.py:4082 msgid "" "[WARNING_NOTCL] A selection of at least 2 geo items is required to do " "Intersection." @@ -3056,9 +3056,9 @@ msgstr "" "[WARNING_NOTCL] A selection of at least 2 geo items is required to do " "Intersection." -#: flatcamEditors/FlatCAMGeoEditor.py:4163 -#: flatcamEditors/FlatCAMGeoEditor.py:4201 -#: flatcamEditors/FlatCAMGeoEditor.py:4277 +#: flatcamEditors/FlatCAMGeoEditor.py:4166 +#: flatcamEditors/FlatCAMGeoEditor.py:4204 +#: flatcamEditors/FlatCAMGeoEditor.py:4280 msgid "" "[ERROR_NOTCL] Negative buffer value is not accepted. Use Buffer interior to " "generate an 'inside' shape" @@ -3066,52 +3066,52 @@ msgstr "" "[ERROR_NOTCL] Negative buffer value is not accepted. Use Buffer interior to " "generate an 'inside' shape" -#: flatcamEditors/FlatCAMGeoEditor.py:4172 -#: flatcamEditors/FlatCAMGeoEditor.py:4210 -#: flatcamEditors/FlatCAMGeoEditor.py:4285 +#: flatcamEditors/FlatCAMGeoEditor.py:4175 +#: flatcamEditors/FlatCAMGeoEditor.py:4213 +#: flatcamEditors/FlatCAMGeoEditor.py:4288 msgid "[WARNING_NOTCL] Nothing selected for buffering." msgstr "[WARNING_NOTCL] Nothing selected for buffering." -#: flatcamEditors/FlatCAMGeoEditor.py:4176 -#: flatcamEditors/FlatCAMGeoEditor.py:4214 -#: flatcamEditors/FlatCAMGeoEditor.py:4289 +#: flatcamEditors/FlatCAMGeoEditor.py:4179 +#: flatcamEditors/FlatCAMGeoEditor.py:4217 +#: flatcamEditors/FlatCAMGeoEditor.py:4292 msgid "[WARNING_NOTCL] Invalid distance for buffering." msgstr "[WARNING_NOTCL] Invalid distance for buffering." -#: flatcamEditors/FlatCAMGeoEditor.py:4186 -#: flatcamEditors/FlatCAMGeoEditor.py:4298 +#: flatcamEditors/FlatCAMGeoEditor.py:4189 +#: flatcamEditors/FlatCAMGeoEditor.py:4301 msgid "" "[ERROR_NOTCL] Failed, the result is empty. Choose a different buffer value." msgstr "" "[ERROR_NOTCL] Failed, the result is empty. Choose a different buffer value." -#: flatcamEditors/FlatCAMGeoEditor.py:4194 +#: flatcamEditors/FlatCAMGeoEditor.py:4197 msgid "[success] Full buffer geometry created." msgstr "[success] Full buffer geometry created." -#: flatcamEditors/FlatCAMGeoEditor.py:4224 +#: flatcamEditors/FlatCAMGeoEditor.py:4227 msgid "" "[ERROR_NOTCL] Failed, the result is empty. Choose a smaller buffer value." msgstr "" "[ERROR_NOTCL] Failed, the result is empty. Choose a smaller buffer value." -#: flatcamEditors/FlatCAMGeoEditor.py:4239 +#: flatcamEditors/FlatCAMGeoEditor.py:4242 msgid "[success] Interior buffer geometry created." msgstr "[success] Interior buffer geometry created." -#: flatcamEditors/FlatCAMGeoEditor.py:4310 +#: flatcamEditors/FlatCAMGeoEditor.py:4313 msgid "[success] Exterior buffer geometry created." msgstr "[success] Exterior buffer geometry created." -#: flatcamEditors/FlatCAMGeoEditor.py:4374 +#: flatcamEditors/FlatCAMGeoEditor.py:4377 msgid "[WARNING_NOTCL] Nothing selected for painting." msgstr "[WARNING_NOTCL] Nothing selected for painting." -#: flatcamEditors/FlatCAMGeoEditor.py:4380 +#: flatcamEditors/FlatCAMGeoEditor.py:4383 msgid "[WARNING] Invalid value for {}" msgstr "[WARNING] Invalid value for {}" -#: flatcamEditors/FlatCAMGeoEditor.py:4386 +#: flatcamEditors/FlatCAMGeoEditor.py:4389 msgid "" "[ERROR_NOTCL] Could not do Paint. Overlap value has to be less than 1.00 " "(100%)." @@ -3119,7 +3119,7 @@ msgstr "" "[ERROR_NOTCL] Could not do Paint. Overlap value has to be less than 1.00 " "(100%)." -#: flatcamEditors/FlatCAMGeoEditor.py:4445 +#: flatcamEditors/FlatCAMGeoEditor.py:4448 #, python-format msgid "" "[ERROR] Could not do Paint. Try a different combination of parameters. Or a " @@ -3130,7 +3130,7 @@ msgstr "" "different method of Paint\n" "%s" -#: flatcamEditors/FlatCAMGeoEditor.py:4456 +#: flatcamEditors/FlatCAMGeoEditor.py:4459 msgid "[success] Paint done." msgstr "[success] Paint done." @@ -3576,7 +3576,6 @@ msgstr "" #: flatcamEditors/FlatCAMGrbEditor.py:4444 #, python-format -#| msgid "[ERROR_NOTCL] Failed to open %s" msgid "" "[ERROR_NOTCL] Failed.\n" "%s" @@ -6495,7 +6494,7 @@ msgid "Gerber General" msgstr "Gerber General" #: flatcamGUI/FlatCAMGUI.py:3995 flatcamGUI/FlatCAMGUI.py:4361 -#: flatcamGUI/FlatCAMGUI.py:5153 flatcamGUI/FlatCAMGUI.py:5525 +#: flatcamGUI/FlatCAMGUI.py:5135 flatcamGUI/FlatCAMGUI.py:5504 #: flatcamGUI/ObjectUI.py:150 flatcamGUI/ObjectUI.py:505 #: flatcamGUI/ObjectUI.py:833 flatcamGUI/ObjectUI.py:1350 msgid "Plot Options:" @@ -6519,18 +6518,18 @@ msgid "Draw polygons in different colors." msgstr "Draw polygons in different colors." #: flatcamGUI/FlatCAMGUI.py:4016 flatcamGUI/FlatCAMGUI.py:4367 -#: flatcamGUI/FlatCAMGUI.py:5157 flatcamGUI/ObjectUI.py:172 +#: flatcamGUI/FlatCAMGUI.py:5139 flatcamGUI/ObjectUI.py:172 msgid "Plot" msgstr "Plot" -#: flatcamGUI/FlatCAMGUI.py:4018 flatcamGUI/FlatCAMGUI.py:5159 +#: flatcamGUI/FlatCAMGUI.py:4018 flatcamGUI/FlatCAMGUI.py:5141 #: flatcamGUI/ObjectUI.py:174 flatcamGUI/ObjectUI.py:546 #: flatcamGUI/ObjectUI.py:879 flatcamGUI/ObjectUI.py:1450 msgid "Plot (show) this object." msgstr "Plot (show) this object." -#: flatcamGUI/FlatCAMGUI.py:4023 flatcamGUI/FlatCAMGUI.py:5166 -#: flatcamGUI/FlatCAMGUI.py:5608 +#: flatcamGUI/FlatCAMGUI.py:4023 flatcamGUI/FlatCAMGUI.py:5149 +#: flatcamGUI/FlatCAMGUI.py:5587 msgid "Circle Steps:" msgstr "Circle Steps:" @@ -6558,8 +6557,8 @@ msgstr "" "Create a Geometry object with\n" "toolpaths to cut outside polygons." -#: flatcamGUI/FlatCAMGUI.py:4056 flatcamGUI/FlatCAMGUI.py:4753 -#: flatcamGUI/FlatCAMGUI.py:5897 flatcamGUI/ObjectUI.py:788 +#: flatcamGUI/FlatCAMGUI.py:4056 flatcamGUI/FlatCAMGUI.py:4735 +#: flatcamGUI/FlatCAMGUI.py:5876 flatcamGUI/ObjectUI.py:788 #: flatcamGUI/ObjectUI.py:804 msgid "Diameter of the cutting tool." msgstr "Diameter of the cutting tool." @@ -6619,7 +6618,7 @@ msgstr "Combine all passes into one object" msgid "Clear non-copper:" msgstr "Clear non-copper:" -#: flatcamGUI/FlatCAMGUI.py:4104 flatcamGUI/FlatCAMGUI.py:5785 +#: flatcamGUI/FlatCAMGUI.py:4104 flatcamGUI/FlatCAMGUI.py:5764 #: flatcamGUI/ObjectUI.py:386 msgid "" "Create a Geometry object with\n" @@ -6731,7 +6730,7 @@ msgstr "" msgid "Gerber Export" msgstr "Gerber Export" -#: flatcamGUI/FlatCAMGUI.py:4232 flatcamGUI/FlatCAMGUI.py:4902 +#: flatcamGUI/FlatCAMGUI.py:4232 flatcamGUI/FlatCAMGUI.py:4884 msgid "Export Options:" msgstr "Export Options:" @@ -6743,7 +6742,7 @@ msgstr "" "The parameters set here are used in the file exported\n" "when using the File -> Export -> Export Gerber menu entry." -#: flatcamGUI/FlatCAMGUI.py:4243 flatcamGUI/FlatCAMGUI.py:4913 +#: flatcamGUI/FlatCAMGUI.py:4243 flatcamGUI/FlatCAMGUI.py:4895 msgid "Units:" msgstr "Units:" @@ -6751,7 +6750,7 @@ msgstr "Units:" msgid "The units used in the Gerber file." msgstr "The units used in the Gerber file." -#: flatcamGUI/FlatCAMGUI.py:4257 flatcamGUI/FlatCAMGUI.py:4927 +#: flatcamGUI/FlatCAMGUI.py:4257 flatcamGUI/FlatCAMGUI.py:4909 msgid "Int/Decimals:" msgstr "Int/Decimals:" @@ -6779,7 +6778,7 @@ msgstr "" "This numbers signify the number of digits in\n" "the decimal part of Gerber coordinates." -#: flatcamGUI/FlatCAMGUI.py:4293 flatcamGUI/FlatCAMGUI.py:4988 +#: flatcamGUI/FlatCAMGUI.py:4293 flatcamGUI/FlatCAMGUI.py:4970 msgid "Zeros:" msgstr "Zeros:" @@ -6797,12 +6796,12 @@ msgstr "" "If TZ is checked then Trailing Zeros are removed\n" "and Leading Zeros are kept." -#: flatcamGUI/FlatCAMGUI.py:4326 flatcamGUI/FlatCAMGUI.py:5029 -#: flatcamGUI/FlatCAMGUI.py:5491 flatcamGUI/FlatCAMGUI.py:5783 -#: flatcamGUI/FlatCAMGUI.py:5884 flatcamGUI/FlatCAMGUI.py:5963 -#: flatcamGUI/FlatCAMGUI.py:6022 flatcamGUI/FlatCAMGUI.py:6125 -#: flatcamGUI/FlatCAMGUI.py:6186 flatcamGUI/FlatCAMGUI.py:6385 -#: flatcamGUI/FlatCAMGUI.py:6512 +#: flatcamGUI/FlatCAMGUI.py:4326 flatcamGUI/FlatCAMGUI.py:5011 +#: flatcamGUI/FlatCAMGUI.py:5470 flatcamGUI/FlatCAMGUI.py:5762 +#: flatcamGUI/FlatCAMGUI.py:5863 flatcamGUI/FlatCAMGUI.py:5942 +#: flatcamGUI/FlatCAMGUI.py:6001 flatcamGUI/FlatCAMGUI.py:6104 +#: flatcamGUI/FlatCAMGUI.py:6165 flatcamGUI/FlatCAMGUI.py:6364 +#: flatcamGUI/FlatCAMGUI.py:6491 msgid "Parameters:" msgstr "Parameters:" @@ -6810,8 +6809,8 @@ msgstr "Parameters:" msgid "A list of Gerber Editor parameters." msgstr "A list of Gerber Editor parameters." -#: flatcamGUI/FlatCAMGUI.py:4336 flatcamGUI/FlatCAMGUI.py:5039 -#: flatcamGUI/FlatCAMGUI.py:5501 +#: flatcamGUI/FlatCAMGUI.py:4336 flatcamGUI/FlatCAMGUI.py:5021 +#: flatcamGUI/FlatCAMGUI.py:5480 msgid "Selection limit:" msgstr "Selection limit:" @@ -6888,7 +6887,7 @@ msgid "Default values for INCH are 2:4" msgstr "Default values for INCH are 2:4" #: flatcamGUI/FlatCAMGUI.py:4418 flatcamGUI/FlatCAMGUI.py:4451 -#: flatcamGUI/FlatCAMGUI.py:4942 +#: flatcamGUI/FlatCAMGUI.py:4924 msgid "" "This numbers signify the number of digits in\n" "the whole part of Excellon coordinates." @@ -6897,7 +6896,7 @@ msgstr "" "the whole part of Excellon coordinates." #: flatcamGUI/FlatCAMGUI.py:4432 flatcamGUI/FlatCAMGUI.py:4465 -#: flatcamGUI/FlatCAMGUI.py:4956 +#: flatcamGUI/FlatCAMGUI.py:4938 msgid "" "This numbers signify the number of digits in\n" "the decimal part of Excellon coordinates." @@ -6917,7 +6916,7 @@ msgstr "Default values for METRIC are 3:3" msgid "Default Zeros:" msgstr "Default Zeros:" -#: flatcamGUI/FlatCAMGUI.py:4477 flatcamGUI/FlatCAMGUI.py:4991 +#: flatcamGUI/FlatCAMGUI.py:4477 flatcamGUI/FlatCAMGUI.py:4973 msgid "" "This sets the type of Excellon zeros.\n" "If LZ then Leading Zeros are kept and\n" @@ -6947,11 +6946,11 @@ msgstr "" "If TZ is checked then Trailing Zeros are kept\n" "and Leading Zeros are removed." -#: flatcamGUI/FlatCAMGUI.py:4502 +#: flatcamGUI/FlatCAMGUI.py:4498 msgid "Default Units:" msgstr "Default Units:" -#: flatcamGUI/FlatCAMGUI.py:4505 +#: flatcamGUI/FlatCAMGUI.py:4501 msgid "" "This sets the default units of Excellon files.\n" "If it is not detected in the parsed file the value here\n" @@ -6963,7 +6962,7 @@ msgstr "" "will be used.Some Excellon files don't have an header\n" "therefore this parameter will be used." -#: flatcamGUI/FlatCAMGUI.py:4516 +#: flatcamGUI/FlatCAMGUI.py:4512 msgid "" "This sets the units of Excellon files.\n" "Some Excellon files don't have an header\n" @@ -6973,15 +6972,15 @@ msgstr "" "Some Excellon files don't have an header\n" "therefore this parameter will be used." -#: flatcamGUI/FlatCAMGUI.py:4532 +#: flatcamGUI/FlatCAMGUI.py:4520 msgid "Excellon Optimization:" msgstr "Excellon Optimization:" -#: flatcamGUI/FlatCAMGUI.py:4539 +#: flatcamGUI/FlatCAMGUI.py:4523 msgid "Algorithm: " msgstr "Algorithm: " -#: flatcamGUI/FlatCAMGUI.py:4542 flatcamGUI/FlatCAMGUI.py:4555 +#: flatcamGUI/FlatCAMGUI.py:4525 flatcamGUI/FlatCAMGUI.py:4539 msgid "" "This sets the optimization type for the Excellon drill path.\n" "If MH is checked then Google OR-Tools algorithm with MetaHeuristic\n" @@ -7001,11 +7000,11 @@ msgstr "" "If DISABLED, then FlatCAM works in 32bit mode and it uses \n" "Travelling Salesman algorithm for path optimization." -#: flatcamGUI/FlatCAMGUI.py:4567 +#: flatcamGUI/FlatCAMGUI.py:4550 msgid "Optimization Time: " msgstr "Optimization Time: " -#: flatcamGUI/FlatCAMGUI.py:4570 +#: flatcamGUI/FlatCAMGUI.py:4553 msgid "" "When OR-Tools Metaheuristic (MH) is enabled there is a\n" "maximum threshold for how much time is spent doing the\n" @@ -7017,15 +7016,15 @@ msgstr "" "path optimization. This max duration is set here.\n" "In seconds." -#: flatcamGUI/FlatCAMGUI.py:4612 +#: flatcamGUI/FlatCAMGUI.py:4596 msgid "Excellon Options" msgstr "Excellon Options" -#: flatcamGUI/FlatCAMGUI.py:4615 flatcamGUI/ObjectUI.py:584 +#: flatcamGUI/FlatCAMGUI.py:4599 flatcamGUI/ObjectUI.py:584 msgid "Create CNC Job" msgstr "Create CNC Job" -#: flatcamGUI/FlatCAMGUI.py:4617 +#: flatcamGUI/FlatCAMGUI.py:4601 msgid "" "Parameters used to create a CNC Job object\n" "for this drill object." @@ -7033,13 +7032,13 @@ msgstr "" "Parameters used to create a CNC Job object\n" "for this drill object." -#: flatcamGUI/FlatCAMGUI.py:4625 flatcamGUI/FlatCAMGUI.py:5217 -#: flatcamGUI/FlatCAMGUI.py:6321 flatcamGUI/ObjectUI.py:595 +#: flatcamGUI/FlatCAMGUI.py:4609 flatcamGUI/FlatCAMGUI.py:5196 +#: flatcamGUI/FlatCAMGUI.py:6300 flatcamGUI/ObjectUI.py:595 #: flatcamGUI/ObjectUI.py:1062 flatcamTools/ToolCalculators.py:108 msgid "Cut Z:" msgstr "Cut Z:" -#: flatcamGUI/FlatCAMGUI.py:4627 flatcamGUI/ObjectUI.py:597 +#: flatcamGUI/FlatCAMGUI.py:4611 flatcamGUI/ObjectUI.py:597 msgid "" "Drill depth (negative)\n" "below the copper surface." @@ -7047,12 +7046,12 @@ msgstr "" "Drill depth (negative)\n" "below the copper surface." -#: flatcamGUI/FlatCAMGUI.py:4634 flatcamGUI/FlatCAMGUI.py:5250 +#: flatcamGUI/FlatCAMGUI.py:4618 flatcamGUI/FlatCAMGUI.py:5229 #: flatcamGUI/ObjectUI.py:605 flatcamGUI/ObjectUI.py:1098 msgid "Travel Z:" msgstr "Travel Z:" -#: flatcamGUI/FlatCAMGUI.py:4636 flatcamGUI/ObjectUI.py:607 +#: flatcamGUI/FlatCAMGUI.py:4620 flatcamGUI/ObjectUI.py:607 msgid "" "Tool height when travelling\n" "across the XY plane." @@ -7060,11 +7059,11 @@ msgstr "" "Tool height when travelling\n" "across the XY plane." -#: flatcamGUI/FlatCAMGUI.py:4644 flatcamGUI/FlatCAMGUI.py:5260 +#: flatcamGUI/FlatCAMGUI.py:4628 flatcamGUI/FlatCAMGUI.py:5239 msgid "Tool change:" msgstr "Tool change:" -#: flatcamGUI/FlatCAMGUI.py:4646 flatcamGUI/FlatCAMGUI.py:5262 +#: flatcamGUI/FlatCAMGUI.py:4630 flatcamGUI/FlatCAMGUI.py:5241 #: flatcamGUI/ObjectUI.py:617 msgid "" "Include tool-change sequence\n" @@ -7073,19 +7072,19 @@ msgstr "" "Include tool-change sequence\n" "in G-Code (Pause for tool change)." -#: flatcamGUI/FlatCAMGUI.py:4653 flatcamGUI/FlatCAMGUI.py:5270 +#: flatcamGUI/FlatCAMGUI.py:4637 flatcamGUI/FlatCAMGUI.py:5249 msgid "Toolchange Z:" msgstr "Toolchange Z:" -#: flatcamGUI/FlatCAMGUI.py:4655 flatcamGUI/FlatCAMGUI.py:5272 +#: flatcamGUI/FlatCAMGUI.py:4639 flatcamGUI/FlatCAMGUI.py:5251 msgid "Toolchange Z position." msgstr "Toolchange Z position." -#: flatcamGUI/FlatCAMGUI.py:4661 +#: flatcamGUI/FlatCAMGUI.py:4645 msgid "Feedrate:" msgstr "Feedrate:" -#: flatcamGUI/FlatCAMGUI.py:4663 +#: flatcamGUI/FlatCAMGUI.py:4647 msgid "" "Tool speed while drilling\n" "(in units per minute)." @@ -7093,11 +7092,11 @@ msgstr "" "Tool speed while drilling\n" "(in units per minute)." -#: flatcamGUI/FlatCAMGUI.py:4671 +#: flatcamGUI/FlatCAMGUI.py:4655 msgid "Spindle Speed:" msgstr "Spindle Speed:" -#: flatcamGUI/FlatCAMGUI.py:4673 flatcamGUI/FlatCAMGUI.py:5302 +#: flatcamGUI/FlatCAMGUI.py:4657 flatcamGUI/FlatCAMGUI.py:5281 #: flatcamGUI/ObjectUI.py:684 msgid "" "Speed of the spindle\n" @@ -7106,11 +7105,11 @@ msgstr "" "Speed of the spindle\n" "in RPM (optional)" -#: flatcamGUI/FlatCAMGUI.py:4681 flatcamGUI/FlatCAMGUI.py:5310 +#: flatcamGUI/FlatCAMGUI.py:4665 flatcamGUI/FlatCAMGUI.py:5289 msgid "Spindle dir.:" msgstr "Spindle dir.:" -#: flatcamGUI/FlatCAMGUI.py:4683 flatcamGUI/FlatCAMGUI.py:5312 +#: flatcamGUI/FlatCAMGUI.py:4667 flatcamGUI/FlatCAMGUI.py:5291 msgid "" "This sets the direction that the spindle is rotating.\n" "It can be either:\n" @@ -7122,12 +7121,12 @@ msgstr "" "- CW = clockwise or\n" "- CCW = counter clockwise" -#: flatcamGUI/FlatCAMGUI.py:4695 flatcamGUI/FlatCAMGUI.py:5324 +#: flatcamGUI/FlatCAMGUI.py:4679 flatcamGUI/FlatCAMGUI.py:5303 #: flatcamGUI/ObjectUI.py:692 flatcamGUI/ObjectUI.py:1224 msgid "Dwell:" msgstr "Dwell:" -#: flatcamGUI/FlatCAMGUI.py:4697 flatcamGUI/FlatCAMGUI.py:5326 +#: flatcamGUI/FlatCAMGUI.py:4681 flatcamGUI/FlatCAMGUI.py:5305 #: flatcamGUI/ObjectUI.py:694 flatcamGUI/ObjectUI.py:1227 msgid "" "Pause to allow the spindle to reach its\n" @@ -7136,21 +7135,21 @@ msgstr "" "Pause to allow the spindle to reach its\n" "speed before cutting." -#: flatcamGUI/FlatCAMGUI.py:4700 flatcamGUI/FlatCAMGUI.py:5329 +#: flatcamGUI/FlatCAMGUI.py:4684 flatcamGUI/FlatCAMGUI.py:5308 msgid "Duration:" msgstr "Duration:" -#: flatcamGUI/FlatCAMGUI.py:4702 flatcamGUI/FlatCAMGUI.py:5331 +#: flatcamGUI/FlatCAMGUI.py:4686 flatcamGUI/FlatCAMGUI.py:5310 #: flatcamGUI/ObjectUI.py:699 flatcamGUI/ObjectUI.py:1234 msgid "Number of milliseconds for spindle to dwell." msgstr "Number of milliseconds for spindle to dwell." -#: flatcamGUI/FlatCAMGUI.py:4714 flatcamGUI/FlatCAMGUI.py:5341 +#: flatcamGUI/FlatCAMGUI.py:4698 flatcamGUI/FlatCAMGUI.py:5320 #: flatcamGUI/ObjectUI.py:707 msgid "Postprocessor:" msgstr "Postprocessor:" -#: flatcamGUI/FlatCAMGUI.py:4716 +#: flatcamGUI/FlatCAMGUI.py:4700 msgid "" "The postprocessor file that dictates\n" "gcode output." @@ -7158,11 +7157,11 @@ msgstr "" "The postprocessor file that dictates\n" "gcode output." -#: flatcamGUI/FlatCAMGUI.py:4725 +#: flatcamGUI/FlatCAMGUI.py:4709 msgid "Gcode: " msgstr "Gcode: " -#: flatcamGUI/FlatCAMGUI.py:4727 +#: flatcamGUI/FlatCAMGUI.py:4711 msgid "" "Choose what to use for GCode generation:\n" "'Drills', 'Slots' or 'Both'.\n" @@ -7174,23 +7173,23 @@ msgstr "" "When choosing 'Slots' or 'Both', slots will be\n" "converted to drills." -#: flatcamGUI/FlatCAMGUI.py:4743 flatcamGUI/ObjectUI.py:772 +#: flatcamGUI/FlatCAMGUI.py:4727 flatcamGUI/ObjectUI.py:772 msgid "Mill Holes" msgstr "Mill Holes" -#: flatcamGUI/FlatCAMGUI.py:4745 flatcamGUI/ObjectUI.py:774 +#: flatcamGUI/FlatCAMGUI.py:4729 flatcamGUI/ObjectUI.py:774 msgid "Create Geometry for milling holes." msgstr "Create Geometry for milling holes." -#: flatcamGUI/FlatCAMGUI.py:4751 +#: flatcamGUI/FlatCAMGUI.py:4733 msgid "Drill Tool dia:" msgstr "Drill Tool dia:" -#: flatcamGUI/FlatCAMGUI.py:4758 +#: flatcamGUI/FlatCAMGUI.py:4740 msgid "Slot Tool dia:" msgstr "Slot Tool dia:" -#: flatcamGUI/FlatCAMGUI.py:4760 +#: flatcamGUI/FlatCAMGUI.py:4742 msgid "" "Diameter of the cutting tool\n" "when milling slots." @@ -7198,19 +7197,19 @@ msgstr "" "Diameter of the cutting tool\n" "when milling slots." -#: flatcamGUI/FlatCAMGUI.py:4772 +#: flatcamGUI/FlatCAMGUI.py:4754 msgid "Defaults" msgstr "Defaults" -#: flatcamGUI/FlatCAMGUI.py:4785 +#: flatcamGUI/FlatCAMGUI.py:4767 msgid "Excellon Adv. Options" msgstr "Excellon Adv. Options" -#: flatcamGUI/FlatCAMGUI.py:4791 flatcamGUI/FlatCAMGUI.py:5364 +#: flatcamGUI/FlatCAMGUI.py:4773 flatcamGUI/FlatCAMGUI.py:5343 msgid "Advanced Options:" msgstr "Advanced Options:" -#: flatcamGUI/FlatCAMGUI.py:4793 +#: flatcamGUI/FlatCAMGUI.py:4775 msgid "" "Parameters used to create a CNC Job object\n" "for this drill object that are shown when App Level is Advanced." @@ -7218,11 +7217,11 @@ msgstr "" "Parameters used to create a CNC Job object\n" "for this drill object that are shown when App Level is Advanced." -#: flatcamGUI/FlatCAMGUI.py:4801 +#: flatcamGUI/FlatCAMGUI.py:4783 msgid "Offset Z:" msgstr "Offset Z:" -#: flatcamGUI/FlatCAMGUI.py:4803 flatcamGUI/ObjectUI.py:574 +#: flatcamGUI/FlatCAMGUI.py:4785 flatcamGUI/ObjectUI.py:574 msgid "" "Some drill bits (the larger ones) need to drill deeper\n" "to create the desired exit hole diameter due of the tip shape.\n" @@ -7232,20 +7231,20 @@ msgstr "" "to create the desired exit hole diameter due of the tip shape.\n" "The value here can compensate the Cut Z parameter." -#: flatcamGUI/FlatCAMGUI.py:4810 flatcamGUI/FlatCAMGUI.py:5375 +#: flatcamGUI/FlatCAMGUI.py:4792 flatcamGUI/FlatCAMGUI.py:5354 msgid "Toolchange X,Y:" msgstr "Toolchange X,Y:" -#: flatcamGUI/FlatCAMGUI.py:4812 flatcamGUI/FlatCAMGUI.py:5377 +#: flatcamGUI/FlatCAMGUI.py:4794 flatcamGUI/FlatCAMGUI.py:5356 msgid "Toolchange X,Y position." msgstr "Toolchange X,Y position." -#: flatcamGUI/FlatCAMGUI.py:4818 flatcamGUI/FlatCAMGUI.py:5384 +#: flatcamGUI/FlatCAMGUI.py:4800 flatcamGUI/FlatCAMGUI.py:5363 #: flatcamGUI/ObjectUI.py:634 msgid "Start move Z:" msgstr "Start move Z:" -#: flatcamGUI/FlatCAMGUI.py:4820 +#: flatcamGUI/FlatCAMGUI.py:4802 msgid "" "Height of the tool just after start.\n" "Delete the value if you don't need this feature." @@ -7253,12 +7252,12 @@ msgstr "" "Height of the tool just after start.\n" "Delete the value if you don't need this feature." -#: flatcamGUI/FlatCAMGUI.py:4827 flatcamGUI/FlatCAMGUI.py:5394 +#: flatcamGUI/FlatCAMGUI.py:4809 flatcamGUI/FlatCAMGUI.py:5373 #: flatcamGUI/ObjectUI.py:644 flatcamGUI/ObjectUI.py:1144 msgid "End move Z:" msgstr "End move Z:" -#: flatcamGUI/FlatCAMGUI.py:4829 flatcamGUI/FlatCAMGUI.py:5396 +#: flatcamGUI/FlatCAMGUI.py:4811 flatcamGUI/FlatCAMGUI.py:5375 msgid "" "Height of the tool after\n" "the last move at the end of the job." @@ -7266,12 +7265,12 @@ msgstr "" "Height of the tool after\n" "the last move at the end of the job." -#: flatcamGUI/FlatCAMGUI.py:4836 flatcamGUI/FlatCAMGUI.py:5404 +#: flatcamGUI/FlatCAMGUI.py:4818 flatcamGUI/FlatCAMGUI.py:5383 #: flatcamGUI/ObjectUI.py:665 msgid "Feedrate Rapids:" msgstr "Feedrate Rapids:" -#: flatcamGUI/FlatCAMGUI.py:4838 flatcamGUI/ObjectUI.py:667 +#: flatcamGUI/FlatCAMGUI.py:4820 flatcamGUI/ObjectUI.py:667 msgid "" "Tool speed while drilling\n" "(in units per minute).\n" @@ -7285,12 +7284,12 @@ msgstr "" "It is useful only for Marlin,\n" "ignore for any other cases." -#: flatcamGUI/FlatCAMGUI.py:4849 flatcamGUI/FlatCAMGUI.py:5428 +#: flatcamGUI/FlatCAMGUI.py:4831 flatcamGUI/FlatCAMGUI.py:5407 #: flatcamGUI/ObjectUI.py:718 flatcamGUI/ObjectUI.py:1256 msgid "Probe Z depth:" msgstr "Probe Z depth:" -#: flatcamGUI/FlatCAMGUI.py:4851 flatcamGUI/FlatCAMGUI.py:5430 +#: flatcamGUI/FlatCAMGUI.py:4833 flatcamGUI/FlatCAMGUI.py:5409 #: flatcamGUI/ObjectUI.py:720 flatcamGUI/ObjectUI.py:1259 msgid "" "The maximum depth that the probe is allowed\n" @@ -7299,21 +7298,21 @@ msgstr "" "The maximum depth that the probe is allowed\n" "to probe. Negative value, in current units." -#: flatcamGUI/FlatCAMGUI.py:4859 flatcamGUI/FlatCAMGUI.py:5438 +#: flatcamGUI/FlatCAMGUI.py:4841 flatcamGUI/FlatCAMGUI.py:5417 #: flatcamGUI/ObjectUI.py:730 flatcamGUI/ObjectUI.py:1270 msgid "Feedrate Probe:" msgstr "Feedrate Probe:" -#: flatcamGUI/FlatCAMGUI.py:4861 flatcamGUI/FlatCAMGUI.py:5440 +#: flatcamGUI/FlatCAMGUI.py:4843 flatcamGUI/FlatCAMGUI.py:5419 #: flatcamGUI/ObjectUI.py:732 flatcamGUI/ObjectUI.py:1273 msgid "The feedrate used while the probe is probing." msgstr "The feedrate used while the probe is probing." -#: flatcamGUI/FlatCAMGUI.py:4867 flatcamGUI/FlatCAMGUI.py:5447 +#: flatcamGUI/FlatCAMGUI.py:4849 flatcamGUI/FlatCAMGUI.py:5426 msgid "Fast Plunge:" msgstr "Fast Plunge:" -#: flatcamGUI/FlatCAMGUI.py:4869 flatcamGUI/FlatCAMGUI.py:5449 +#: flatcamGUI/FlatCAMGUI.py:4851 flatcamGUI/FlatCAMGUI.py:5428 msgid "" "By checking this, the vertical move from\n" "Z_Toolchange to Z_move is done with G0,\n" @@ -7325,11 +7324,11 @@ msgstr "" "meaning the fastest speed available.\n" "WARNING: the move is done at Toolchange X,Y coords." -#: flatcamGUI/FlatCAMGUI.py:4878 +#: flatcamGUI/FlatCAMGUI.py:4860 msgid "Fast Retract:" msgstr "Fast Retract:" -#: flatcamGUI/FlatCAMGUI.py:4880 +#: flatcamGUI/FlatCAMGUI.py:4862 msgid "" "Exit hole strategy.\n" " - When uncheked, while exiting the drilled hole the drill bit\n" @@ -7345,11 +7344,11 @@ msgstr "" " - When checked the travel from Z cut (cut depth) to Z_move\n" "(travel height) is done as fast as possible (G0) in one move." -#: flatcamGUI/FlatCAMGUI.py:4899 +#: flatcamGUI/FlatCAMGUI.py:4881 msgid "Excellon Export" msgstr "Excellon Export" -#: flatcamGUI/FlatCAMGUI.py:4904 +#: flatcamGUI/FlatCAMGUI.py:4886 msgid "" "The parameters set here are used in the file exported\n" "when using the File -> Export -> Export Excellon menu entry." @@ -7357,11 +7356,11 @@ msgstr "" "The parameters set here are used in the file exported\n" "when using the File -> Export -> Export Excellon menu entry." -#: flatcamGUI/FlatCAMGUI.py:4915 flatcamGUI/FlatCAMGUI.py:4921 +#: flatcamGUI/FlatCAMGUI.py:4897 flatcamGUI/FlatCAMGUI.py:4903 msgid "The units used in the Excellon file." msgstr "The units used in the Excellon file." -#: flatcamGUI/FlatCAMGUI.py:4929 +#: flatcamGUI/FlatCAMGUI.py:4911 msgid "" "The NC drill files, usually named Excellon files\n" "are files that can be found in different formats.\n" @@ -7373,11 +7372,11 @@ msgstr "" "Here we set the format used when the provided\n" "coordinates are not using period." -#: flatcamGUI/FlatCAMGUI.py:4965 +#: flatcamGUI/FlatCAMGUI.py:4947 msgid "Format:" msgstr "Format:" -#: flatcamGUI/FlatCAMGUI.py:4967 flatcamGUI/FlatCAMGUI.py:4977 +#: flatcamGUI/FlatCAMGUI.py:4949 flatcamGUI/FlatCAMGUI.py:4959 msgid "" "Select the kind of coordinates format used.\n" "Coordinates can be saved with decimal point or without.\n" @@ -7393,7 +7392,7 @@ msgstr "" "Also it will have to be specified if LZ = leading zeros are kept\n" "or TZ = trailing zeros are kept." -#: flatcamGUI/FlatCAMGUI.py:5001 +#: flatcamGUI/FlatCAMGUI.py:4983 msgid "" "This sets the default type of Excellon zeros.\n" "If LZ then Leading Zeros are kept and\n" @@ -7407,11 +7406,11 @@ msgstr "" "If TZ is checked then Trailing Zeros are kept\n" "and Leading Zeros are removed." -#: flatcamGUI/FlatCAMGUI.py:5031 +#: flatcamGUI/FlatCAMGUI.py:5013 msgid "A list of Excellon Editor parameters." msgstr "A list of Excellon Editor parameters." -#: flatcamGUI/FlatCAMGUI.py:5041 +#: flatcamGUI/FlatCAMGUI.py:5023 msgid "" "Set the number of selected Excellon geometry\n" "items above which the utility geometry\n" @@ -7425,27 +7424,27 @@ msgstr "" "Increases the performance when moving a\n" "large number of geometric elements." -#: flatcamGUI/FlatCAMGUI.py:5053 +#: flatcamGUI/FlatCAMGUI.py:5035 msgid "New Tool Dia:" msgstr "New Tool Dia:" -#: flatcamGUI/FlatCAMGUI.py:5076 +#: flatcamGUI/FlatCAMGUI.py:5058 msgid "Linear Drill Array:" msgstr "Linear Drill Array:" -#: flatcamGUI/FlatCAMGUI.py:5080 +#: flatcamGUI/FlatCAMGUI.py:5062 msgid "Linear Dir.:" msgstr "Linear Dir.:" -#: flatcamGUI/FlatCAMGUI.py:5116 +#: flatcamGUI/FlatCAMGUI.py:5098 msgid "Circular Drill Array:" msgstr "Circular Drill Array:" -#: flatcamGUI/FlatCAMGUI.py:5120 +#: flatcamGUI/FlatCAMGUI.py:5102 msgid "Circular Dir.:" msgstr "Circular Dir.:" -#: flatcamGUI/FlatCAMGUI.py:5122 +#: flatcamGUI/FlatCAMGUI.py:5104 msgid "" "Direction for circular array.\n" "Can be CW = clockwise or CCW = counter clockwise." @@ -7453,15 +7452,15 @@ msgstr "" "Direction for circular array.\n" "Can be CW = clockwise or CCW = counter clockwise." -#: flatcamGUI/FlatCAMGUI.py:5133 +#: flatcamGUI/FlatCAMGUI.py:5115 msgid "Circ. Angle:" msgstr "Circ. Angle:" -#: flatcamGUI/FlatCAMGUI.py:5150 +#: flatcamGUI/FlatCAMGUI.py:5132 msgid "Geometry General" msgstr "Geometry General" -#: flatcamGUI/FlatCAMGUI.py:5168 +#: flatcamGUI/FlatCAMGUI.py:5151 msgid "" "The number of circle steps for Geometry \n" "circle and arc shapes linear approximation." @@ -7469,31 +7468,24 @@ msgstr "" "The number of circle steps for Geometry \n" "circle and arc shapes linear approximation." -#: flatcamGUI/FlatCAMGUI.py:5176 -msgid "Tools" -msgstr "Tools" +#: flatcamGUI/FlatCAMGUI.py:5159 +#| msgid "Tools" +msgid "Tools:" +msgstr "Tools:" -#: flatcamGUI/FlatCAMGUI.py:5183 -msgid "Tool dia: " -msgstr "Tool dia: " +#: flatcamGUI/FlatCAMGUI.py:5165 flatcamGUI/FlatCAMGUI.py:5774 +msgid "Diameters of the cutting tools, separated by ','" +msgstr "Diameters of the cutting tools, separated by ','" -#: flatcamGUI/FlatCAMGUI.py:5185 -msgid "" -"The diameter of the cutting\n" -"tool.." -msgstr "" -"The diameter of the cutting\n" -"tool.." - -#: flatcamGUI/FlatCAMGUI.py:5200 +#: flatcamGUI/FlatCAMGUI.py:5179 msgid "Geometry Options" msgstr "Geometry Options" -#: flatcamGUI/FlatCAMGUI.py:5205 +#: flatcamGUI/FlatCAMGUI.py:5184 msgid "Create CNC Job:" msgstr "Create CNC Job:" -#: flatcamGUI/FlatCAMGUI.py:5207 +#: flatcamGUI/FlatCAMGUI.py:5186 msgid "" "Create a CNC Job object\n" "tracing the contours of this\n" @@ -7503,7 +7495,7 @@ msgstr "" "tracing the contours of this\n" "Geometry object." -#: flatcamGUI/FlatCAMGUI.py:5219 flatcamGUI/ObjectUI.py:1065 +#: flatcamGUI/FlatCAMGUI.py:5198 flatcamGUI/ObjectUI.py:1065 msgid "" "Cutting depth (negative)\n" "below the copper surface." @@ -7511,19 +7503,19 @@ msgstr "" "Cutting depth (negative)\n" "below the copper surface." -#: flatcamGUI/FlatCAMGUI.py:5227 +#: flatcamGUI/FlatCAMGUI.py:5206 msgid "Multidepth" msgstr "Multidepth" -#: flatcamGUI/FlatCAMGUI.py:5229 +#: flatcamGUI/FlatCAMGUI.py:5208 msgid "Multidepth usage: True or False." msgstr "Multidepth usage: True or False." -#: flatcamGUI/FlatCAMGUI.py:5234 +#: flatcamGUI/FlatCAMGUI.py:5213 msgid "Depth/Pass:" msgstr "Depth/Pass:" -#: flatcamGUI/FlatCAMGUI.py:5236 +#: flatcamGUI/FlatCAMGUI.py:5215 msgid "" "The depth to cut on each pass,\n" "when multidepth is enabled.\n" @@ -7537,7 +7529,7 @@ msgstr "" "it is a fraction from the depth\n" "which has negative value." -#: flatcamGUI/FlatCAMGUI.py:5252 flatcamGUI/ObjectUI.py:1101 +#: flatcamGUI/FlatCAMGUI.py:5231 flatcamGUI/ObjectUI.py:1101 msgid "" "Height of the tool when\n" "moving without cutting." @@ -7545,11 +7537,11 @@ msgstr "" "Height of the tool when\n" "moving without cutting." -#: flatcamGUI/FlatCAMGUI.py:5279 flatcamGUI/ObjectUI.py:1156 +#: flatcamGUI/FlatCAMGUI.py:5258 flatcamGUI/ObjectUI.py:1156 msgid "Feed Rate X-Y:" msgstr "Feed Rate X-Y:" -#: flatcamGUI/FlatCAMGUI.py:5281 flatcamGUI/ObjectUI.py:1159 +#: flatcamGUI/FlatCAMGUI.py:5260 flatcamGUI/ObjectUI.py:1159 msgid "" "Cutting speed in the XY\n" "plane in units per minute" @@ -7557,11 +7549,11 @@ msgstr "" "Cutting speed in the XY\n" "plane in units per minute" -#: flatcamGUI/FlatCAMGUI.py:5289 +#: flatcamGUI/FlatCAMGUI.py:5268 msgid "Feed Rate Z:" msgstr "Feed Rate Z:" -#: flatcamGUI/FlatCAMGUI.py:5291 +#: flatcamGUI/FlatCAMGUI.py:5270 msgid "" "Cutting speed in the XY\n" "plane in units per minute.\n" @@ -7571,12 +7563,12 @@ msgstr "" "plane in units per minute.\n" "It is called also Plunge." -#: flatcamGUI/FlatCAMGUI.py:5300 flatcamGUI/ObjectUI.py:682 +#: flatcamGUI/FlatCAMGUI.py:5279 flatcamGUI/ObjectUI.py:682 #: flatcamGUI/ObjectUI.py:1211 msgid "Spindle speed:" msgstr "Spindle speed:" -#: flatcamGUI/FlatCAMGUI.py:5343 +#: flatcamGUI/FlatCAMGUI.py:5322 msgid "" "The postprocessor file that dictates\n" "Machine Code output." @@ -7584,11 +7576,11 @@ msgstr "" "The postprocessor file that dictates\n" "Machine Code output." -#: flatcamGUI/FlatCAMGUI.py:5359 +#: flatcamGUI/FlatCAMGUI.py:5338 msgid "Geometry Adv. Options" msgstr "Geometry Adv. Options" -#: flatcamGUI/FlatCAMGUI.py:5366 +#: flatcamGUI/FlatCAMGUI.py:5345 msgid "" "Parameters to create a CNC Job object\n" "tracing the contours of a Geometry object." @@ -7596,7 +7588,7 @@ msgstr "" "Parameters to create a CNC Job object\n" "tracing the contours of a Geometry object." -#: flatcamGUI/FlatCAMGUI.py:5386 +#: flatcamGUI/FlatCAMGUI.py:5365 msgid "" "Height of the tool just after starting the work.\n" "Delete the value if you don't need this feature." @@ -7604,7 +7596,7 @@ msgstr "" "Height of the tool just after starting the work.\n" "Delete the value if you don't need this feature." -#: flatcamGUI/FlatCAMGUI.py:5406 +#: flatcamGUI/FlatCAMGUI.py:5385 msgid "" "Cutting speed in the XY plane\n" "(in units per minute).\n" @@ -7618,11 +7610,11 @@ msgstr "" "It is useful only for Marlin,\n" "ignore for any other cases." -#: flatcamGUI/FlatCAMGUI.py:5418 +#: flatcamGUI/FlatCAMGUI.py:5397 msgid "Re-cut 1st pt." msgstr "Re-cut 1st pt." -#: flatcamGUI/FlatCAMGUI.py:5420 flatcamGUI/ObjectUI.py:1202 +#: flatcamGUI/FlatCAMGUI.py:5399 flatcamGUI/ObjectUI.py:1202 msgid "" "In order to remove possible\n" "copper leftovers where first cut\n" @@ -7634,11 +7626,11 @@ msgstr "" "meet with last cut, we generate an\n" "extended cut over the first cut section." -#: flatcamGUI/FlatCAMGUI.py:5459 +#: flatcamGUI/FlatCAMGUI.py:5438 msgid "Seg. X size:" msgstr "Seg. X size:" -#: flatcamGUI/FlatCAMGUI.py:5461 +#: flatcamGUI/FlatCAMGUI.py:5440 msgid "" "The size of the trace segment on the X axis.\n" "Useful for auto-leveling.\n" @@ -7648,11 +7640,11 @@ msgstr "" "Useful for auto-leveling.\n" "A value of 0 means no segmentation on the X axis." -#: flatcamGUI/FlatCAMGUI.py:5470 +#: flatcamGUI/FlatCAMGUI.py:5449 msgid "Seg. Y size:" msgstr "Seg. Y size:" -#: flatcamGUI/FlatCAMGUI.py:5472 +#: flatcamGUI/FlatCAMGUI.py:5451 msgid "" "The size of the trace segment on the Y axis.\n" "Useful for auto-leveling.\n" @@ -7662,15 +7654,15 @@ msgstr "" "Useful for auto-leveling.\n" "A value of 0 means no segmentation on the Y axis." -#: flatcamGUI/FlatCAMGUI.py:5488 +#: flatcamGUI/FlatCAMGUI.py:5467 msgid "Geometry Editor" msgstr "Geometry Editor" -#: flatcamGUI/FlatCAMGUI.py:5493 +#: flatcamGUI/FlatCAMGUI.py:5472 msgid "A list of Geometry Editor parameters." msgstr "A list of Geometry Editor parameters." -#: flatcamGUI/FlatCAMGUI.py:5503 +#: flatcamGUI/FlatCAMGUI.py:5482 msgid "" "Set the number of selected geometry\n" "items above which the utility geometry\n" @@ -7684,20 +7676,20 @@ msgstr "" "Increases the performance when moving a\n" "large number of geometric elements." -#: flatcamGUI/FlatCAMGUI.py:5522 +#: flatcamGUI/FlatCAMGUI.py:5501 msgid "CNC Job General" msgstr "CNC Job General" -#: flatcamGUI/FlatCAMGUI.py:5535 flatcamGUI/ObjectUI.py:544 +#: flatcamGUI/FlatCAMGUI.py:5514 flatcamGUI/ObjectUI.py:544 #: flatcamGUI/ObjectUI.py:877 flatcamGUI/ObjectUI.py:1447 msgid "Plot Object" msgstr "Plot Object" -#: flatcamGUI/FlatCAMGUI.py:5542 +#: flatcamGUI/FlatCAMGUI.py:5521 msgid "Plot kind:" msgstr "Plot kind:" -#: flatcamGUI/FlatCAMGUI.py:5544 flatcamGUI/ObjectUI.py:1356 +#: flatcamGUI/FlatCAMGUI.py:5523 flatcamGUI/ObjectUI.py:1356 msgid "" "This selects the kind of geometries on the canvas to plot.\n" "Those can be either of type 'Travel' which means the moves\n" @@ -7709,11 +7701,11 @@ msgstr "" "above the work piece or it can be of type 'Cut',\n" "which means the moves that cut into the material." -#: flatcamGUI/FlatCAMGUI.py:5561 +#: flatcamGUI/FlatCAMGUI.py:5540 msgid "Display Annotation:" msgstr "Display Annotation:" -#: flatcamGUI/FlatCAMGUI.py:5563 flatcamGUI/ObjectUI.py:1372 +#: flatcamGUI/FlatCAMGUI.py:5542 flatcamGUI/ObjectUI.py:1372 msgid "" "This selects if to display text annotation on the plot.\n" "When checked it will display numbers in order for each end\n" @@ -7723,23 +7715,23 @@ msgstr "" "When checked it will display numbers in order for each end\n" "of a travel line." -#: flatcamGUI/FlatCAMGUI.py:5575 +#: flatcamGUI/FlatCAMGUI.py:5554 msgid "Annotation Size:" msgstr "Annotation Size:" -#: flatcamGUI/FlatCAMGUI.py:5577 +#: flatcamGUI/FlatCAMGUI.py:5556 msgid "The font size of the annotation text. In pixels." msgstr "The font size of the annotation text. In pixels." -#: flatcamGUI/FlatCAMGUI.py:5585 +#: flatcamGUI/FlatCAMGUI.py:5564 msgid "Annotation Color:" msgstr "Annotation Color:" -#: flatcamGUI/FlatCAMGUI.py:5587 +#: flatcamGUI/FlatCAMGUI.py:5566 msgid "Set the font color for the annotation texts." msgstr "Set the font color for the annotation texts." -#: flatcamGUI/FlatCAMGUI.py:5610 +#: flatcamGUI/FlatCAMGUI.py:5589 msgid "" "The number of circle steps for GCode \n" "circle and arc shapes linear approximation." @@ -7747,7 +7739,7 @@ msgstr "" "The number of circle steps for GCode \n" "circle and arc shapes linear approximation." -#: flatcamGUI/FlatCAMGUI.py:5620 +#: flatcamGUI/FlatCAMGUI.py:5599 msgid "" "Diameter of the tool to be\n" "rendered in the plot." @@ -7755,11 +7747,11 @@ msgstr "" "Diameter of the tool to be\n" "rendered in the plot." -#: flatcamGUI/FlatCAMGUI.py:5628 +#: flatcamGUI/FlatCAMGUI.py:5607 msgid "Coords dec.:" msgstr "Coords dec.:" -#: flatcamGUI/FlatCAMGUI.py:5630 +#: flatcamGUI/FlatCAMGUI.py:5609 msgid "" "The number of decimals to be used for \n" "the X, Y, Z coordinates in CNC code (GCODE, etc.)" @@ -7767,11 +7759,11 @@ msgstr "" "The number of decimals to be used for \n" "the X, Y, Z coordinates in CNC code (GCODE, etc.)" -#: flatcamGUI/FlatCAMGUI.py:5638 +#: flatcamGUI/FlatCAMGUI.py:5617 msgid "Feedrate dec.:" msgstr "Feedrate dec.:" -#: flatcamGUI/FlatCAMGUI.py:5640 +#: flatcamGUI/FlatCAMGUI.py:5619 msgid "" "The number of decimals to be used for \n" "the Feedrate parameter in CNC code (GCODE, etc.)" @@ -7779,15 +7771,15 @@ msgstr "" "The number of decimals to be used for \n" "the Feedrate parameter in CNC code (GCODE, etc.)" -#: flatcamGUI/FlatCAMGUI.py:5655 +#: flatcamGUI/FlatCAMGUI.py:5634 msgid "CNC Job Options" msgstr "CNC Job Options" -#: flatcamGUI/FlatCAMGUI.py:5658 flatcamGUI/FlatCAMGUI.py:5699 +#: flatcamGUI/FlatCAMGUI.py:5637 flatcamGUI/FlatCAMGUI.py:5678 msgid "Export G-Code:" msgstr "Export G-Code:" -#: flatcamGUI/FlatCAMGUI.py:5660 flatcamGUI/FlatCAMGUI.py:5701 +#: flatcamGUI/FlatCAMGUI.py:5639 flatcamGUI/FlatCAMGUI.py:5680 #: flatcamGUI/ObjectUI.py:1483 msgid "" "Export and save G-Code to\n" @@ -7796,11 +7788,11 @@ msgstr "" "Export and save G-Code to\n" "make this object to a file." -#: flatcamGUI/FlatCAMGUI.py:5666 +#: flatcamGUI/FlatCAMGUI.py:5645 msgid "Prepend to G-Code:" msgstr "Prepend to G-Code:" -#: flatcamGUI/FlatCAMGUI.py:5668 +#: flatcamGUI/FlatCAMGUI.py:5647 msgid "" "Type here any G-Code commands you would\n" "like to add at the beginning of the G-Code file." @@ -7808,11 +7800,11 @@ msgstr "" "Type here any G-Code commands you would\n" "like to add at the beginning of the G-Code file." -#: flatcamGUI/FlatCAMGUI.py:5677 +#: flatcamGUI/FlatCAMGUI.py:5656 msgid "Append to G-Code:" msgstr "Append to G-Code:" -#: flatcamGUI/FlatCAMGUI.py:5679 flatcamGUI/ObjectUI.py:1505 +#: flatcamGUI/FlatCAMGUI.py:5658 flatcamGUI/ObjectUI.py:1505 msgid "" "Type here any G-Code commands you would\n" "like to append to the generated file.\n" @@ -7822,15 +7814,15 @@ msgstr "" "like to append to the generated file.\n" "I.e.: M2 (End of program)" -#: flatcamGUI/FlatCAMGUI.py:5696 +#: flatcamGUI/FlatCAMGUI.py:5675 msgid "CNC Job Adv. Options" msgstr "CNC Job Adv. Options" -#: flatcamGUI/FlatCAMGUI.py:5707 flatcamGUI/ObjectUI.py:1523 +#: flatcamGUI/FlatCAMGUI.py:5686 flatcamGUI/ObjectUI.py:1523 msgid "Toolchange G-Code:" msgstr "Toolchange G-Code:" -#: flatcamGUI/FlatCAMGUI.py:5709 +#: flatcamGUI/FlatCAMGUI.py:5688 msgid "" "Type here any G-Code commands you would\n" "like to be executed when Toolchange event is encountered.\n" @@ -7842,11 +7834,11 @@ msgstr "" "This will constitute a Custom Toolchange GCode,\n" "or a Toolchange Macro." -#: flatcamGUI/FlatCAMGUI.py:5723 flatcamGUI/ObjectUI.py:1545 +#: flatcamGUI/FlatCAMGUI.py:5702 flatcamGUI/ObjectUI.py:1545 msgid "Use Toolchange Macro" msgstr "Use Toolchange Macro" -#: flatcamGUI/FlatCAMGUI.py:5725 flatcamGUI/ObjectUI.py:1548 +#: flatcamGUI/FlatCAMGUI.py:5704 flatcamGUI/ObjectUI.py:1548 msgid "" "Check this box if you want to use\n" "a Custom Toolchange GCode (macro)." @@ -7854,7 +7846,7 @@ msgstr "" "Check this box if you want to use\n" "a Custom Toolchange GCode (macro)." -#: flatcamGUI/FlatCAMGUI.py:5737 flatcamGUI/ObjectUI.py:1557 +#: flatcamGUI/FlatCAMGUI.py:5716 flatcamGUI/ObjectUI.py:1557 msgid "" "A list of the FlatCAM variables that can be used\n" "in the Toolchange event.\n" @@ -7864,71 +7856,67 @@ msgstr "" "in the Toolchange event.\n" "They have to be surrounded by the '%' symbol" -#: flatcamGUI/FlatCAMGUI.py:5744 flatcamGUI/ObjectUI.py:1564 +#: flatcamGUI/FlatCAMGUI.py:5723 flatcamGUI/ObjectUI.py:1564 msgid "Parameters" msgstr "Parameters" -#: flatcamGUI/FlatCAMGUI.py:5747 flatcamGUI/ObjectUI.py:1567 +#: flatcamGUI/FlatCAMGUI.py:5726 flatcamGUI/ObjectUI.py:1567 msgid "FlatCAM CNC parameters" msgstr "FlatCAM CNC parameters" -#: flatcamGUI/FlatCAMGUI.py:5748 flatcamGUI/ObjectUI.py:1568 +#: flatcamGUI/FlatCAMGUI.py:5727 flatcamGUI/ObjectUI.py:1568 msgid "tool = tool number" msgstr "tool = tool number" -#: flatcamGUI/FlatCAMGUI.py:5749 flatcamGUI/ObjectUI.py:1569 +#: flatcamGUI/FlatCAMGUI.py:5728 flatcamGUI/ObjectUI.py:1569 msgid "tooldia = tool diameter" msgstr "tooldia = tool diameter" -#: flatcamGUI/FlatCAMGUI.py:5750 flatcamGUI/ObjectUI.py:1570 +#: flatcamGUI/FlatCAMGUI.py:5729 flatcamGUI/ObjectUI.py:1570 msgid "t_drills = for Excellon, total number of drills" msgstr "t_drills = for Excellon, total number of drills" -#: flatcamGUI/FlatCAMGUI.py:5751 flatcamGUI/ObjectUI.py:1571 +#: flatcamGUI/FlatCAMGUI.py:5730 flatcamGUI/ObjectUI.py:1571 msgid "x_toolchange = X coord for Toolchange" msgstr "x_toolchange = X coord for Toolchange" -#: flatcamGUI/FlatCAMGUI.py:5752 flatcamGUI/ObjectUI.py:1572 +#: flatcamGUI/FlatCAMGUI.py:5731 flatcamGUI/ObjectUI.py:1572 msgid "y_toolchange = Y coord for Toolchange" msgstr "y_toolchange = Y coord for Toolchange" -#: flatcamGUI/FlatCAMGUI.py:5753 flatcamGUI/ObjectUI.py:1573 +#: flatcamGUI/FlatCAMGUI.py:5732 flatcamGUI/ObjectUI.py:1573 msgid "z_toolchange = Z coord for Toolchange" msgstr "z_toolchange = Z coord for Toolchange" -#: flatcamGUI/FlatCAMGUI.py:5754 +#: flatcamGUI/FlatCAMGUI.py:5733 msgid "z_cut = Z depth for the cut" msgstr "z_cut = Z depth for the cut" -#: flatcamGUI/FlatCAMGUI.py:5755 +#: flatcamGUI/FlatCAMGUI.py:5734 msgid "z_move = Z height for travel" msgstr "z_move = Z height for travel" -#: flatcamGUI/FlatCAMGUI.py:5756 flatcamGUI/ObjectUI.py:1576 +#: flatcamGUI/FlatCAMGUI.py:5735 flatcamGUI/ObjectUI.py:1576 msgid "z_depthpercut = the step value for multidepth cut" msgstr "z_depthpercut = the step value for multidepth cut" -#: flatcamGUI/FlatCAMGUI.py:5757 flatcamGUI/ObjectUI.py:1577 +#: flatcamGUI/FlatCAMGUI.py:5736 flatcamGUI/ObjectUI.py:1577 msgid "spindlesspeed = the value for the spindle speed" msgstr "spindlesspeed = the value for the spindle speed" -#: flatcamGUI/FlatCAMGUI.py:5759 flatcamGUI/ObjectUI.py:1578 +#: flatcamGUI/FlatCAMGUI.py:5738 flatcamGUI/ObjectUI.py:1578 msgid "dwelltime = time to dwell to allow the spindle to reach it's set RPM" msgstr "dwelltime = time to dwell to allow the spindle to reach it's set RPM" -#: flatcamGUI/FlatCAMGUI.py:5780 +#: flatcamGUI/FlatCAMGUI.py:5759 msgid "NCC Tool Options" msgstr "NCC Tool Options" -#: flatcamGUI/FlatCAMGUI.py:5793 flatcamGUI/FlatCAMGUI.py:6523 +#: flatcamGUI/FlatCAMGUI.py:5772 flatcamGUI/FlatCAMGUI.py:6502 msgid "Tools dia:" msgstr "Tools dia:" -#: flatcamGUI/FlatCAMGUI.py:5795 -msgid "Diameters of the cutting tools, separated by ','" -msgstr "Diameters of the cutting tools, separated by ','" - -#: flatcamGUI/FlatCAMGUI.py:5803 flatcamTools/ToolNonCopperClear.py:167 +#: flatcamGUI/FlatCAMGUI.py:5782 flatcamTools/ToolNonCopperClear.py:167 #, python-format msgid "" "How much (fraction) of the tool width to overlap each tool pass.\n" @@ -7953,11 +7941,11 @@ msgstr "" "Higher values = slow processing and slow execution on CNC\n" "due of too many paths." -#: flatcamGUI/FlatCAMGUI.py:5819 flatcamTools/ToolNonCopperClear.py:183 +#: flatcamGUI/FlatCAMGUI.py:5798 flatcamTools/ToolNonCopperClear.py:183 msgid "Bounding box margin." msgstr "Bounding box margin." -#: flatcamGUI/FlatCAMGUI.py:5828 flatcamTools/ToolNonCopperClear.py:192 +#: flatcamGUI/FlatCAMGUI.py:5807 flatcamTools/ToolNonCopperClear.py:192 #: flatcamTools/ToolPaint.py:190 msgid "" "Algorithm for non-copper clearing:
Standard: Fixed step inwards." @@ -7968,12 +7956,12 @@ msgstr "" "
Seed-based: Outwards from seed.
Line-based: Parallel " "lines." -#: flatcamGUI/FlatCAMGUI.py:5860 flatcamTools/ToolNonCopperClear.py:224 +#: flatcamGUI/FlatCAMGUI.py:5839 flatcamTools/ToolNonCopperClear.py:224 #: flatcamTools/ToolPaint.py:222 msgid "Rest M.:" msgstr "Rest M.:" -#: flatcamGUI/FlatCAMGUI.py:5862 +#: flatcamGUI/FlatCAMGUI.py:5841 msgid "" "If checked, use 'rest machining'.\n" "Basically it will clear copper outside PCB features,\n" @@ -7989,11 +7977,11 @@ msgstr "" "could not be cleared by previous tool.\n" "If not checked, use the standard algorithm." -#: flatcamGUI/FlatCAMGUI.py:5881 +#: flatcamGUI/FlatCAMGUI.py:5860 msgid "Cutout Tool Options" msgstr "Cutout Tool Options" -#: flatcamGUI/FlatCAMGUI.py:5886 flatcamGUI/ObjectUI.py:402 +#: flatcamGUI/FlatCAMGUI.py:5865 flatcamGUI/ObjectUI.py:402 msgid "" "Create toolpaths to cut around\n" "the PCB and separate it from\n" @@ -8003,7 +7991,7 @@ msgstr "" "the PCB and separate it from\n" "the original board." -#: flatcamGUI/FlatCAMGUI.py:5905 +#: flatcamGUI/FlatCAMGUI.py:5884 msgid "" "Distance from objects at which\n" "to draw the cutout." @@ -8011,11 +7999,11 @@ msgstr "" "Distance from objects at which\n" "to draw the cutout." -#: flatcamGUI/FlatCAMGUI.py:5912 flatcamTools/ToolCutOut.py:96 +#: flatcamGUI/FlatCAMGUI.py:5891 flatcamTools/ToolCutOut.py:96 msgid "Gap size:" msgstr "Gap size:" -#: flatcamGUI/FlatCAMGUI.py:5914 +#: flatcamGUI/FlatCAMGUI.py:5893 msgid "" "Size of the gaps in the toolpath\n" "that will remain to hold the\n" @@ -8025,11 +8013,11 @@ msgstr "" "that will remain to hold the\n" "board in place." -#: flatcamGUI/FlatCAMGUI.py:5922 flatcamTools/ToolCutOut.py:134 +#: flatcamGUI/FlatCAMGUI.py:5901 flatcamTools/ToolCutOut.py:134 msgid "Gaps:" msgstr "Gaps:" -#: flatcamGUI/FlatCAMGUI.py:5924 +#: flatcamGUI/FlatCAMGUI.py:5903 msgid "" "Number of bridge gaps used for the cutout.\n" "There can be maximum 8 bridges/gaps.\n" @@ -8051,19 +8039,19 @@ msgstr "" "- 2tb - 2*top + 2*bottom\n" "- 8 - 2*left + 2*right +2*top + 2*bottom" -#: flatcamGUI/FlatCAMGUI.py:5945 flatcamTools/ToolCutOut.py:115 +#: flatcamGUI/FlatCAMGUI.py:5924 flatcamTools/ToolCutOut.py:115 msgid "Convex Sh.:" msgstr "Convex Sh.:" -#: flatcamGUI/FlatCAMGUI.py:5947 +#: flatcamGUI/FlatCAMGUI.py:5926 msgid "Create a convex shape surrounding the entire PCB." msgstr "Create a convex shape surrounding the entire PCB." -#: flatcamGUI/FlatCAMGUI.py:5960 +#: flatcamGUI/FlatCAMGUI.py:5939 msgid "2Sided Tool Options" msgstr "2Sided Tool Options" -#: flatcamGUI/FlatCAMGUI.py:5965 +#: flatcamGUI/FlatCAMGUI.py:5944 msgid "" "A tool to help in creating a double sided\n" "PCB using alignment holes." @@ -8071,28 +8059,28 @@ msgstr "" "A tool to help in creating a double sided\n" "PCB using alignment holes." -#: flatcamGUI/FlatCAMGUI.py:5975 flatcamTools/ToolDblSided.py:235 +#: flatcamGUI/FlatCAMGUI.py:5954 flatcamTools/ToolDblSided.py:235 msgid "Drill diam.:" msgstr "Drill diam.:" -#: flatcamGUI/FlatCAMGUI.py:5977 flatcamTools/ToolDblSided.py:226 +#: flatcamGUI/FlatCAMGUI.py:5956 flatcamTools/ToolDblSided.py:226 #: flatcamTools/ToolDblSided.py:237 msgid "Diameter of the drill for the alignment holes." msgstr "Diameter of the drill for the alignment holes." -#: flatcamGUI/FlatCAMGUI.py:5986 flatcamTools/ToolDblSided.py:120 +#: flatcamGUI/FlatCAMGUI.py:5965 flatcamTools/ToolDblSided.py:120 msgid "Mirror Axis:" msgstr "Mirror Axis:" -#: flatcamGUI/FlatCAMGUI.py:5988 flatcamTools/ToolDblSided.py:122 +#: flatcamGUI/FlatCAMGUI.py:5967 flatcamTools/ToolDblSided.py:122 msgid "Mirror vertically (X) or horizontally (Y)." msgstr "Mirror vertically (X) or horizontally (Y)." -#: flatcamGUI/FlatCAMGUI.py:5999 flatcamTools/ToolDblSided.py:133 +#: flatcamGUI/FlatCAMGUI.py:5978 flatcamTools/ToolDblSided.py:133 msgid "Axis Ref:" msgstr "Axis Ref:" -#: flatcamGUI/FlatCAMGUI.py:6001 +#: flatcamGUI/FlatCAMGUI.py:5980 msgid "" "The axis should pass through a point or cut\n" " a specified box (in a Geometry object) in \n" @@ -8102,11 +8090,11 @@ msgstr "" " a specified box (in a Geometry object) in \n" "the middle." -#: flatcamGUI/FlatCAMGUI.py:6017 +#: flatcamGUI/FlatCAMGUI.py:5996 msgid "Paint Tool Options" msgstr "Paint Tool Options" -#: flatcamGUI/FlatCAMGUI.py:6024 flatcamGUI/ObjectUI.py:1305 +#: flatcamGUI/FlatCAMGUI.py:6003 flatcamGUI/ObjectUI.py:1305 msgid "" "Creates tool paths to cover the\n" "whole area of a polygon (remove\n" @@ -8118,7 +8106,7 @@ msgstr "" "all copper). You will be asked\n" "to click on the desired polygon." -#: flatcamGUI/FlatCAMGUI.py:6048 +#: flatcamGUI/FlatCAMGUI.py:6027 msgid "" "How much (fraction) of the tool\n" "width to overlap each tool pass." @@ -8126,19 +8114,19 @@ msgstr "" "How much (fraction) of the tool\n" "width to overlap each tool pass." -#: flatcamGUI/FlatCAMGUI.py:6102 flatcamTools/ToolPaint.py:237 +#: flatcamGUI/FlatCAMGUI.py:6081 flatcamTools/ToolPaint.py:237 msgid "Selection:" msgstr "Selection:" -#: flatcamGUI/FlatCAMGUI.py:6104 +#: flatcamGUI/FlatCAMGUI.py:6083 msgid "How to select the polygons to paint." msgstr "How to select the polygons to paint." -#: flatcamGUI/FlatCAMGUI.py:6122 +#: flatcamGUI/FlatCAMGUI.py:6101 msgid "Film Tool Options" msgstr "Film Tool Options" -#: flatcamGUI/FlatCAMGUI.py:6127 +#: flatcamGUI/FlatCAMGUI.py:6106 msgid "" "Create a PCB film from a Gerber or Geometry\n" "FlatCAM object.\n" @@ -8148,11 +8136,11 @@ msgstr "" "FlatCAM object.\n" "The file is saved in SVG format." -#: flatcamGUI/FlatCAMGUI.py:6138 flatcamTools/ToolFilm.py:116 +#: flatcamGUI/FlatCAMGUI.py:6117 flatcamTools/ToolFilm.py:116 msgid "Film Type:" msgstr "Film Type:" -#: flatcamGUI/FlatCAMGUI.py:6140 flatcamTools/ToolFilm.py:118 +#: flatcamGUI/FlatCAMGUI.py:6119 flatcamTools/ToolFilm.py:118 msgid "" "Generate a Positive black film or a Negative film.\n" "Positive means that it will print the features\n" @@ -8168,11 +8156,11 @@ msgstr "" "with white on a black canvas.\n" "The Film format is SVG." -#: flatcamGUI/FlatCAMGUI.py:6151 flatcamTools/ToolFilm.py:130 +#: flatcamGUI/FlatCAMGUI.py:6130 flatcamTools/ToolFilm.py:130 msgid "Border:" msgstr "Border:" -#: flatcamGUI/FlatCAMGUI.py:6153 flatcamTools/ToolFilm.py:132 +#: flatcamGUI/FlatCAMGUI.py:6132 flatcamTools/ToolFilm.py:132 msgid "" "Specify a border around the object.\n" "Only for negative film.\n" @@ -8192,11 +8180,11 @@ msgstr "" "white color like the rest and which may confound with the\n" "surroundings if not for this border." -#: flatcamGUI/FlatCAMGUI.py:6166 flatcamTools/ToolFilm.py:144 +#: flatcamGUI/FlatCAMGUI.py:6145 flatcamTools/ToolFilm.py:144 msgid "Scale Stroke:" msgstr "Scale Stroke:" -#: flatcamGUI/FlatCAMGUI.py:6168 flatcamTools/ToolFilm.py:146 +#: flatcamGUI/FlatCAMGUI.py:6147 flatcamTools/ToolFilm.py:146 msgid "" "Scale the line stroke thickness of each feature in the SVG file.\n" "It means that the line that envelope each SVG feature will be thicker or " @@ -8208,11 +8196,11 @@ msgstr "" "thinner,\n" "therefore the fine features may be more affected by this parameter." -#: flatcamGUI/FlatCAMGUI.py:6183 +#: flatcamGUI/FlatCAMGUI.py:6162 msgid "Panelize Tool Options" msgstr "Panelize Tool Options" -#: flatcamGUI/FlatCAMGUI.py:6188 +#: flatcamGUI/FlatCAMGUI.py:6167 msgid "" "Create an object that contains an array of (x, y) elements,\n" "each element is a copy of the source object spaced\n" @@ -8222,11 +8210,11 @@ msgstr "" "each element is a copy of the source object spaced\n" "at a X distance, Y distance of each other." -#: flatcamGUI/FlatCAMGUI.py:6199 flatcamTools/ToolPanelize.py:147 +#: flatcamGUI/FlatCAMGUI.py:6178 flatcamTools/ToolPanelize.py:147 msgid "Spacing cols:" msgstr "Spacing cols:" -#: flatcamGUI/FlatCAMGUI.py:6201 flatcamTools/ToolPanelize.py:149 +#: flatcamGUI/FlatCAMGUI.py:6180 flatcamTools/ToolPanelize.py:149 msgid "" "Spacing between columns of the desired panel.\n" "In current units." @@ -8234,11 +8222,11 @@ msgstr "" "Spacing between columns of the desired panel.\n" "In current units." -#: flatcamGUI/FlatCAMGUI.py:6209 flatcamTools/ToolPanelize.py:156 +#: flatcamGUI/FlatCAMGUI.py:6188 flatcamTools/ToolPanelize.py:156 msgid "Spacing rows:" msgstr "Spacing rows:" -#: flatcamGUI/FlatCAMGUI.py:6211 flatcamTools/ToolPanelize.py:158 +#: flatcamGUI/FlatCAMGUI.py:6190 flatcamTools/ToolPanelize.py:158 msgid "" "Spacing between rows of the desired panel.\n" "In current units." @@ -8246,27 +8234,27 @@ msgstr "" "Spacing between rows of the desired panel.\n" "In current units." -#: flatcamGUI/FlatCAMGUI.py:6219 flatcamTools/ToolPanelize.py:165 +#: flatcamGUI/FlatCAMGUI.py:6198 flatcamTools/ToolPanelize.py:165 msgid "Columns:" msgstr "Columns:" -#: flatcamGUI/FlatCAMGUI.py:6221 flatcamTools/ToolPanelize.py:167 +#: flatcamGUI/FlatCAMGUI.py:6200 flatcamTools/ToolPanelize.py:167 msgid "Number of columns of the desired panel" msgstr "Number of columns of the desired panel" -#: flatcamGUI/FlatCAMGUI.py:6228 flatcamTools/ToolPanelize.py:173 +#: flatcamGUI/FlatCAMGUI.py:6207 flatcamTools/ToolPanelize.py:173 msgid "Rows:" msgstr "Rows:" -#: flatcamGUI/FlatCAMGUI.py:6230 flatcamTools/ToolPanelize.py:175 +#: flatcamGUI/FlatCAMGUI.py:6209 flatcamTools/ToolPanelize.py:175 msgid "Number of rows of the desired panel" msgstr "Number of rows of the desired panel" -#: flatcamGUI/FlatCAMGUI.py:6238 +#: flatcamGUI/FlatCAMGUI.py:6217 msgid "Panel Type:" msgstr "Panel Type:" -#: flatcamGUI/FlatCAMGUI.py:6240 +#: flatcamGUI/FlatCAMGUI.py:6219 msgid "" "Choose the type of object for the panel object:\n" "- Gerber\n" @@ -8276,11 +8264,11 @@ msgstr "" "- Gerber\n" "- Geometry" -#: flatcamGUI/FlatCAMGUI.py:6249 +#: flatcamGUI/FlatCAMGUI.py:6228 msgid "Constrain within:" msgstr "Constrain within:" -#: flatcamGUI/FlatCAMGUI.py:6251 flatcamTools/ToolPanelize.py:195 +#: flatcamGUI/FlatCAMGUI.py:6230 flatcamTools/ToolPanelize.py:195 msgid "" "Area define by DX and DY within to constrain the panel.\n" "DX and DY values are in current units.\n" @@ -8294,11 +8282,11 @@ msgstr "" "the final panel will have as many columns and rows as\n" "they fit completely within selected area." -#: flatcamGUI/FlatCAMGUI.py:6260 flatcamTools/ToolPanelize.py:204 +#: flatcamGUI/FlatCAMGUI.py:6239 flatcamTools/ToolPanelize.py:204 msgid "Width (DX):" msgstr "Width (DX):" -#: flatcamGUI/FlatCAMGUI.py:6262 flatcamTools/ToolPanelize.py:206 +#: flatcamGUI/FlatCAMGUI.py:6241 flatcamTools/ToolPanelize.py:206 msgid "" "The width (DX) within which the panel must fit.\n" "In current units." @@ -8306,11 +8294,11 @@ msgstr "" "The width (DX) within which the panel must fit.\n" "In current units." -#: flatcamGUI/FlatCAMGUI.py:6269 flatcamTools/ToolPanelize.py:212 +#: flatcamGUI/FlatCAMGUI.py:6248 flatcamTools/ToolPanelize.py:212 msgid "Height (DY):" msgstr "Height (DY):" -#: flatcamGUI/FlatCAMGUI.py:6271 flatcamTools/ToolPanelize.py:214 +#: flatcamGUI/FlatCAMGUI.py:6250 flatcamTools/ToolPanelize.py:214 msgid "" "The height (DY)within which the panel must fit.\n" "In current units." @@ -8318,15 +8306,15 @@ msgstr "" "The height (DY)within which the panel must fit.\n" "In current units." -#: flatcamGUI/FlatCAMGUI.py:6285 +#: flatcamGUI/FlatCAMGUI.py:6264 msgid "Calculators Tool Options" msgstr "Calculators Tool Options" -#: flatcamGUI/FlatCAMGUI.py:6288 +#: flatcamGUI/FlatCAMGUI.py:6267 msgid "V-Shape Tool Calculator:" msgstr "V-Shape Tool Calculator:" -#: flatcamGUI/FlatCAMGUI.py:6290 +#: flatcamGUI/FlatCAMGUI.py:6269 msgid "" "Calculate the tool diameter for a given V-shape tool,\n" "having the tip diameter, tip angle and\n" @@ -8336,11 +8324,11 @@ msgstr "" "having the tip diameter, tip angle and\n" "depth-of-cut as parameters." -#: flatcamGUI/FlatCAMGUI.py:6301 flatcamTools/ToolCalculators.py:94 +#: flatcamGUI/FlatCAMGUI.py:6280 flatcamTools/ToolCalculators.py:94 msgid "Tip Diameter:" msgstr "Tip Diameter:" -#: flatcamGUI/FlatCAMGUI.py:6303 +#: flatcamGUI/FlatCAMGUI.py:6282 msgid "" "This is the tool tip diameter.\n" "It is specified by manufacturer." @@ -8348,11 +8336,11 @@ msgstr "" "This is the tool tip diameter.\n" "It is specified by manufacturer." -#: flatcamGUI/FlatCAMGUI.py:6311 +#: flatcamGUI/FlatCAMGUI.py:6290 msgid "Tip angle:" msgstr "Tip angle:" -#: flatcamGUI/FlatCAMGUI.py:6313 +#: flatcamGUI/FlatCAMGUI.py:6292 msgid "" "This is the angle on the tip of the tool.\n" "It is specified by manufacturer." @@ -8360,7 +8348,7 @@ msgstr "" "This is the angle on the tip of the tool.\n" "It is specified by manufacturer." -#: flatcamGUI/FlatCAMGUI.py:6323 +#: flatcamGUI/FlatCAMGUI.py:6302 msgid "" "This is depth to cut into material.\n" "In the CNCJob object it is the CutZ parameter." @@ -8368,11 +8356,11 @@ msgstr "" "This is depth to cut into material.\n" "In the CNCJob object it is the CutZ parameter." -#: flatcamGUI/FlatCAMGUI.py:6330 +#: flatcamGUI/FlatCAMGUI.py:6309 msgid "ElectroPlating Calculator:" msgstr "ElectroPlating Calculator:" -#: flatcamGUI/FlatCAMGUI.py:6332 flatcamTools/ToolCalculators.py:152 +#: flatcamGUI/FlatCAMGUI.py:6311 flatcamTools/ToolCalculators.py:152 msgid "" "This calculator is useful for those who plate the via/pad/drill holes,\n" "using a method like grahite ink or calcium hypophosphite ink or palladium " @@ -8382,27 +8370,27 @@ msgstr "" "using a method like grahite ink or calcium hypophosphite ink or palladium " "chloride." -#: flatcamGUI/FlatCAMGUI.py:6342 flatcamTools/ToolCalculators.py:161 +#: flatcamGUI/FlatCAMGUI.py:6321 flatcamTools/ToolCalculators.py:161 msgid "Board Length:" msgstr "Board Length:" -#: flatcamGUI/FlatCAMGUI.py:6344 flatcamTools/ToolCalculators.py:165 +#: flatcamGUI/FlatCAMGUI.py:6323 flatcamTools/ToolCalculators.py:165 msgid "This is the board length. In centimeters." msgstr "This is the board length. In centimeters." -#: flatcamGUI/FlatCAMGUI.py:6350 flatcamTools/ToolCalculators.py:167 +#: flatcamGUI/FlatCAMGUI.py:6329 flatcamTools/ToolCalculators.py:167 msgid "Board Width:" msgstr "Board Width:" -#: flatcamGUI/FlatCAMGUI.py:6352 flatcamTools/ToolCalculators.py:171 +#: flatcamGUI/FlatCAMGUI.py:6331 flatcamTools/ToolCalculators.py:171 msgid "This is the board width.In centimeters." msgstr "This is the board width.In centimeters." -#: flatcamGUI/FlatCAMGUI.py:6357 flatcamTools/ToolCalculators.py:173 +#: flatcamGUI/FlatCAMGUI.py:6336 flatcamTools/ToolCalculators.py:173 msgid "Current Density:" msgstr "Current Density:" -#: flatcamGUI/FlatCAMGUI.py:6360 flatcamTools/ToolCalculators.py:177 +#: flatcamGUI/FlatCAMGUI.py:6339 flatcamTools/ToolCalculators.py:177 msgid "" "Current density to pass through the board. \n" "In Amps per Square Feet ASF." @@ -8410,11 +8398,11 @@ msgstr "" "Current density to pass through the board. \n" "In Amps per Square Feet ASF." -#: flatcamGUI/FlatCAMGUI.py:6366 flatcamTools/ToolCalculators.py:181 +#: flatcamGUI/FlatCAMGUI.py:6345 flatcamTools/ToolCalculators.py:181 msgid "Copper Growth:" msgstr "Copper Growth:" -#: flatcamGUI/FlatCAMGUI.py:6369 flatcamTools/ToolCalculators.py:185 +#: flatcamGUI/FlatCAMGUI.py:6348 flatcamTools/ToolCalculators.py:185 msgid "" "How thick the copper growth is intended to be.\n" "In microns." @@ -8422,11 +8410,11 @@ msgstr "" "How thick the copper growth is intended to be.\n" "In microns." -#: flatcamGUI/FlatCAMGUI.py:6382 +#: flatcamGUI/FlatCAMGUI.py:6361 msgid "Transform Tool Options" msgstr "Transform Tool Options" -#: flatcamGUI/FlatCAMGUI.py:6387 +#: flatcamGUI/FlatCAMGUI.py:6366 msgid "" "Various transformations that can be applied\n" "on a FlatCAM object." @@ -8434,47 +8422,47 @@ msgstr "" "Various transformations that can be applied\n" "on a FlatCAM object." -#: flatcamGUI/FlatCAMGUI.py:6397 +#: flatcamGUI/FlatCAMGUI.py:6376 msgid "Rotate Angle:" msgstr "Rotate Angle:" -#: flatcamGUI/FlatCAMGUI.py:6399 +#: flatcamGUI/FlatCAMGUI.py:6378 msgid "Angle for rotation. In degrees." msgstr "Angle for rotation. In degrees." -#: flatcamGUI/FlatCAMGUI.py:6406 +#: flatcamGUI/FlatCAMGUI.py:6385 msgid "Skew_X angle:" msgstr "Skew_X angle:" -#: flatcamGUI/FlatCAMGUI.py:6408 +#: flatcamGUI/FlatCAMGUI.py:6387 msgid "Angle for Skew/Shear on X axis. In degrees." msgstr "Angle for Skew/Shear on X axis. In degrees." -#: flatcamGUI/FlatCAMGUI.py:6415 +#: flatcamGUI/FlatCAMGUI.py:6394 msgid "Skew_Y angle:" msgstr "Skew_Y angle:" -#: flatcamGUI/FlatCAMGUI.py:6417 +#: flatcamGUI/FlatCAMGUI.py:6396 msgid "Angle for Skew/Shear on Y axis. In degrees." msgstr "Angle for Skew/Shear on Y axis. In degrees." -#: flatcamGUI/FlatCAMGUI.py:6424 +#: flatcamGUI/FlatCAMGUI.py:6403 msgid "Scale_X factor:" msgstr "Scale_X factor:" -#: flatcamGUI/FlatCAMGUI.py:6426 +#: flatcamGUI/FlatCAMGUI.py:6405 msgid "Factor for scaling on X axis." msgstr "Factor for scaling on X axis." -#: flatcamGUI/FlatCAMGUI.py:6433 +#: flatcamGUI/FlatCAMGUI.py:6412 msgid "Scale_Y factor:" msgstr "Scale_Y factor:" -#: flatcamGUI/FlatCAMGUI.py:6435 +#: flatcamGUI/FlatCAMGUI.py:6414 msgid "Factor for scaling on Y axis." msgstr "Factor for scaling on Y axis." -#: flatcamGUI/FlatCAMGUI.py:6443 +#: flatcamGUI/FlatCAMGUI.py:6422 msgid "" "Scale the selected object(s)\n" "using the Scale_X factor for both axis." @@ -8482,7 +8470,7 @@ msgstr "" "Scale the selected object(s)\n" "using the Scale_X factor for both axis." -#: flatcamGUI/FlatCAMGUI.py:6451 flatcamTools/ToolTransform.py:210 +#: flatcamGUI/FlatCAMGUI.py:6430 flatcamTools/ToolTransform.py:210 msgid "" "Scale the selected object(s)\n" "using the origin reference when checked,\n" @@ -8494,27 +8482,27 @@ msgstr "" "and the center of the biggest bounding box\n" "of the selected objects when unchecked." -#: flatcamGUI/FlatCAMGUI.py:6460 +#: flatcamGUI/FlatCAMGUI.py:6439 msgid "Offset_X val:" msgstr "Offset_X val:" -#: flatcamGUI/FlatCAMGUI.py:6462 +#: flatcamGUI/FlatCAMGUI.py:6441 msgid "Distance to offset on X axis. In current units." msgstr "Distance to offset on X axis. In current units." -#: flatcamGUI/FlatCAMGUI.py:6469 +#: flatcamGUI/FlatCAMGUI.py:6448 msgid "Offset_Y val:" msgstr "Offset_Y val:" -#: flatcamGUI/FlatCAMGUI.py:6471 +#: flatcamGUI/FlatCAMGUI.py:6450 msgid "Distance to offset on Y axis. In current units." msgstr "Distance to offset on Y axis. In current units." -#: flatcamGUI/FlatCAMGUI.py:6477 +#: flatcamGUI/FlatCAMGUI.py:6456 msgid "Mirror Reference" msgstr "Mirror Reference" -#: flatcamGUI/FlatCAMGUI.py:6479 flatcamTools/ToolTransform.py:314 +#: flatcamGUI/FlatCAMGUI.py:6458 flatcamTools/ToolTransform.py:314 msgid "" "Flip the selected object(s)\n" "around the point in Point Entry Field.\n" @@ -8536,11 +8524,11 @@ msgstr "" "Or enter the coords in format (x, y) in the\n" "Point Entry field and click Flip on X(Y)" -#: flatcamGUI/FlatCAMGUI.py:6490 +#: flatcamGUI/FlatCAMGUI.py:6469 msgid " Mirror Ref. Point:" msgstr " Mirror Ref. Point:" -#: flatcamGUI/FlatCAMGUI.py:6492 flatcamTools/ToolTransform.py:327 +#: flatcamGUI/FlatCAMGUI.py:6471 flatcamTools/ToolTransform.py:327 msgid "" "Coordinates in format (x, y) used as reference for mirroring.\n" "The 'x' in (x, y) will be used when using Flip on X and\n" @@ -8550,11 +8538,11 @@ msgstr "" "The 'x' in (x, y) will be used when using Flip on X and\n" "the 'y' in (x, y) will be used when using Flip on Y and" -#: flatcamGUI/FlatCAMGUI.py:6509 +#: flatcamGUI/FlatCAMGUI.py:6488 msgid "SolderPaste Tool Options" msgstr "SolderPaste Tool Options" -#: flatcamGUI/FlatCAMGUI.py:6514 +#: flatcamGUI/FlatCAMGUI.py:6493 msgid "" "A tool to create GCode for dispensing\n" "solder paste onto a PCB." @@ -8562,47 +8550,47 @@ msgstr "" "A tool to create GCode for dispensing\n" "solder paste onto a PCB." -#: flatcamGUI/FlatCAMGUI.py:6525 +#: flatcamGUI/FlatCAMGUI.py:6504 msgid "Diameters of nozzle tools, separated by ','" msgstr "Diameters of nozzle tools, separated by ','" -#: flatcamGUI/FlatCAMGUI.py:6532 +#: flatcamGUI/FlatCAMGUI.py:6511 msgid "New Nozzle Dia:" msgstr "New Nozzle Dia:" -#: flatcamGUI/FlatCAMGUI.py:6534 flatcamTools/ToolSolderPaste.py:103 +#: flatcamGUI/FlatCAMGUI.py:6513 flatcamTools/ToolSolderPaste.py:103 msgid "Diameter for the new Nozzle tool to add in the Tool Table" msgstr "Diameter for the new Nozzle tool to add in the Tool Table" -#: flatcamGUI/FlatCAMGUI.py:6542 flatcamTools/ToolSolderPaste.py:166 +#: flatcamGUI/FlatCAMGUI.py:6521 flatcamTools/ToolSolderPaste.py:166 msgid "Z Dispense Start:" msgstr "Z Dispense Start:" -#: flatcamGUI/FlatCAMGUI.py:6544 flatcamTools/ToolSolderPaste.py:168 +#: flatcamGUI/FlatCAMGUI.py:6523 flatcamTools/ToolSolderPaste.py:168 msgid "The height (Z) when solder paste dispensing starts." msgstr "The height (Z) when solder paste dispensing starts." -#: flatcamGUI/FlatCAMGUI.py:6551 flatcamTools/ToolSolderPaste.py:174 +#: flatcamGUI/FlatCAMGUI.py:6530 flatcamTools/ToolSolderPaste.py:174 msgid "Z Dispense:" msgstr "Z Dispense:" -#: flatcamGUI/FlatCAMGUI.py:6553 flatcamTools/ToolSolderPaste.py:176 +#: flatcamGUI/FlatCAMGUI.py:6532 flatcamTools/ToolSolderPaste.py:176 msgid "The height (Z) when doing solder paste dispensing." msgstr "The height (Z) when doing solder paste dispensing." -#: flatcamGUI/FlatCAMGUI.py:6560 flatcamTools/ToolSolderPaste.py:183 +#: flatcamGUI/FlatCAMGUI.py:6539 flatcamTools/ToolSolderPaste.py:183 msgid "Z Dispense Stop:" msgstr "Z Dispense Stop:" -#: flatcamGUI/FlatCAMGUI.py:6562 flatcamTools/ToolSolderPaste.py:185 +#: flatcamGUI/FlatCAMGUI.py:6541 flatcamTools/ToolSolderPaste.py:185 msgid "The height (Z) when solder paste dispensing stops." msgstr "The height (Z) when solder paste dispensing stops." -#: flatcamGUI/FlatCAMGUI.py:6569 flatcamTools/ToolSolderPaste.py:191 +#: flatcamGUI/FlatCAMGUI.py:6548 flatcamTools/ToolSolderPaste.py:191 msgid "Z Travel:" msgstr "Z Travel:" -#: flatcamGUI/FlatCAMGUI.py:6571 flatcamTools/ToolSolderPaste.py:193 +#: flatcamGUI/FlatCAMGUI.py:6550 flatcamTools/ToolSolderPaste.py:193 msgid "" "The height (Z) for travel between pads\n" "(without dispensing solder paste)." @@ -8610,19 +8598,19 @@ msgstr "" "The height (Z) for travel between pads\n" "(without dispensing solder paste)." -#: flatcamGUI/FlatCAMGUI.py:6579 flatcamTools/ToolSolderPaste.py:200 +#: flatcamGUI/FlatCAMGUI.py:6558 flatcamTools/ToolSolderPaste.py:200 msgid "Z Toolchange:" msgstr "Z Toolchange:" -#: flatcamGUI/FlatCAMGUI.py:6581 flatcamTools/ToolSolderPaste.py:202 +#: flatcamGUI/FlatCAMGUI.py:6560 flatcamTools/ToolSolderPaste.py:202 msgid "The height (Z) for tool (nozzle) change." msgstr "The height (Z) for tool (nozzle) change." -#: flatcamGUI/FlatCAMGUI.py:6588 flatcamTools/ToolSolderPaste.py:208 +#: flatcamGUI/FlatCAMGUI.py:6567 flatcamTools/ToolSolderPaste.py:208 msgid "XY Toolchange:" msgstr "XY Toolchange:" -#: flatcamGUI/FlatCAMGUI.py:6590 flatcamTools/ToolSolderPaste.py:210 +#: flatcamGUI/FlatCAMGUI.py:6569 flatcamTools/ToolSolderPaste.py:210 msgid "" "The X,Y location for tool (nozzle) change.\n" "The format is (x, y) where x and y are real numbers." @@ -8630,19 +8618,19 @@ msgstr "" "The X,Y location for tool (nozzle) change.\n" "The format is (x, y) where x and y are real numbers." -#: flatcamGUI/FlatCAMGUI.py:6598 flatcamTools/ToolSolderPaste.py:217 +#: flatcamGUI/FlatCAMGUI.py:6577 flatcamTools/ToolSolderPaste.py:217 msgid "Feedrate X-Y:" msgstr "Feedrate X-Y:" -#: flatcamGUI/FlatCAMGUI.py:6600 flatcamTools/ToolSolderPaste.py:219 +#: flatcamGUI/FlatCAMGUI.py:6579 flatcamTools/ToolSolderPaste.py:219 msgid "Feedrate (speed) while moving on the X-Y plane." msgstr "Feedrate (speed) while moving on the X-Y plane." -#: flatcamGUI/FlatCAMGUI.py:6607 flatcamTools/ToolSolderPaste.py:225 +#: flatcamGUI/FlatCAMGUI.py:6586 flatcamTools/ToolSolderPaste.py:225 msgid "Feedrate Z:" msgstr "Feedrate Z:" -#: flatcamGUI/FlatCAMGUI.py:6609 flatcamTools/ToolSolderPaste.py:227 +#: flatcamGUI/FlatCAMGUI.py:6588 flatcamTools/ToolSolderPaste.py:227 msgid "" "Feedrate (speed) while moving vertically\n" "(on Z plane)." @@ -8650,11 +8638,11 @@ msgstr "" "Feedrate (speed) while moving vertically\n" "(on Z plane)." -#: flatcamGUI/FlatCAMGUI.py:6617 flatcamTools/ToolSolderPaste.py:234 +#: flatcamGUI/FlatCAMGUI.py:6596 flatcamTools/ToolSolderPaste.py:234 msgid "Feedrate Z Dispense:" msgstr "Feedrate Z Dispense:" -#: flatcamGUI/FlatCAMGUI.py:6619 +#: flatcamGUI/FlatCAMGUI.py:6598 msgid "" "Feedrate (speed) while moving up vertically\n" "to Dispense position (on Z plane)." @@ -8662,11 +8650,11 @@ msgstr "" "Feedrate (speed) while moving up vertically\n" "to Dispense position (on Z plane)." -#: flatcamGUI/FlatCAMGUI.py:6627 flatcamTools/ToolSolderPaste.py:243 +#: flatcamGUI/FlatCAMGUI.py:6606 flatcamTools/ToolSolderPaste.py:243 msgid "Spindle Speed FWD:" msgstr "Spindle Speed FWD:" -#: flatcamGUI/FlatCAMGUI.py:6629 flatcamTools/ToolSolderPaste.py:245 +#: flatcamGUI/FlatCAMGUI.py:6608 flatcamTools/ToolSolderPaste.py:245 msgid "" "The dispenser speed while pushing solder paste\n" "through the dispenser nozzle." @@ -8674,19 +8662,19 @@ msgstr "" "The dispenser speed while pushing solder paste\n" "through the dispenser nozzle." -#: flatcamGUI/FlatCAMGUI.py:6637 flatcamTools/ToolSolderPaste.py:252 +#: flatcamGUI/FlatCAMGUI.py:6616 flatcamTools/ToolSolderPaste.py:252 msgid "Dwell FWD:" msgstr "Dwell FWD:" -#: flatcamGUI/FlatCAMGUI.py:6639 flatcamTools/ToolSolderPaste.py:254 +#: flatcamGUI/FlatCAMGUI.py:6618 flatcamTools/ToolSolderPaste.py:254 msgid "Pause after solder dispensing." msgstr "Pause after solder dispensing." -#: flatcamGUI/FlatCAMGUI.py:6646 flatcamTools/ToolSolderPaste.py:260 +#: flatcamGUI/FlatCAMGUI.py:6625 flatcamTools/ToolSolderPaste.py:260 msgid "Spindle Speed REV:" msgstr "Spindle Speed REV:" -#: flatcamGUI/FlatCAMGUI.py:6648 flatcamTools/ToolSolderPaste.py:262 +#: flatcamGUI/FlatCAMGUI.py:6627 flatcamTools/ToolSolderPaste.py:262 msgid "" "The dispenser speed while retracting solder paste\n" "through the dispenser nozzle." @@ -8694,11 +8682,11 @@ msgstr "" "The dispenser speed while retracting solder paste\n" "through the dispenser nozzle." -#: flatcamGUI/FlatCAMGUI.py:6656 flatcamTools/ToolSolderPaste.py:269 +#: flatcamGUI/FlatCAMGUI.py:6635 flatcamTools/ToolSolderPaste.py:269 msgid "Dwell REV:" msgstr "Dwell REV:" -#: flatcamGUI/FlatCAMGUI.py:6658 flatcamTools/ToolSolderPaste.py:271 +#: flatcamGUI/FlatCAMGUI.py:6637 flatcamTools/ToolSolderPaste.py:271 msgid "" "Pause after solder paste dispenser retracted,\n" "to allow pressure equilibrium." @@ -8706,23 +8694,23 @@ msgstr "" "Pause after solder paste dispenser retracted,\n" "to allow pressure equilibrium." -#: flatcamGUI/FlatCAMGUI.py:6665 flatcamTools/ToolSolderPaste.py:277 +#: flatcamGUI/FlatCAMGUI.py:6644 flatcamTools/ToolSolderPaste.py:277 msgid "PostProcessors:" msgstr "PostProcessors:" -#: flatcamGUI/FlatCAMGUI.py:6667 flatcamTools/ToolSolderPaste.py:279 +#: flatcamGUI/FlatCAMGUI.py:6646 flatcamTools/ToolSolderPaste.py:279 msgid "Files that control the GCode generation." msgstr "Files that control the GCode generation." -#: flatcamGUI/FlatCAMGUI.py:6697 flatcamGUI/FlatCAMGUI.py:6703 +#: flatcamGUI/FlatCAMGUI.py:6676 flatcamGUI/FlatCAMGUI.py:6682 msgid "Idle." msgstr "Idle." -#: flatcamGUI/FlatCAMGUI.py:6727 +#: flatcamGUI/FlatCAMGUI.py:6706 msgid "Application started ..." msgstr "Application started ..." -#: flatcamGUI/FlatCAMGUI.py:6728 +#: flatcamGUI/FlatCAMGUI.py:6707 msgid "Hello!" msgstr "Hello!" @@ -11954,6 +11942,16 @@ msgstr "[WARNING_NOTCL] No object selected. Please Select an object to offset!" msgid "CNCJob objects can't be offseted." msgstr "CNCJob objects can't be offseted." +#~ msgid "Tool dia: " +#~ msgstr "Tool dia: " + +#~ msgid "" +#~ "The diameter of the cutting\n" +#~ "tool.." +#~ msgstr "" +#~ "The diameter of the cutting\n" +#~ "tool.." + #~ msgid "Disable" #~ msgstr "Disable" diff --git a/locale/ro/LC_MESSAGES/strings.mo b/locale/ro/LC_MESSAGES/strings.mo index 8ba91a203f0d8d05ae69c9aa4d1769c63bb3ad59..dd3a1c97c93b79216701461ac47d4701211e6394 100644 GIT binary patch delta 39365 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 sc8~58FmTZB!1n<^U7Ovbus^9kI5c$kp General - Show Advanced Options." @@ -340,38 +340,38 @@ msgstr "" "Adăugarea de unelte noi functionează doar in modul Avansat.\n" "Pentru aceasta mergi in Preferințe -> General - Activează Modul Avansat." -#: FlatCAMApp.py:4681 +#: FlatCAMApp.py:4702 msgid "Object(s) deleted ..." msgstr "Obiect(ele) șters(e)." -#: FlatCAMApp.py:4685 +#: FlatCAMApp.py:4706 msgid "Failed. No object(s) selected..." msgstr "Eșuat. Nici-un obiect nu este selectat." -#: FlatCAMApp.py:4687 +#: FlatCAMApp.py:4708 msgid "Save the work in Editor and try again ..." msgstr "Salvează continutul din Editor și încearcă din nou." -#: FlatCAMApp.py:4700 +#: FlatCAMApp.py:4721 msgid "Click to set the origin ..." msgstr "Click pentru a seta originea..." -#: FlatCAMApp.py:4712 +#: FlatCAMApp.py:4733 msgid "Jump to ..." msgstr "Sari la ..." -#: FlatCAMApp.py:4713 +#: FlatCAMApp.py:4734 msgid "Enter the coordinates in format X,Y:" msgstr "Introduceți coordonatele in format X,Y:" -#: FlatCAMApp.py:4720 +#: FlatCAMApp.py:4741 msgid "Wrong coordinates. Enter coordinates in format: X,Y" msgstr "Coordonate gresite. Introduceți coordonatele in format X,Y." -#: FlatCAMApp.py:4738 flatcamEditors/FlatCAMExcEditor.py:2320 +#: FlatCAMApp.py:4759 flatcamEditors/FlatCAMExcEditor.py:2320 #: flatcamEditors/FlatCAMExcEditor.py:2327 -#: flatcamEditors/FlatCAMGeoEditor.py:3645 -#: flatcamEditors/FlatCAMGeoEditor.py:3659 +#: flatcamEditors/FlatCAMGeoEditor.py:3648 +#: flatcamEditors/FlatCAMGeoEditor.py:3662 #: flatcamEditors/FlatCAMGrbEditor.py:1040 #: flatcamEditors/FlatCAMGrbEditor.py:1141 #: flatcamEditors/FlatCAMGrbEditor.py:1409 @@ -382,88 +382,88 @@ msgstr "Coordonate gresite. Introduceți coordonatele in format X,Y." msgid "[success] Done." msgstr "[success] Executat." -#: FlatCAMApp.py:4870 FlatCAMApp.py:4937 +#: FlatCAMApp.py:4891 FlatCAMApp.py:4958 msgid "[WARNING_NOTCL] No object is selected. Select an object and try again." msgstr "" "[WARNING_NOTCL] Nici-un obiect nu este selectat. Selectează un obiect și " "incearcă din nou." -#: FlatCAMApp.py:4978 +#: FlatCAMApp.py:4999 msgid "[success] Origin set ..." msgstr "[success] Originea a fost setată ..." -#: FlatCAMApp.py:4998 +#: FlatCAMApp.py:5019 msgid "Preferences" msgstr "Preferințe" -#: FlatCAMApp.py:5018 +#: FlatCAMApp.py:5039 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:5043 +#: FlatCAMApp.py:5064 msgid "[success] Flip on Y axis done." msgstr "[success] Oglindire pe axa Y executată." -#: FlatCAMApp.py:5045 FlatCAMApp.py:5085 +#: FlatCAMApp.py:5066 FlatCAMApp.py:5106 #: flatcamEditors/FlatCAMGeoEditor.py:1355 #: flatcamEditors/FlatCAMGrbEditor.py:5343 flatcamTools/ToolTransform.py:748 #, python-format msgid "[ERROR_NOTCL] Due of %s, Flip action was not executed." msgstr "[ERROR_NOTCL] Datorita %s, oglindirea a eșuat." -#: FlatCAMApp.py:5058 +#: FlatCAMApp.py:5079 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:5083 +#: FlatCAMApp.py:5104 msgid "[success] Flip on X axis done." msgstr "[success] Oglindirea pe axa X executată." -#: FlatCAMApp.py:5098 +#: FlatCAMApp.py:5119 msgid "[WARNING_NOTCL] No object selected to Rotate." msgstr "[WARNING_NOTCL] Nici-un obiect selectat pentru Rotaţie." -#: FlatCAMApp.py:5101 FlatCAMApp.py:5146 FlatCAMApp.py:5177 +#: FlatCAMApp.py:5122 FlatCAMApp.py:5167 FlatCAMApp.py:5198 msgid "Transform" msgstr "Transformare" -#: FlatCAMApp.py:5101 FlatCAMApp.py:5146 FlatCAMApp.py:5177 +#: FlatCAMApp.py:5122 FlatCAMApp.py:5167 FlatCAMApp.py:5198 msgid "Enter the Angle value:" msgstr "Introduceți valoaea Unghiului:" -#: FlatCAMApp.py:5131 +#: FlatCAMApp.py:5152 msgid "[success] Rotation done." msgstr "[success] Rotaţie executată." -#: FlatCAMApp.py:5133 flatcamEditors/FlatCAMGeoEditor.py:1298 +#: FlatCAMApp.py:5154 flatcamEditors/FlatCAMGeoEditor.py:1298 #: flatcamEditors/FlatCAMGrbEditor.py:5272 flatcamTools/ToolTransform.py:677 #, python-format msgid "[ERROR_NOTCL] Due of %s, rotation movement was not executed." msgstr "[ERROR_NOTCL] Datorita %s, Rotatia a eșuat." -#: FlatCAMApp.py:5144 +#: FlatCAMApp.py:5165 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:5165 +#: FlatCAMApp.py:5186 msgid "[success] Skew on X axis done." msgstr "[success] Deformare pe axa X executată." -#: FlatCAMApp.py:5175 +#: FlatCAMApp.py:5196 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:5196 +#: FlatCAMApp.py:5217 msgid "[success] Skew on Y axis done." msgstr "[success] Deformare pe axa Y executată." -#: FlatCAMApp.py:5266 +#: FlatCAMApp.py:5287 msgid "Grid On/Off" msgstr "Grid On/Off" -#: FlatCAMApp.py:5279 flatcamEditors/FlatCAMGeoEditor.py:937 +#: FlatCAMApp.py:5300 flatcamEditors/FlatCAMGeoEditor.py:937 #: flatcamEditors/FlatCAMGrbEditor.py:2381 #: flatcamEditors/FlatCAMGrbEditor.py:4861 flatcamGUI/ObjectUI.py:991 #: flatcamTools/ToolDblSided.py:160 flatcamTools/ToolDblSided.py:208 @@ -473,7 +473,7 @@ msgstr "Grid On/Off" msgid "Add" msgstr "Adaugă" -#: FlatCAMApp.py:5280 FlatCAMObj.py:3276 +#: FlatCAMApp.py:5301 FlatCAMObj.py:3296 #: flatcamEditors/FlatCAMGrbEditor.py:2386 flatcamGUI/FlatCAMGUI.py:527 #: flatcamGUI/FlatCAMGUI.py:724 flatcamGUI/FlatCAMGUI.py:1616 #: flatcamGUI/FlatCAMGUI.py:1953 flatcamGUI/ObjectUI.py:1007 @@ -482,68 +482,68 @@ msgstr "Adaugă" msgid "Delete" msgstr "Șterge" -#: FlatCAMApp.py:5293 +#: FlatCAMApp.py:5314 msgid "New Grid ..." msgstr "Grid nou ..." -#: FlatCAMApp.py:5294 +#: FlatCAMApp.py:5315 msgid "Enter a Grid Value:" msgstr "Introduceti of valoare pt Grid:" -#: FlatCAMApp.py:5302 FlatCAMApp.py:5329 +#: FlatCAMApp.py:5323 FlatCAMApp.py:5350 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:5308 +#: FlatCAMApp.py:5329 msgid "[success] New Grid added ..." msgstr "[success] O noua valoare pt Grila a fost adăugată..." -#: FlatCAMApp.py:5311 +#: FlatCAMApp.py:5332 msgid "[WARNING_NOTCL] Grid already exists ..." msgstr "[WARNING_NOTCL] Grila există deja." -#: FlatCAMApp.py:5314 +#: FlatCAMApp.py:5335 msgid "[WARNING_NOTCL] Adding New Grid cancelled ..." msgstr "[WARNING_NOTCL] Adăugarea unei valori de Grilă a fost anulată ..." -#: FlatCAMApp.py:5336 +#: FlatCAMApp.py:5357 msgid "[ERROR_NOTCL] Grid Value does not exist ..." msgstr "[ERROR_NOTCL] Valoarea Grilei nu există ..." -#: FlatCAMApp.py:5339 +#: FlatCAMApp.py:5360 msgid "[success] Grid Value deleted ..." msgstr "[success] Valoarea Grila a fost stearsă." -#: FlatCAMApp.py:5342 +#: FlatCAMApp.py:5363 msgid "[WARNING_NOTCL] Delete Grid value cancelled ..." msgstr "[WARNING_NOTCL] Ștergerea unei valori de Grilă a fost anulată ..." -#: FlatCAMApp.py:5381 +#: FlatCAMApp.py:5402 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:5385 +#: FlatCAMApp.py:5406 msgid "Name copied on clipboard ..." msgstr "Numele a fost copiat pe Clipboard ..." -#: FlatCAMApp.py:5427 flatcamEditors/FlatCAMGrbEditor.py:3901 +#: FlatCAMApp.py:5448 flatcamEditors/FlatCAMGrbEditor.py:3901 msgid "[success] Coordinates copied to clipboard." msgstr "[success] Coordonatele au fost copiate in clipboard." -#: FlatCAMApp.py:5683 FlatCAMApp.py:5686 FlatCAMApp.py:5689 FlatCAMApp.py:5692 -#: FlatCAMApp.py:5707 FlatCAMApp.py:5710 FlatCAMApp.py:5713 FlatCAMApp.py:5716 -#: FlatCAMApp.py:5756 FlatCAMApp.py:5759 FlatCAMApp.py:5762 FlatCAMApp.py:5765 +#: FlatCAMApp.py:5704 FlatCAMApp.py:5707 FlatCAMApp.py:5710 FlatCAMApp.py:5713 +#: FlatCAMApp.py:5728 FlatCAMApp.py:5731 FlatCAMApp.py:5734 FlatCAMApp.py:5737 +#: FlatCAMApp.py:5777 FlatCAMApp.py:5780 FlatCAMApp.py:5783 FlatCAMApp.py:5786 #: ObjectCollection.py:719 ObjectCollection.py:722 ObjectCollection.py:725 #: ObjectCollection.py:728 #, python-brace-format msgid "[selected]{name} selected" msgstr "[selected]{name} selectat" -#: FlatCAMApp.py:5882 +#: FlatCAMApp.py:5903 msgid "" "There are files/objects opened in FlatCAM.\n" "Creating a New project will delete them.\n" @@ -553,111 +553,111 @@ msgstr "" "Crearea unui nou Proiect le va șterge..\n" "Doriti să Salvati proiectul curentt?" -#: FlatCAMApp.py:5903 +#: FlatCAMApp.py:5924 msgid "[success] New Project created..." msgstr "[success] Un nou Proiect a fost creat..." -#: FlatCAMApp.py:6019 FlatCAMApp.py:6022 flatcamGUI/FlatCAMGUI.py:608 +#: FlatCAMApp.py:6040 FlatCAMApp.py:6043 flatcamGUI/FlatCAMGUI.py:608 #: flatcamGUI/FlatCAMGUI.py:1832 msgid "Open Gerber" msgstr "Încarcă Gerber" -#: FlatCAMApp.py:6027 +#: FlatCAMApp.py:6048 msgid "[WARNING_NOTCL] Open Gerber cancelled." msgstr "[WARNING_NOTCL] Incărcarea unui fişier Gerber este anulată." -#: FlatCAMApp.py:6048 FlatCAMApp.py:6051 flatcamGUI/FlatCAMGUI.py:609 +#: FlatCAMApp.py:6069 FlatCAMApp.py:6072 flatcamGUI/FlatCAMGUI.py:609 #: flatcamGUI/FlatCAMGUI.py:1833 msgid "Open Excellon" msgstr "Încarcă Excellon" -#: FlatCAMApp.py:6056 +#: FlatCAMApp.py:6077 msgid "[WARNING_NOTCL] Open Excellon cancelled." msgstr "[WARNING_NOTCL] Incărcarea unui fişier Excellon este anulată." -#: FlatCAMApp.py:6078 FlatCAMApp.py:6081 +#: FlatCAMApp.py:6099 FlatCAMApp.py:6102 msgid "Open G-Code" msgstr "Încarcă G-Code" -#: FlatCAMApp.py:6086 +#: FlatCAMApp.py:6107 msgid "[WARNING_NOTCL] Open G-Code cancelled." msgstr "[WARNING_NOTCL] Incărcarea unui fişier G-Code este anulată." -#: FlatCAMApp.py:6104 FlatCAMApp.py:6107 +#: FlatCAMApp.py:6125 FlatCAMApp.py:6128 msgid "Open Project" msgstr "Încarcă Project" -#: FlatCAMApp.py:6115 +#: FlatCAMApp.py:6136 msgid "[WARNING_NOTCL] Open Project cancelled." msgstr "[WARNING_NOTCL] Incărcarea unui Proiect a fost anulată." -#: FlatCAMApp.py:6134 FlatCAMApp.py:6137 +#: FlatCAMApp.py:6155 FlatCAMApp.py:6158 msgid "Open Configuration File" msgstr "Încarcă un fişier de Configurare" -#: FlatCAMApp.py:6141 +#: FlatCAMApp.py:6162 msgid "[WARNING_NOTCL] Open Config cancelled." msgstr "[WARNING_NOTCL] Incărcarea unui fişier de Configurare este anulată." -#: FlatCAMApp.py:6156 FlatCAMApp.py:6407 FlatCAMApp.py:8560 FlatCAMApp.py:8580 -#: FlatCAMApp.py:8601 FlatCAMApp.py:8623 +#: FlatCAMApp.py:6177 FlatCAMApp.py:6428 FlatCAMApp.py:8581 FlatCAMApp.py:8601 +#: FlatCAMApp.py:8622 FlatCAMApp.py:8644 msgid "[WARNING_NOTCL] No object selected." msgstr "[WARNING_NOTCL] Nici-un obiect selectat." -#: FlatCAMApp.py:6157 FlatCAMApp.py:6408 +#: FlatCAMApp.py:6178 FlatCAMApp.py:6429 msgid "Please Select a Geometry object to export" msgstr "Selectează un obiect Geometrie pentru export" -#: FlatCAMApp.py:6168 +#: FlatCAMApp.py:6189 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:6181 FlatCAMApp.py:6185 +#: FlatCAMApp.py:6202 FlatCAMApp.py:6206 msgid "Export SVG" msgstr "Exporta SVG" -#: FlatCAMApp.py:6190 +#: FlatCAMApp.py:6211 msgid "[WARNING_NOTCL] Export SVG cancelled." msgstr "[WARNING_NOTCL] Exportul SVG este anulat." -#: FlatCAMApp.py:6209 +#: FlatCAMApp.py:6230 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:6215 FlatCAMApp.py:6219 +#: FlatCAMApp.py:6236 FlatCAMApp.py:6240 msgid "Export PNG Image" msgstr "Exporta imagine PNG" -#: FlatCAMApp.py:6224 +#: FlatCAMApp.py:6245 msgid "Export PNG cancelled." msgstr "Exportul imagine PNG este anulat." -#: FlatCAMApp.py:6243 +#: FlatCAMApp.py:6264 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:6248 FlatCAMApp.py:6371 +#: FlatCAMApp.py:6269 FlatCAMApp.py:6392 msgid "" "[ERROR_NOTCL] Failed. Only Gerber objects can be saved as Gerber files..." msgstr "" "[ERROR_NOTCL] Eșuat. Doar obiectele tip Gerber pot fi salvate ca fişiere " "Gerber..." -#: FlatCAMApp.py:6260 +#: FlatCAMApp.py:6281 msgid "Save Gerber source file" msgstr "Salvează codul sursa Gerber ca fişier" -#: FlatCAMApp.py:6265 +#: FlatCAMApp.py:6286 msgid "[WARNING_NOTCL] Save Gerber source file cancelled." msgstr "[WARNING_NOTCL] Salvarea codului sursa Gerber este anulată." -#: FlatCAMApp.py:6284 +#: FlatCAMApp.py:6305 msgid "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." @@ -665,22 +665,22 @@ msgstr "" "[WARNING_NOTCL] Nici-un obiect selectat. Selectează un obiect Excellon " "pentru export." -#: FlatCAMApp.py:6289 FlatCAMApp.py:6330 +#: FlatCAMApp.py:6310 FlatCAMApp.py:6351 msgid "" "[ERROR_NOTCL] Failed. Only Excellon objects can be saved as Excellon files..." msgstr "" "[ERROR_NOTCL] Eșuat. Doar obiectele tip Excellon pot fi salvate ca fişiere " "Excellon ..." -#: FlatCAMApp.py:6297 FlatCAMApp.py:6301 +#: FlatCAMApp.py:6318 FlatCAMApp.py:6322 msgid "Save Excellon source file" msgstr "Salvează codul sursa Excellon ca fişier" -#: FlatCAMApp.py:6306 +#: FlatCAMApp.py:6327 msgid "[WARNING_NOTCL] Saving Excellon source file cancelled." msgstr "[WARNING_NOTCL] Salvarea codului sursa Excellon este anulată." -#: FlatCAMApp.py:6325 +#: FlatCAMApp.py:6346 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." @@ -688,94 +688,94 @@ msgstr "" "[WARNING_NOTCL] Nici-un obiect selectat. Selectează un obiect Excellon " "pentru export." -#: FlatCAMApp.py:6338 FlatCAMApp.py:6342 +#: FlatCAMApp.py:6359 FlatCAMApp.py:6363 msgid "Export Excellon" msgstr "Exporta Excellon" -#: FlatCAMApp.py:6347 +#: FlatCAMApp.py:6368 msgid "[WARNING_NOTCL] Export Excellon cancelled." msgstr "[WARNING_NOTCL] Exportul Excellon anulat." -#: FlatCAMApp.py:6366 +#: FlatCAMApp.py:6387 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:6379 FlatCAMApp.py:6383 +#: FlatCAMApp.py:6400 FlatCAMApp.py:6404 msgid "Export Gerber" msgstr "Exporta Gerber" -#: FlatCAMApp.py:6388 +#: FlatCAMApp.py:6409 msgid "[WARNING_NOTCL] Export Gerber cancelled." msgstr "[WARNING_NOTCL] Exportul Gerber este anulat." -#: FlatCAMApp.py:6418 +#: FlatCAMApp.py:6439 msgid "[ERROR_NOTCL] Only Geometry objects can be used." msgstr "[ERROR_NOTCL] Doar obiecte tip Geometrie pot fi folosite." -#: FlatCAMApp.py:6432 FlatCAMApp.py:6436 +#: FlatCAMApp.py:6453 FlatCAMApp.py:6457 msgid "Export DXF" msgstr "Exporta DXF" -#: FlatCAMApp.py:6442 +#: FlatCAMApp.py:6463 msgid "[WARNING_NOTCL] Export DXF cancelled." msgstr "[WARNING_NOTCL] Exportul DXF anulat." -#: FlatCAMApp.py:6462 FlatCAMApp.py:6465 +#: FlatCAMApp.py:6483 FlatCAMApp.py:6486 msgid "Import SVG" msgstr "Importa SVG" -#: FlatCAMApp.py:6474 +#: FlatCAMApp.py:6495 msgid "[WARNING_NOTCL] Open SVG cancelled." msgstr "[WARNING_NOTCL] Importul SVG anulat." -#: FlatCAMApp.py:6493 FlatCAMApp.py:6497 +#: FlatCAMApp.py:6514 FlatCAMApp.py:6518 msgid "Import DXF" msgstr "Importa DXF" -#: FlatCAMApp.py:6506 +#: FlatCAMApp.py:6527 msgid "[WARNING_NOTCL] Open DXF cancelled." msgstr "[WARNING_NOTCL] Incărcarea fişier DXF anulată." -#: FlatCAMApp.py:6524 +#: FlatCAMApp.py:6545 #, python-format msgid "%s" msgstr "%s" -#: FlatCAMApp.py:6544 +#: FlatCAMApp.py:6565 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:6551 +#: FlatCAMApp.py:6572 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:6559 +#: FlatCAMApp.py:6580 msgid "Source Editor" msgstr "Editor Cod" -#: FlatCAMApp.py:6569 +#: FlatCAMApp.py:6590 #, python-format msgid "[ERROR]App.on_view_source() -->%s" msgstr "[ERROR]App.on_view_source() -->%s" -#: FlatCAMApp.py:6581 FlatCAMApp.py:7723 FlatCAMObj.py:5560 +#: FlatCAMApp.py:6602 FlatCAMApp.py:7744 FlatCAMObj.py:5581 #: flatcamTools/ToolSolderPaste.py:1278 msgid "Code Editor" msgstr "Editor Cod" -#: FlatCAMApp.py:6593 +#: FlatCAMApp.py:6614 msgid "Script Editor" msgstr "Editor Script." -#: FlatCAMApp.py:6596 +#: FlatCAMApp.py:6617 msgid "" "#\n" "# CREATE A NEW FLATCAM TCL SCRIPT\n" @@ -819,99 +819,99 @@ msgstr "" "#\n" "\n" -#: FlatCAMApp.py:6619 FlatCAMApp.py:6622 +#: FlatCAMApp.py:6640 FlatCAMApp.py:6643 msgid "Open TCL script" msgstr "Încarcă TCL script" -#: FlatCAMApp.py:6630 +#: FlatCAMApp.py:6651 msgid "[WARNING_NOTCL] Open TCL script cancelled." msgstr "[WARNING_NOTCL] Incărcarea TCL script anulată." -#: FlatCAMApp.py:6642 +#: FlatCAMApp.py:6663 #, python-format msgid "[ERROR]App.on_fileopenscript() -->%s" msgstr "[ERROR]App.on_fileopenscript() -->%s" -#: FlatCAMApp.py:6668 FlatCAMApp.py:6671 +#: FlatCAMApp.py:6689 FlatCAMApp.py:6692 msgid "Run TCL script" msgstr "Ruleaza TCL script" -#: FlatCAMApp.py:6679 +#: FlatCAMApp.py:6700 msgid "[WARNING_NOTCL] Run TCL script cancelled." msgstr "[WARNING_NOTCL] Rularea fisierului Script a fost anulată." -#: FlatCAMApp.py:6729 FlatCAMApp.py:6733 +#: FlatCAMApp.py:6750 FlatCAMApp.py:6754 msgid "Save Project As ..." msgstr "Salvează Proiectul ca ..." -#: FlatCAMApp.py:6730 +#: FlatCAMApp.py:6751 #, python-brace-format msgid "{l_save}/Project_{date}" msgstr "{l_save}/Proiect_{date}" -#: FlatCAMApp.py:6738 +#: FlatCAMApp.py:6759 msgid "[WARNING_NOTCL] Save Project cancelled." msgstr "[WARNING_NOTCL] Salvarea Proiect anulată." -#: FlatCAMApp.py:6782 +#: FlatCAMApp.py:6803 msgid "Exporting SVG" msgstr "SVG in curs de export" -#: FlatCAMApp.py:6816 FlatCAMApp.py:6922 FlatCAMApp.py:7037 +#: FlatCAMApp.py:6837 FlatCAMApp.py:6943 FlatCAMApp.py:7058 #, python-format msgid "[success] SVG file exported to %s" msgstr "[success] Fişier SVG exportat in %s" -#: FlatCAMApp.py:6847 FlatCAMApp.py:6968 +#: FlatCAMApp.py:6868 FlatCAMApp.py:6989 #, 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:6925 FlatCAMApp.py:7040 +#: FlatCAMApp.py:6946 FlatCAMApp.py:7061 msgid "Generating Film ... Please wait." msgstr "Filmul se generează ... Aşteaptă!" -#: FlatCAMApp.py:7188 +#: FlatCAMApp.py:7209 #, python-format msgid "[success] Excellon file exported to %s" msgstr "[success] Fişierul Excellon exportat in %s" -#: FlatCAMApp.py:7195 +#: FlatCAMApp.py:7216 msgid "Exporting Excellon" msgstr "Excellon in curs de export" -#: FlatCAMApp.py:7200 FlatCAMApp.py:7207 +#: FlatCAMApp.py:7221 FlatCAMApp.py:7228 msgid "[ERROR_NOTCL] Could not export Excellon file." msgstr "[ERROR_NOTCL] Fişierul Excellon nu a putut fi exportat." -#: FlatCAMApp.py:7305 +#: FlatCAMApp.py:7326 #, python-format msgid "[success] Gerber file exported to %s" msgstr "[success] Fişier Gerber exportat in %s" -#: FlatCAMApp.py:7312 +#: FlatCAMApp.py:7333 msgid "Exporting Gerber" msgstr "Gerber in curs de export" -#: FlatCAMApp.py:7317 FlatCAMApp.py:7324 +#: FlatCAMApp.py:7338 FlatCAMApp.py:7345 msgid "[ERROR_NOTCL] Could not export Gerber file." msgstr "[ERROR_NOTCL] Fişierul Gerber nu a putut fi exportat." -#: FlatCAMApp.py:7364 +#: FlatCAMApp.py:7385 #, python-format msgid "[success] DXF file exported to %s" msgstr "[success] Fişierul DXF exportat in %s" -#: FlatCAMApp.py:7370 +#: FlatCAMApp.py:7391 msgid "Exporting DXF" msgstr "DXF in curs de export" -#: FlatCAMApp.py:7375 FlatCAMApp.py:7382 +#: FlatCAMApp.py:7396 FlatCAMApp.py:7403 msgid "[[WARNING_NOTCL]] Could not export DXF file." msgstr "[[WARNING_NOTCL]] Fişierul DXF nu a putut fi exportat." -#: FlatCAMApp.py:7402 FlatCAMApp.py:7444 FlatCAMApp.py:7488 +#: FlatCAMApp.py:7423 FlatCAMApp.py:7465 FlatCAMApp.py:7509 msgid "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" @@ -919,102 +919,102 @@ msgstr "" "[ERROR_NOTCL] Typul parametrului nu este compatibil. Doar Geometrie is " "Gerber sunt acceptate." -#: FlatCAMApp.py:7412 +#: FlatCAMApp.py:7433 msgid "Importing SVG" msgstr "SVG in curs de ia fi importat" -#: FlatCAMApp.py:7423 FlatCAMApp.py:7465 FlatCAMApp.py:7508 FlatCAMApp.py:7585 -#: FlatCAMApp.py:7646 FlatCAMApp.py:7709 flatcamTools/ToolPDF.py:212 +#: FlatCAMApp.py:7444 FlatCAMApp.py:7486 FlatCAMApp.py:7529 FlatCAMApp.py:7606 +#: FlatCAMApp.py:7667 FlatCAMApp.py:7730 flatcamTools/ToolPDF.py:212 #, python-format msgid "[success] Opened: %s" msgstr "[success] Incărcat: %s" -#: FlatCAMApp.py:7454 +#: FlatCAMApp.py:7475 msgid "Importing DXF" msgstr "DXF in curs de a fi importat" -#: FlatCAMApp.py:7496 +#: FlatCAMApp.py:7517 msgid "Importing Image" msgstr "Imaginea in curs de a fi importata" -#: FlatCAMApp.py:7537 FlatCAMApp.py:7539 +#: FlatCAMApp.py:7558 FlatCAMApp.py:7560 #, python-format msgid "[ERROR_NOTCL] Failed to open file: %s" msgstr "[ERROR_NOTCL] Eşec in incărcarea fişierului %s" -#: FlatCAMApp.py:7542 +#: FlatCAMApp.py:7563 #, python-brace-format msgid "[ERROR_NOTCL] Failed to parse file: {name}. {error}" msgstr "[ERROR_NOTCL] Eşec in parsarea fişierului: {name}. {error}" -#: FlatCAMApp.py:7549 FlatCAMObj.py:4239 +#: FlatCAMApp.py:7570 FlatCAMObj.py:4259 #: flatcamEditors/FlatCAMExcEditor.py:2077 msgid "[ERROR] An internal error has ocurred. See shell.\n" msgstr "" "[ERROR] A apărut o eroare interna. Verifică in TCL Shell pt mai multe " "detalii.\n" -#: FlatCAMApp.py:7558 +#: FlatCAMApp.py:7579 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:7566 +#: FlatCAMApp.py:7587 msgid "Opening Gerber" msgstr "Gerber in curs de incărcare" -#: FlatCAMApp.py:7576 +#: FlatCAMApp.py:7597 msgid "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." msgstr "" "[ERROR_NOTCL] Incărcarea Gerber a eșuat. Probabil nu este de tip Gerber." -#: FlatCAMApp.py:7609 flatcamTools/ToolPcbWizard.py:421 +#: FlatCAMApp.py:7630 flatcamTools/ToolPcbWizard.py:421 msgid "[ERROR_NOTCL] This is not Excellon file." msgstr "[ERROR_NOTCL] Acesta nu este un fişier Excellon." -#: FlatCAMApp.py:7612 +#: FlatCAMApp.py:7633 #, python-format msgid "[ERROR_NOTCL] Cannot open file: %s" msgstr "[ERROR_NOTCL] Fişierul %s nu se poate incărca." -#: FlatCAMApp.py:7617 flatcamTools/ToolPcbWizard.py:429 +#: FlatCAMApp.py:7638 flatcamTools/ToolPcbWizard.py:429 msgid "[ERROR_NOTCL] An internal error has occurred. See shell.\n" msgstr "" "[ERROR_NOTCL] A apărut o eroare interna. Verifică in TCL Shell pt mai multe " "detalii.\n" -#: FlatCAMApp.py:7630 flatcamTools/ToolPDF.py:262 +#: FlatCAMApp.py:7651 flatcamTools/ToolPDF.py:262 #: flatcamTools/ToolPcbWizard.py:442 #, python-format msgid "[ERROR_NOTCL] No geometry found in file: %s" msgstr "" "[ERROR_NOTCL] Nici-o informaţie de tip geometrie nu s-a gasit in fişierul: %s" -#: FlatCAMApp.py:7633 +#: FlatCAMApp.py:7654 msgid "Opening Excellon." msgstr "Excellon in curs de incărcare" -#: FlatCAMApp.py:7639 +#: FlatCAMApp.py:7660 msgid "[ERROR_NOTCL] Open Excellon file failed. Probable not an Excellon file." msgstr "" "[ERROR_NOTCL] Incărcarea Excellon a eșuat. Probabil nu este de tip Excellon." -#: FlatCAMApp.py:7676 +#: FlatCAMApp.py:7697 #, python-format msgid "[ERROR_NOTCL] Failed to open %s" msgstr "[ERROR_NOTCL] Incărcarea fişierului %s a eșuat." -#: FlatCAMApp.py:7686 +#: FlatCAMApp.py:7707 msgid "[ERROR_NOTCL] This is not GCODE" msgstr "[ERROR_NOTCL] Acest obiect nu este de tip GCode" -#: FlatCAMApp.py:7692 +#: FlatCAMApp.py:7713 msgid "Opening G-Code." msgstr "G-Code in curs de incărcare" -#: FlatCAMApp.py:7700 +#: FlatCAMApp.py:7721 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 " @@ -1025,26 +1025,26 @@ msgstr "" "Incercarea de a crea un obiect CNCJob din G-Code a eșuat in timpul " "procesarii." -#: FlatCAMApp.py:7740 +#: FlatCAMApp.py:7761 #, python-format msgid "[ERROR_NOTCL] Failed to open config file: %s" msgstr "[ERROR_NOTCL] Eşec in incărcarea fişierului de configurare: %s" -#: FlatCAMApp.py:7766 FlatCAMApp.py:7783 +#: FlatCAMApp.py:7787 FlatCAMApp.py:7804 #, python-format msgid "[ERROR_NOTCL] Failed to open project file: %s" msgstr "[ERROR_NOTCL] Eşec in incărcarea fişierului proiect: %s" -#: FlatCAMApp.py:7806 +#: FlatCAMApp.py:7827 #, python-format msgid "[success] Project loaded from: %s" msgstr "[success] Proeictul a fost incărcat din: %s" -#: FlatCAMApp.py:7911 +#: FlatCAMApp.py:7932 msgid "Available commands:\n" msgstr "Comenzi disponibile:\n" -#: FlatCAMApp.py:7913 +#: FlatCAMApp.py:7934 msgid "" "\n" "\n" @@ -1056,27 +1056,27 @@ msgstr "" "Introduceți help pentru utilizare.\n" "Exemplu: help open_gerber" -#: FlatCAMApp.py:8063 +#: FlatCAMApp.py:8084 msgid "Shows list of commands." msgstr "Arata o lista de comenzi." -#: FlatCAMApp.py:8120 +#: FlatCAMApp.py:8141 msgid "[ERROR_NOTCL] Failed to load recent item list." msgstr "[ERROR_NOTCL] Eşec in incărcarea listei cu obiecte recente." -#: FlatCAMApp.py:8127 +#: FlatCAMApp.py:8148 msgid "[ERROR_NOTCL] Failed to parse recent item list." msgstr "[ERROR_NOTCL] Eşec in parsarea listei cu obiecte recente." -#: FlatCAMApp.py:8171 +#: FlatCAMApp.py:8192 msgid "Clear Recent files" msgstr "Sterge fişierele recente" -#: FlatCAMApp.py:8188 flatcamGUI/FlatCAMGUI.py:968 +#: FlatCAMApp.py:8209 flatcamGUI/FlatCAMGUI.py:968 msgid "Shortcut Key List" msgstr "Lista cu taste Shortcut" -#: FlatCAMApp.py:8195 +#: FlatCAMApp.py:8216 msgid "" "\n" "

Selected Tab - Choose an Item from " @@ -1173,27 +1173,27 @@ msgstr "" "\n" " " -#: FlatCAMApp.py:8302 +#: FlatCAMApp.py:8323 msgid "[WARNING_NOTCL] Failed checking for latest version. Could not connect." msgstr "" "[WARNING_NOTCL] Verificarea pentru ultima versiune a eșuat. Nu a fost " "posibilă conectarea la server." -#: FlatCAMApp.py:8309 +#: FlatCAMApp.py:8330 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:8319 +#: FlatCAMApp.py:8340 msgid "[success] FlatCAM is up to date!" msgstr "[success] FlatCAM este la ultima versiune!" -#: FlatCAMApp.py:8324 +#: FlatCAMApp.py:8345 msgid "Newer Version Available" msgstr "O nouă versiune este disponibila" -#: FlatCAMApp.py:8325 +#: FlatCAMApp.py:8346 msgid "" "There is a newer version of FlatCAM available for download:\n" "\n" @@ -1201,58 +1201,58 @@ msgstr "" "O nouă versiune de FlatCAM este disponibilă pentru download::\n" "\n" -#: FlatCAMApp.py:8327 +#: FlatCAMApp.py:8348 msgid "info" msgstr "Informaţie" -#: FlatCAMApp.py:8346 +#: FlatCAMApp.py:8367 msgid "[success] All plots disabled." msgstr "[success] Toate afişările sunt dezactivate." -#: FlatCAMApp.py:8352 +#: FlatCAMApp.py:8373 msgid "[success] All non selected plots disabled." msgstr "[success] Toate afişările care nu sunt selectate sunt dezactivate." -#: FlatCAMApp.py:8358 +#: FlatCAMApp.py:8379 msgid "[success] All plots enabled." msgstr "[success] Toate afişările sunt activate." -#: FlatCAMApp.py:8364 +#: FlatCAMApp.py:8385 msgid "[success] Selected plots enabled..." msgstr "[success] Toate afişările sunt activate..." -#: FlatCAMApp.py:8372 +#: FlatCAMApp.py:8393 msgid "[success] Selected plots disabled..." msgstr "[success] Toate afişările sunt dezactivate..." -#: FlatCAMApp.py:8382 FlatCAMApp.py:8395 +#: FlatCAMApp.py:8403 FlatCAMApp.py:8416 msgid "Working ..." msgstr "Se lucrează..." -#: FlatCAMApp.py:8429 +#: FlatCAMApp.py:8450 msgid "Saving FlatCAM Project" msgstr "Proiectul FlatCAM este in curs de salvare" -#: FlatCAMApp.py:8450 FlatCAMApp.py:8481 +#: FlatCAMApp.py:8471 FlatCAMApp.py:8502 #, python-format msgid "[success] Project saved to: %s" msgstr "[success] Proiectul s-a salvat in: %s" -#: FlatCAMApp.py:8468 +#: FlatCAMApp.py:8489 #, python-format msgid "[ERROR_NOTCL] Failed to verify project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Verificarea proiectului salvat a eșuat: %s. Incearcă să il " "salvezi din nou." -#: FlatCAMApp.py:8475 +#: FlatCAMApp.py:8496 #, python-format msgid "[ERROR_NOTCL] Failed to parse saved project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Parsarea proiectului salvat a eșuat: %s. Incearcă să il " "salvezi din nou." -#: FlatCAMApp.py:8483 +#: FlatCAMApp.py:8504 #, python-format msgid "[ERROR_NOTCL] Failed to save project file: %s. Retry to save it." msgstr "" @@ -1264,11 +1264,11 @@ msgstr "" msgid "[success] Name changed from {old} to {new}" msgstr "[success] Numele schimbat din {old} in {new}" -#: FlatCAMObj.py:553 FlatCAMObj.py:2035 FlatCAMObj.py:3281 FlatCAMObj.py:5457 +#: FlatCAMObj.py:553 FlatCAMObj.py:2035 FlatCAMObj.py:3301 FlatCAMObj.py:5478 msgid "Basic" msgstr "Baza" -#: FlatCAMObj.py:565 FlatCAMObj.py:2051 FlatCAMObj.py:3303 FlatCAMObj.py:5463 +#: FlatCAMObj.py:565 FlatCAMObj.py:2051 FlatCAMObj.py:3323 FlatCAMObj.py:5484 msgid "Advanced" msgstr "Avansat" @@ -1289,9 +1289,9 @@ msgstr "Nr. Tot. Op. Găurire" msgid "Total Slots" msgstr "Nr. Tot. Sloturi" -#: FlatCAMObj.py:2107 FlatCAMObj.py:3355 FlatCAMObj.py:3655 FlatCAMObj.py:3842 -#: FlatCAMObj.py:3855 FlatCAMObj.py:3972 FlatCAMObj.py:4389 FlatCAMObj.py:4627 -#: FlatCAMObj.py:5040 flatcamEditors/FlatCAMExcEditor.py:1474 +#: FlatCAMObj.py:2107 FlatCAMObj.py:3375 FlatCAMObj.py:3675 FlatCAMObj.py:3862 +#: FlatCAMObj.py:3875 FlatCAMObj.py:3992 FlatCAMObj.py:4409 FlatCAMObj.py:4647 +#: FlatCAMObj.py:5060 flatcamEditors/FlatCAMExcEditor.py:1474 #: flatcamTools/ToolCalculators.py:307 flatcamTools/ToolCalculators.py:318 #: flatcamTools/ToolCalculators.py:330 flatcamTools/ToolCalculators.py:345 #: flatcamTools/ToolCalculators.py:358 flatcamTools/ToolCalculators.py:372 @@ -1350,7 +1350,7 @@ msgid "" msgstr "" "[ERROR_NOTCL] Anulat. Freza este mai mare decat diametrul slotului de frezat." -#: FlatCAMObj.py:2608 FlatCAMObj.py:4277 FlatCAMObj.py:4493 FlatCAMObj.py:4810 +#: FlatCAMObj.py:2608 FlatCAMObj.py:4297 FlatCAMObj.py:4513 FlatCAMObj.py:4830 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"z_pdepth\"] or self." "options[\"z_pdepth\"]" @@ -1358,7 +1358,7 @@ msgstr "" "[ERROR_NOTCL] Valoare gresita pt self.defaults[\"z_pdepth\"] sau self." "options[\"z_pdepth\"]" -#: FlatCAMObj.py:2620 FlatCAMObj.py:4289 FlatCAMObj.py:4505 FlatCAMObj.py:4822 +#: FlatCAMObj.py:2620 FlatCAMObj.py:4309 FlatCAMObj.py:4525 FlatCAMObj.py:4842 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"feedrate_probe\"] or " "self.options[\"feedrate_probe\"]" @@ -1366,11 +1366,11 @@ msgstr "" "[ERROR_NOTCL] Valoare gresita pt self.defaults[\"feedrate_probe\"] sau self." "options[\"feedrate_probe\"]" -#: FlatCAMObj.py:2652 FlatCAMObj.py:4698 FlatCAMObj.py:4703 FlatCAMObj.py:4853 +#: FlatCAMObj.py:2652 FlatCAMObj.py:4718 FlatCAMObj.py:4723 FlatCAMObj.py:4873 msgid "Generating CNC Code" msgstr "CNC Code in curs de generare" -#: FlatCAMObj.py:2678 FlatCAMObj.py:4999 camlib.py:5167 camlib.py:5626 +#: FlatCAMObj.py:2678 FlatCAMObj.py:5019 camlib.py:5167 camlib.py:5626 #: camlib.py:5889 msgid "" "[ERROR]The Toolchange X,Y field in Edit -> Preferences has to be in the " @@ -1381,58 +1381,58 @@ msgstr "" "să fie in formatul (x, y) \n" "dar are o singură valoare in loc de doua. " -#: FlatCAMObj.py:2990 FlatCAMObj.py:3898 FlatCAMObj.py:3899 FlatCAMObj.py:3908 +#: FlatCAMObj.py:2998 FlatCAMObj.py:3918 FlatCAMObj.py:3919 FlatCAMObj.py:3928 msgid "Iso" msgstr "Izo." -#: FlatCAMObj.py:2990 FlatCAMObj.py:3239 FlatCAMObj.py:3520 +#: FlatCAMObj.py:2998 FlatCAMObj.py:3258 FlatCAMObj.py:3540 msgid "Rough" msgstr "Grosier" -#: FlatCAMObj.py:2990 +#: FlatCAMObj.py:2998 msgid "Finish" msgstr "Finisare" -#: FlatCAMObj.py:3274 flatcamGUI/FlatCAMGUI.py:526 flatcamGUI/FlatCAMGUI.py:722 +#: FlatCAMObj.py:3294 flatcamGUI/FlatCAMGUI.py:526 flatcamGUI/FlatCAMGUI.py:722 #: flatcamGUI/FlatCAMGUI.py:1615 flatcamGUI/FlatCAMGUI.py:1951 #: flatcamGUI/ObjectUI.py:999 msgid "Copy" msgstr "Copiază" -#: FlatCAMObj.py:3490 +#: FlatCAMObj.py:3510 msgid "[ERROR_NOTCL] Please enter the desired tool diameter in Float format." msgstr "[ERROR_NOTCL] Introdu diametrul dorit pt unealtă in format Real." -#: FlatCAMObj.py:3565 +#: FlatCAMObj.py:3585 msgid "[success] Tool added in Tool Table." msgstr "[success] Unealtă adăugată in Tabela de Unelte." -#: FlatCAMObj.py:3570 +#: FlatCAMObj.py:3590 msgid "[ERROR_NOTCL] Default Tool added. Wrong value format entered." msgstr "" "[ERROR_NOTCL] Unealta implicita adăugată dar valoarea are un format gresit." -#: FlatCAMObj.py:3600 FlatCAMObj.py:3610 +#: FlatCAMObj.py:3620 FlatCAMObj.py:3630 msgid "[WARNING_NOTCL] Failed. Select a tool to copy." msgstr "[WARNING_NOTCL] Eșuat. Selectează o unealtă pt copiere." -#: FlatCAMObj.py:3639 +#: FlatCAMObj.py:3659 msgid "[success] Tool was copied in Tool Table." msgstr "[success] Unealta a fost copiata in Tabela de Unelte." -#: FlatCAMObj.py:3672 +#: FlatCAMObj.py:3692 msgid "[success] Tool was edited in Tool Table." msgstr "[success] Unealta a fost editata in Tabela de Unelte." -#: FlatCAMObj.py:3703 FlatCAMObj.py:3713 +#: FlatCAMObj.py:3723 FlatCAMObj.py:3733 msgid "[WARNING_NOTCL] Failed. Select a tool to delete." msgstr "[WARNING_NOTCL] Eșuat. Selectează o unealtă pentru ștergere." -#: FlatCAMObj.py:3737 +#: FlatCAMObj.py:3757 msgid "[success] Tool was deleted in Tool Table." msgstr "[success] Unealta a fost stearsa din Tabela de Unelte." -#: FlatCAMObj.py:4158 +#: FlatCAMObj.py:4178 #, python-format msgid "" "[WARNING_NOTCL] This Geometry can't be processed because it is %s geometry." @@ -1440,23 +1440,23 @@ msgstr "" "[WARNING_NOTCL] Acest obiect Geometrie nu poate fi procesar decoarece este " "Geometrie %s." -#: FlatCAMObj.py:4175 +#: FlatCAMObj.py:4195 msgid "[ERROR_NOTCL] Wrong Tool Dia value format entered, use a number." msgstr "" "[ERROR_NOTCL] Diametrul uneltei este in format gresit, foloseşte un număr " "Real." -#: FlatCAMObj.py:4202 +#: FlatCAMObj.py:4222 msgid "[ERROR_NOTCL] Failed. No tool selected in the tool table ..." msgstr "" "[ERROR_NOTCL] Eșuat. Nici-o unealtă nu este selectată in Tabela de Unelte ..." -#: FlatCAMObj.py:4240 +#: FlatCAMObj.py:4260 #, python-format msgid "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" msgstr "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" -#: FlatCAMObj.py:4398 FlatCAMObj.py:4636 +#: FlatCAMObj.py:4418 FlatCAMObj.py:4656 msgid "" "[WARNING] Tool Offset is selected in Tool Table but no value is provided.\n" "Add a Tool Offset or change the Offset Type." @@ -1465,21 +1465,21 @@ msgstr "" "val. nu este oferita.\n" "Adaugă un ofset pt unealtă sau schimbă Tipul Ofset." -#: FlatCAMObj.py:4517 flatcamTools/ToolSolderPaste.py:1107 +#: FlatCAMObj.py:4537 flatcamTools/ToolSolderPaste.py:1107 #: flatcamTools/ToolSolderPaste.py:1162 msgid "[ERROR_NOTCL] Cancelled. Empty file, it has no geometry..." msgstr "[ERROR_NOTCL] Anulat. Fişier gol, nu are date geometrice." -#: FlatCAMObj.py:4886 FlatCAMObj.py:4896 camlib.py:3348 camlib.py:3357 +#: FlatCAMObj.py:4906 FlatCAMObj.py:4916 camlib.py:3348 camlib.py:3357 msgid "[ERROR_NOTCL] Scale factor has to be a number: integer or float." msgstr "" "[ERROR_NOTCL] Factorul de scalare trebuie să fie un număr: natural sau real." -#: FlatCAMObj.py:4934 +#: FlatCAMObj.py:4954 msgid "[success] Geometry Scale done." msgstr "[success] Scalare Geometrie executată." -#: FlatCAMObj.py:4951 camlib.py:3426 +#: FlatCAMObj.py:4971 camlib.py:3426 msgid "" "[ERROR_NOTCL] An (x,y) pair of values are needed. Probable you entered only " "one value in the Offset field." @@ -1487,29 +1487,29 @@ msgstr "" "[ERROR_NOTCL] O pereche de valori (x,y) este necesară. Probabil că ai " "introdus numai o singură valoare in câmpul Offset." -#: FlatCAMObj.py:4971 +#: FlatCAMObj.py:4991 msgid "[success] Geometry Offset done." msgstr "[success] Ofset Geometrie executat." -#: FlatCAMObj.py:5525 FlatCAMObj.py:5530 flatcamTools/ToolSolderPaste.py:1361 +#: FlatCAMObj.py:5546 FlatCAMObj.py:5551 flatcamTools/ToolSolderPaste.py:1361 msgid "Export Machine Code ..." msgstr "Exporta CNC Cod Masina ..." -#: FlatCAMObj.py:5536 flatcamTools/ToolSolderPaste.py:1364 +#: FlatCAMObj.py:5557 flatcamTools/ToolSolderPaste.py:1364 msgid "[WARNING_NOTCL] Export Machine Code cancelled ..." msgstr "[WARNING_NOTCL] Exportul codului masina CNC a fost anulat ..." -#: FlatCAMObj.py:5549 +#: FlatCAMObj.py:5570 #, python-format msgid "[success] Machine Code file saved to: %s" msgstr "[success] Fişierul cu cod CNC este salvat in: %s" -#: FlatCAMObj.py:5571 +#: FlatCAMObj.py:5592 #, python-format msgid "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" msgstr "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" -#: FlatCAMObj.py:5688 +#: FlatCAMObj.py:5709 #, python-format msgid "" "[WARNING_NOTCL] This CNCJob object can't be processed because it is a %s " @@ -1518,11 +1518,11 @@ msgstr "" "[WARNING_NOTCL] Acest obiect CNCJob nu poate fi procesar deoarece este un " "obiect CNCJob tip %s." -#: FlatCAMObj.py:5741 +#: FlatCAMObj.py:5762 msgid "[ERROR_NOTCL] G-code does not have a units code: either G20 or G21" msgstr "[ERROR_NOTCL] G-code nu contine codul pt unitati: G20 sau G21" -#: FlatCAMObj.py:5754 +#: FlatCAMObj.py:5775 msgid "" "[ERROR_NOTCL] Cancelled. The Toolchange Custom code is enabled but it's " "empty." @@ -1530,17 +1530,17 @@ msgstr "" "[ERROR_NOTCL] Anulat. Codul G-Code din Macro-ul Schimbare unealtă este " "activat dar nuc contine nimic." -#: FlatCAMObj.py:5761 +#: FlatCAMObj.py:5782 msgid "[success] Toolchange G-code was replaced by a custom code." msgstr "" "[success] G-Code-ul pt schimbare unealtă a fost inlocuit cu un cod " "pesonalizat." -#: FlatCAMObj.py:5776 flatcamTools/ToolSolderPaste.py:1390 +#: FlatCAMObj.py:5797 flatcamTools/ToolSolderPaste.py:1390 msgid "[WARNING_NOTCL] No such file or directory" msgstr "[WARNING_NOTCL] Nu exista un asemenea fişier sau director" -#: FlatCAMObj.py:5796 FlatCAMObj.py:5808 +#: FlatCAMObj.py:5817 FlatCAMObj.py:5829 msgid "" "[WARNING_NOTCL] The used postprocessor file has to have in it's name: " "'toolchange_custom'" @@ -1548,7 +1548,7 @@ msgstr "" "[WARNING_NOTCL] Postprocesorul folosit trebuie să aibă in numele sau: " "'toolchange_custom'" -#: FlatCAMObj.py:5814 +#: FlatCAMObj.py:5835 msgid "[ERROR] There is no postprocessor file." msgstr "[ERROR] Nu exista nici-un fişier postprocesor." @@ -1881,7 +1881,7 @@ msgstr "[success] Executat. Operatiile de găurire au fost mutate." msgid "[success] Done. Drill(s) copied." msgstr "[success] Executat. Operatiile de găurire au fost copiate." -#: flatcamEditors/FlatCAMExcEditor.py:792 flatcamGUI/FlatCAMGUI.py:5026 +#: flatcamEditors/FlatCAMExcEditor.py:792 flatcamGUI/FlatCAMGUI.py:5008 msgid "Excellon Editor" msgstr "Editor Excellon" @@ -1919,7 +1919,7 @@ msgstr "" msgid "Tool Dia:" msgstr "Dia. Unealtă:" -#: flatcamEditors/FlatCAMExcEditor.py:839 flatcamGUI/FlatCAMGUI.py:5055 +#: flatcamEditors/FlatCAMExcEditor.py:839 flatcamGUI/FlatCAMGUI.py:5037 #: flatcamGUI/ObjectUI.py:978 msgid "Diameter for the new tool" msgstr "Diametru pentru noua unealtă (burghiu, freza)" @@ -2000,11 +2000,11 @@ msgstr "Liniar" msgid "Circular" msgstr "Circular" -#: flatcamEditors/FlatCAMExcEditor.py:944 flatcamGUI/FlatCAMGUI.py:5065 +#: flatcamEditors/FlatCAMExcEditor.py:944 flatcamGUI/FlatCAMGUI.py:5047 msgid "Nr of drills:" msgstr "Nr. op. găurire" -#: flatcamEditors/FlatCAMExcEditor.py:946 flatcamGUI/FlatCAMGUI.py:5067 +#: flatcamEditors/FlatCAMExcEditor.py:946 flatcamGUI/FlatCAMGUI.py:5049 msgid "Specify how many drills to be in the array." msgstr "Specifica cate operațiuni de găurire să fie incluse in arie." @@ -2016,7 +2016,7 @@ msgid "Direction:" msgstr "Direcţie:" #: flatcamEditors/FlatCAMExcEditor.py:966 -#: flatcamEditors/FlatCAMGrbEditor.py:2528 flatcamGUI/FlatCAMGUI.py:5082 +#: flatcamEditors/FlatCAMGrbEditor.py:2528 flatcamGUI/FlatCAMGUI.py:5064 msgid "" "Direction on which the linear array is oriented:\n" "- 'X' - horizontal axis \n" @@ -2029,12 +2029,12 @@ msgstr "" "- 'Unghi' - un unghi particular pentru inclinatia ariei" #: flatcamEditors/FlatCAMExcEditor.py:979 -#: flatcamEditors/FlatCAMGrbEditor.py:2541 flatcamGUI/FlatCAMGUI.py:5096 +#: flatcamEditors/FlatCAMGrbEditor.py:2541 flatcamGUI/FlatCAMGUI.py:5078 msgid "Pitch:" msgstr "Pas:" #: flatcamEditors/FlatCAMExcEditor.py:981 -#: flatcamEditors/FlatCAMGrbEditor.py:2543 flatcamGUI/FlatCAMGUI.py:5098 +#: flatcamEditors/FlatCAMGrbEditor.py:2543 flatcamGUI/FlatCAMGUI.py:5080 msgid "Pitch = Distance between elements of the array." msgstr "Pas = Distanta între elementele ariei." @@ -2043,7 +2043,7 @@ msgstr "Pas = Distanta între elementele ariei." #: flatcamEditors/FlatCAMGeoEditor.py:665 #: flatcamEditors/FlatCAMGrbEditor.py:2550 #: flatcamEditors/FlatCAMGrbEditor.py:2586 -#: flatcamEditors/FlatCAMGrbEditor.py:4588 flatcamGUI/FlatCAMGUI.py:5107 +#: flatcamEditors/FlatCAMGrbEditor.py:4588 flatcamGUI/FlatCAMGUI.py:5089 #: flatcamTools/ToolTransform.py:68 msgid "Angle:" msgstr "Unghi:" @@ -2071,8 +2071,8 @@ msgstr "" "sau CCW = invers acelor de ceasornic" #: flatcamEditors/FlatCAMExcEditor.py:1026 -#: flatcamEditors/FlatCAMGrbEditor.py:2588 flatcamGUI/FlatCAMGUI.py:5109 -#: flatcamGUI/FlatCAMGUI.py:5135 +#: flatcamEditors/FlatCAMGrbEditor.py:2588 flatcamGUI/FlatCAMGUI.py:5091 +#: flatcamGUI/FlatCAMGUI.py:5117 msgid "Angle at which each element in circular array is placed." msgstr "" "Unghiul la care fiecare element al ariei circulare este plasat fata de " @@ -2210,12 +2210,13 @@ msgid "Tool" msgstr "Unealta" #: flatcamEditors/FlatCAMGeoEditor.py:432 flatcamGUI/FlatCAMGUI.py:4054 -#: flatcamGUI/FlatCAMGUI.py:5618 flatcamGUI/FlatCAMGUI.py:5895 -#: flatcamGUI/FlatCAMGUI.py:6035 flatcamGUI/ObjectUI.py:260 +#: flatcamGUI/FlatCAMGUI.py:5163 flatcamGUI/FlatCAMGUI.py:5597 +#: flatcamGUI/FlatCAMGUI.py:5874 flatcamGUI/FlatCAMGUI.py:6014 +#: flatcamGUI/ObjectUI.py:260 msgid "Tool dia:" msgstr "Dia unealtă:" -#: flatcamEditors/FlatCAMGeoEditor.py:434 flatcamGUI/FlatCAMGUI.py:6037 +#: flatcamEditors/FlatCAMGeoEditor.py:434 flatcamGUI/FlatCAMGUI.py:6016 msgid "" "Diameter of the tool to\n" "be used in the operation." @@ -2223,8 +2224,8 @@ msgstr "" "Diametrul uneltei care este utilizata in operaţie. \n" "Este și lăţimea de tăiere pentru uneltele cilindrice." -#: flatcamEditors/FlatCAMGeoEditor.py:443 flatcamGUI/FlatCAMGUI.py:5801 -#: flatcamGUI/FlatCAMGUI.py:6046 flatcamTools/ToolNonCopperClear.py:165 +#: flatcamEditors/FlatCAMGeoEditor.py:443 flatcamGUI/FlatCAMGUI.py:5780 +#: flatcamGUI/FlatCAMGUI.py:6025 flatcamTools/ToolNonCopperClear.py:165 #: flatcamTools/ToolPaint.py:160 msgid "Overlap Rate:" msgstr "Rata suprapunere:" @@ -2255,14 +2256,14 @@ msgstr "" "Valori mari= procesare lenta cat și o execuţie la fel de lenta a PCB-ului,\n" "datorita numărului mai mare de treceri-tăiere." -#: flatcamEditors/FlatCAMGeoEditor.py:461 flatcamGUI/FlatCAMGUI.py:5817 -#: flatcamGUI/FlatCAMGUI.py:5903 flatcamGUI/FlatCAMGUI.py:6056 +#: flatcamEditors/FlatCAMGeoEditor.py:461 flatcamGUI/FlatCAMGUI.py:5796 +#: flatcamGUI/FlatCAMGUI.py:5882 flatcamGUI/FlatCAMGUI.py:6035 #: flatcamTools/ToolCutOut.py:86 flatcamTools/ToolNonCopperClear.py:181 #: flatcamTools/ToolPaint.py:177 msgid "Margin:" msgstr "Margine:" -#: flatcamEditors/FlatCAMGeoEditor.py:463 flatcamGUI/FlatCAMGUI.py:6058 +#: flatcamEditors/FlatCAMGeoEditor.py:463 flatcamGUI/FlatCAMGUI.py:6037 #: flatcamTools/ToolPaint.py:179 msgid "" "Distance by which to avoid\n" @@ -2273,13 +2274,13 @@ msgstr "" "poligonului care trebuie\n" "să fie >pictat<." -#: flatcamEditors/FlatCAMGeoEditor.py:472 flatcamGUI/FlatCAMGUI.py:5826 -#: flatcamGUI/FlatCAMGUI.py:6067 flatcamTools/ToolNonCopperClear.py:190 +#: flatcamEditors/FlatCAMGeoEditor.py:472 flatcamGUI/FlatCAMGUI.py:5805 +#: flatcamGUI/FlatCAMGUI.py:6046 flatcamTools/ToolNonCopperClear.py:190 #: flatcamTools/ToolPaint.py:188 msgid "Method:" msgstr "Metoda:" -#: flatcamEditors/FlatCAMGeoEditor.py:474 flatcamGUI/FlatCAMGUI.py:6069 +#: flatcamEditors/FlatCAMGeoEditor.py:474 flatcamGUI/FlatCAMGUI.py:6048 msgid "" "Algorithm to paint the polygon:
Standard: Fixed step inwards." "
Seed-based: Outwards from seed." @@ -2287,14 +2288,14 @@ msgstr "" "Algoritm pentru a picta poligonul
Standard: Pas fix spre interior." "
Samanta: Spre exterior pornind de la un punct-samanta." -#: flatcamEditors/FlatCAMGeoEditor.py:487 flatcamGUI/FlatCAMGUI.py:5842 -#: flatcamGUI/FlatCAMGUI.py:6082 flatcamTools/ToolNonCopperClear.py:206 +#: flatcamEditors/FlatCAMGeoEditor.py:487 flatcamGUI/FlatCAMGUI.py:5821 +#: flatcamGUI/FlatCAMGUI.py:6061 flatcamTools/ToolNonCopperClear.py:206 #: flatcamTools/ToolPaint.py:204 msgid "Connect:" msgstr "Conectează:" -#: flatcamEditors/FlatCAMGeoEditor.py:489 flatcamGUI/FlatCAMGUI.py:5844 -#: flatcamGUI/FlatCAMGUI.py:6084 flatcamTools/ToolNonCopperClear.py:208 +#: flatcamEditors/FlatCAMGeoEditor.py:489 flatcamGUI/FlatCAMGUI.py:5823 +#: flatcamGUI/FlatCAMGUI.py:6063 flatcamTools/ToolNonCopperClear.py:208 #: flatcamTools/ToolPaint.py:206 msgid "" "Draw lines between resulting\n" @@ -2304,14 +2305,14 @@ msgstr "" "rezultate pentru a minimiza miscarile\n" "de ridicare a uneltei." -#: flatcamEditors/FlatCAMGeoEditor.py:496 flatcamGUI/FlatCAMGUI.py:5851 -#: flatcamGUI/FlatCAMGUI.py:6092 flatcamTools/ToolNonCopperClear.py:215 +#: flatcamEditors/FlatCAMGeoEditor.py:496 flatcamGUI/FlatCAMGUI.py:5830 +#: flatcamGUI/FlatCAMGUI.py:6071 flatcamTools/ToolNonCopperClear.py:215 #: flatcamTools/ToolPaint.py:213 msgid "Contour:" msgstr "Contur:" -#: flatcamEditors/FlatCAMGeoEditor.py:498 flatcamGUI/FlatCAMGUI.py:5853 -#: flatcamGUI/FlatCAMGUI.py:6094 flatcamTools/ToolNonCopperClear.py:217 +#: flatcamEditors/FlatCAMGeoEditor.py:498 flatcamGUI/FlatCAMGUI.py:5832 +#: flatcamGUI/FlatCAMGUI.py:6073 flatcamTools/ToolNonCopperClear.py:217 #: flatcamTools/ToolPaint.py:215 msgid "" "Cut around the perimeter of the polygon\n" @@ -2528,7 +2529,7 @@ msgid "Scale Y" msgstr "Scalează Y" #: flatcamEditors/FlatCAMGeoEditor.py:797 -#: flatcamEditors/FlatCAMGrbEditor.py:4720 flatcamGUI/FlatCAMGUI.py:6441 +#: flatcamEditors/FlatCAMGrbEditor.py:4720 flatcamGUI/FlatCAMGUI.py:6420 #: flatcamTools/ToolTransform.py:200 msgid "Link" msgstr "Legatura" @@ -2543,7 +2544,7 @@ msgstr "" "folsoind factorul: Factor X pentru ambele axe." #: flatcamEditors/FlatCAMGeoEditor.py:805 -#: flatcamEditors/FlatCAMGrbEditor.py:4728 flatcamGUI/FlatCAMGUI.py:6449 +#: flatcamEditors/FlatCAMGrbEditor.py:4728 flatcamGUI/FlatCAMGUI.py:6428 #: flatcamTools/ToolTransform.py:208 msgid "Scale Reference" msgstr "Referința scalare" @@ -3139,7 +3140,7 @@ msgstr "Crează o geometrie Paint ..." msgid "Shape transformations ..." msgstr "Transformări de forme geometrice ..." -#: flatcamEditors/FlatCAMGeoEditor.py:3416 +#: flatcamEditors/FlatCAMGeoEditor.py:3419 #, python-brace-format msgid "" "[WARNING_NOTCL] Editing MultiGeo Geometry, tool: {tool} with diameter: {dia}" @@ -3147,20 +3148,20 @@ msgstr "" "[WARNING_NOTCL] Se editeaza un obiect tip Geometrie MultiGeo , unealta: " "{tool} cu diametrul: {dia}" -#: flatcamEditors/FlatCAMGeoEditor.py:3793 +#: flatcamEditors/FlatCAMGeoEditor.py:3796 msgid "[WARNING_NOTCL] Copy cancelled. No shape selected." msgstr "" "[WARNING_NOTCL] Copiere anulată. Nici-o forma geometrică nu este selectată." -#: flatcamEditors/FlatCAMGeoEditor.py:3800 flatcamGUI/FlatCAMGUI.py:2727 +#: flatcamEditors/FlatCAMGeoEditor.py:3803 flatcamGUI/FlatCAMGUI.py:2727 #: flatcamGUI/FlatCAMGUI.py:2773 flatcamGUI/FlatCAMGUI.py:2791 #: flatcamGUI/FlatCAMGUI.py:2922 flatcamGUI/FlatCAMGUI.py:2934 #: flatcamGUI/FlatCAMGUI.py:2968 msgid "Click on target point." msgstr "Click pe punctul tinta." -#: flatcamEditors/FlatCAMGeoEditor.py:4044 -#: flatcamEditors/FlatCAMGeoEditor.py:4079 +#: flatcamEditors/FlatCAMGeoEditor.py:4047 +#: flatcamEditors/FlatCAMGeoEditor.py:4082 msgid "" "[WARNING_NOTCL] A selection of at least 2 geo items is required to do " "Intersection." @@ -3168,9 +3169,9 @@ msgstr "" "[WARNING_NOTCL] Cel puțin o selecţie de doua forme geometrice este necesară " "pentru a face o Intersecţie." -#: flatcamEditors/FlatCAMGeoEditor.py:4163 -#: flatcamEditors/FlatCAMGeoEditor.py:4201 -#: flatcamEditors/FlatCAMGeoEditor.py:4277 +#: flatcamEditors/FlatCAMGeoEditor.py:4166 +#: flatcamEditors/FlatCAMGeoEditor.py:4204 +#: flatcamEditors/FlatCAMGeoEditor.py:4280 msgid "" "[ERROR_NOTCL] Negative buffer value is not accepted. Use Buffer interior to " "generate an 'inside' shape" @@ -3178,57 +3179,57 @@ msgstr "" "[ERROR_NOTCL] O valoare de bufer negativă nu se acceptă. Folosete Bufer " "Interior pentru a genera o forma geo. interioara." -#: flatcamEditors/FlatCAMGeoEditor.py:4172 -#: flatcamEditors/FlatCAMGeoEditor.py:4210 -#: flatcamEditors/FlatCAMGeoEditor.py:4285 +#: flatcamEditors/FlatCAMGeoEditor.py:4175 +#: flatcamEditors/FlatCAMGeoEditor.py:4213 +#: flatcamEditors/FlatCAMGeoEditor.py:4288 msgid "[WARNING_NOTCL] Nothing selected for buffering." msgstr "" "[WARNING_NOTCL] Nici-o forma geometrică nu este selectată pentru a face " "Bufer." -#: flatcamEditors/FlatCAMGeoEditor.py:4176 -#: flatcamEditors/FlatCAMGeoEditor.py:4214 -#: flatcamEditors/FlatCAMGeoEditor.py:4289 +#: flatcamEditors/FlatCAMGeoEditor.py:4179 +#: flatcamEditors/FlatCAMGeoEditor.py:4217 +#: flatcamEditors/FlatCAMGeoEditor.py:4292 msgid "[WARNING_NOTCL] Invalid distance for buffering." msgstr "[WARNING_NOTCL] Distanta invalida pentru a face Bufer." -#: flatcamEditors/FlatCAMGeoEditor.py:4186 -#: flatcamEditors/FlatCAMGeoEditor.py:4298 +#: flatcamEditors/FlatCAMGeoEditor.py:4189 +#: flatcamEditors/FlatCAMGeoEditor.py:4301 msgid "" "[ERROR_NOTCL] Failed, the result is empty. Choose a different buffer value." msgstr "" "[ERROR_NOTCL] Eșuat, rezultatul este gol. Foloseşte o valoare diferita " "pentru Bufer." -#: flatcamEditors/FlatCAMGeoEditor.py:4194 +#: flatcamEditors/FlatCAMGeoEditor.py:4197 msgid "[success] Full buffer geometry created." msgstr "[success] Geometrie tip Bufer Complet creată." -#: flatcamEditors/FlatCAMGeoEditor.py:4224 +#: flatcamEditors/FlatCAMGeoEditor.py:4227 msgid "" "[ERROR_NOTCL] Failed, the result is empty. Choose a smaller buffer value." msgstr "" "[ERROR_NOTCL] Eșuat, rezultatul este gol. Foloseşte of valoare mai mica pt. " "Bufer." -#: flatcamEditors/FlatCAMGeoEditor.py:4239 +#: flatcamEditors/FlatCAMGeoEditor.py:4242 msgid "[success] Interior buffer geometry created." msgstr "[success] Geometrie Bufer interior creată." -#: flatcamEditors/FlatCAMGeoEditor.py:4310 +#: flatcamEditors/FlatCAMGeoEditor.py:4313 msgid "[success] Exterior buffer geometry created." msgstr "[success] Geometrie Bufer Exterior creată." -#: flatcamEditors/FlatCAMGeoEditor.py:4374 +#: flatcamEditors/FlatCAMGeoEditor.py:4377 msgid "[WARNING_NOTCL] Nothing selected for painting." msgstr "" "[WARNING_NOTCL] Nici-o forma geometrică nu este selectată pentru Paint." -#: flatcamEditors/FlatCAMGeoEditor.py:4380 +#: flatcamEditors/FlatCAMGeoEditor.py:4383 msgid "[WARNING] Invalid value for {}" msgstr "[WARNING] Valoare invalida pentru {}" -#: flatcamEditors/FlatCAMGeoEditor.py:4386 +#: flatcamEditors/FlatCAMGeoEditor.py:4389 msgid "" "[ERROR_NOTCL] Could not do Paint. Overlap value has to be less than 1.00 " "(100%)." @@ -3236,7 +3237,7 @@ msgstr "" "[ERROR_NOTCL] Nu se poate face Paint. Valoarea de suprapunere trebuie să fie " "mai puțin de 1.00 (100%)." -#: flatcamEditors/FlatCAMGeoEditor.py:4445 +#: flatcamEditors/FlatCAMGeoEditor.py:4448 #, python-format msgid "" "[ERROR] Could not do Paint. Try a different combination of parameters. Or a " @@ -3247,7 +3248,7 @@ msgstr "" "Or o metoda diferita de Paint\n" "%s" -#: flatcamEditors/FlatCAMGeoEditor.py:4456 +#: flatcamEditors/FlatCAMGeoEditor.py:4459 msgid "[success] Paint done." msgstr "[success] Paint executat." @@ -3705,7 +3706,6 @@ msgstr "" #: flatcamEditors/FlatCAMGrbEditor.py:4444 #, python-format -#| msgid "[ERROR_NOTCL] Failed to open %s" msgid "" "[ERROR_NOTCL] Failed.\n" "%s" @@ -6646,7 +6646,7 @@ msgid "Gerber General" msgstr "Gerber General" #: flatcamGUI/FlatCAMGUI.py:3995 flatcamGUI/FlatCAMGUI.py:4361 -#: flatcamGUI/FlatCAMGUI.py:5153 flatcamGUI/FlatCAMGUI.py:5525 +#: flatcamGUI/FlatCAMGUI.py:5135 flatcamGUI/FlatCAMGUI.py:5504 #: flatcamGUI/ObjectUI.py:150 flatcamGUI/ObjectUI.py:505 #: flatcamGUI/ObjectUI.py:833 flatcamGUI/ObjectUI.py:1350 msgid "Plot Options:" @@ -6672,18 +6672,18 @@ msgstr "" "alese in mod aleator." #: flatcamGUI/FlatCAMGUI.py:4016 flatcamGUI/FlatCAMGUI.py:4367 -#: flatcamGUI/FlatCAMGUI.py:5157 flatcamGUI/ObjectUI.py:172 +#: flatcamGUI/FlatCAMGUI.py:5139 flatcamGUI/ObjectUI.py:172 msgid "Plot" msgstr "Afisează" -#: flatcamGUI/FlatCAMGUI.py:4018 flatcamGUI/FlatCAMGUI.py:5159 +#: flatcamGUI/FlatCAMGUI.py:4018 flatcamGUI/FlatCAMGUI.py:5141 #: flatcamGUI/ObjectUI.py:174 flatcamGUI/ObjectUI.py:546 #: flatcamGUI/ObjectUI.py:879 flatcamGUI/ObjectUI.py:1450 msgid "Plot (show) this object." msgstr "Afisează (arata) acest obiect." -#: flatcamGUI/FlatCAMGUI.py:4023 flatcamGUI/FlatCAMGUI.py:5166 -#: flatcamGUI/FlatCAMGUI.py:5608 +#: flatcamGUI/FlatCAMGUI.py:4023 flatcamGUI/FlatCAMGUI.py:5149 +#: flatcamGUI/FlatCAMGUI.py:5587 msgid "Circle Steps:" msgstr "Aprox. Cerc" @@ -6712,8 +6712,8 @@ msgstr "" "care să fie taiate in afara poligoanelor,\n" "urmărindu-le conturul." -#: flatcamGUI/FlatCAMGUI.py:4056 flatcamGUI/FlatCAMGUI.py:4753 -#: flatcamGUI/FlatCAMGUI.py:5897 flatcamGUI/ObjectUI.py:788 +#: flatcamGUI/FlatCAMGUI.py:4056 flatcamGUI/FlatCAMGUI.py:4735 +#: flatcamGUI/FlatCAMGUI.py:5876 flatcamGUI/ObjectUI.py:788 #: flatcamGUI/ObjectUI.py:804 msgid "Diameter of the cutting tool." msgstr "Diametrul uneltei taietoare." @@ -6775,7 +6775,7 @@ msgstr "Combina toate trecerile intr-un singur obiect" msgid "Clear non-copper:" msgstr "Curăță non-Cu:" -#: flatcamGUI/FlatCAMGUI.py:4104 flatcamGUI/FlatCAMGUI.py:5785 +#: flatcamGUI/FlatCAMGUI.py:4104 flatcamGUI/FlatCAMGUI.py:5764 #: flatcamGUI/ObjectUI.py:386 msgid "" "Create a Geometry object with\n" @@ -6886,7 +6886,7 @@ msgstr "" msgid "Gerber Export" msgstr "Export Gerber" -#: flatcamGUI/FlatCAMGUI.py:4232 flatcamGUI/FlatCAMGUI.py:4902 +#: flatcamGUI/FlatCAMGUI.py:4232 flatcamGUI/FlatCAMGUI.py:4884 msgid "Export Options:" msgstr "Opțiuni Export::" @@ -6899,7 +6899,7 @@ msgstr "" "se exporta un fişier Gerber folosind:\n" "File -> Exportă -> Exportă Gerber" -#: flatcamGUI/FlatCAMGUI.py:4243 flatcamGUI/FlatCAMGUI.py:4913 +#: flatcamGUI/FlatCAMGUI.py:4243 flatcamGUI/FlatCAMGUI.py:4895 msgid "Units:" msgstr "Unitati:" @@ -6907,7 +6907,7 @@ msgstr "Unitati:" msgid "The units used in the Gerber file." msgstr "Unitătile de măsură folosite in fişierul Gerber." -#: flatcamGUI/FlatCAMGUI.py:4257 flatcamGUI/FlatCAMGUI.py:4927 +#: flatcamGUI/FlatCAMGUI.py:4257 flatcamGUI/FlatCAMGUI.py:4909 msgid "Int/Decimals:" msgstr "Int/Zecimale:" @@ -6935,7 +6935,7 @@ msgstr "" "Acest număr reprezinta numărul de digiti din partea\n" "zecimală a coordonatelor Gerber." -#: flatcamGUI/FlatCAMGUI.py:4293 flatcamGUI/FlatCAMGUI.py:4988 +#: flatcamGUI/FlatCAMGUI.py:4293 flatcamGUI/FlatCAMGUI.py:4970 msgid "Zeros:" msgstr "Zero-uri:" @@ -6955,12 +6955,12 @@ msgstr "" "cele de la final sunt păstrate.\n" "(Invers fată de fişierele Excellon)." -#: flatcamGUI/FlatCAMGUI.py:4326 flatcamGUI/FlatCAMGUI.py:5029 -#: flatcamGUI/FlatCAMGUI.py:5491 flatcamGUI/FlatCAMGUI.py:5783 -#: flatcamGUI/FlatCAMGUI.py:5884 flatcamGUI/FlatCAMGUI.py:5963 -#: flatcamGUI/FlatCAMGUI.py:6022 flatcamGUI/FlatCAMGUI.py:6125 -#: flatcamGUI/FlatCAMGUI.py:6186 flatcamGUI/FlatCAMGUI.py:6385 -#: flatcamGUI/FlatCAMGUI.py:6512 +#: flatcamGUI/FlatCAMGUI.py:4326 flatcamGUI/FlatCAMGUI.py:5011 +#: flatcamGUI/FlatCAMGUI.py:5470 flatcamGUI/FlatCAMGUI.py:5762 +#: flatcamGUI/FlatCAMGUI.py:5863 flatcamGUI/FlatCAMGUI.py:5942 +#: flatcamGUI/FlatCAMGUI.py:6001 flatcamGUI/FlatCAMGUI.py:6104 +#: flatcamGUI/FlatCAMGUI.py:6165 flatcamGUI/FlatCAMGUI.py:6364 +#: flatcamGUI/FlatCAMGUI.py:6491 msgid "Parameters:" msgstr "Parametri:" @@ -6968,8 +6968,8 @@ msgstr "Parametri:" msgid "A list of Gerber Editor parameters." msgstr "O listă de parametri ai Editorului Gerber." -#: flatcamGUI/FlatCAMGUI.py:4336 flatcamGUI/FlatCAMGUI.py:5039 -#: flatcamGUI/FlatCAMGUI.py:5501 +#: flatcamGUI/FlatCAMGUI.py:4336 flatcamGUI/FlatCAMGUI.py:5021 +#: flatcamGUI/FlatCAMGUI.py:5480 msgid "Selection limit:" msgstr "Limita selecţie:" @@ -7051,7 +7051,7 @@ msgstr "" "adica 2 parti intregi și 4 zecimale." #: flatcamGUI/FlatCAMGUI.py:4418 flatcamGUI/FlatCAMGUI.py:4451 -#: flatcamGUI/FlatCAMGUI.py:4942 +#: flatcamGUI/FlatCAMGUI.py:4924 msgid "" "This numbers signify the number of digits in\n" "the whole part of Excellon coordinates." @@ -7060,7 +7060,7 @@ msgstr "" "intreaga a coordonatelor Excellon." #: flatcamGUI/FlatCAMGUI.py:4432 flatcamGUI/FlatCAMGUI.py:4465 -#: flatcamGUI/FlatCAMGUI.py:4956 +#: flatcamGUI/FlatCAMGUI.py:4938 msgid "" "This numbers signify the number of digits in\n" "the decimal part of Excellon coordinates." @@ -7082,7 +7082,7 @@ msgstr "" msgid "Default Zeros:" msgstr "Suprimare Zero:" -#: flatcamGUI/FlatCAMGUI.py:4477 flatcamGUI/FlatCAMGUI.py:4991 +#: flatcamGUI/FlatCAMGUI.py:4477 flatcamGUI/FlatCAMGUI.py:4973 msgid "" "This sets the type of Excellon zeros.\n" "If LZ then Leading Zeros are kept and\n" @@ -7117,11 +7117,11 @@ msgstr "" "cele de la final sunt pastrate.\n" "(Invers fata de fişierele Gerber)." -#: flatcamGUI/FlatCAMGUI.py:4502 +#: flatcamGUI/FlatCAMGUI.py:4498 msgid "Default Units:" msgstr "Unitati Excellon:" -#: flatcamGUI/FlatCAMGUI.py:4505 +#: flatcamGUI/FlatCAMGUI.py:4501 msgid "" "This sets the default units of Excellon files.\n" "If it is not detected in the parsed file the value here\n" @@ -7135,7 +7135,7 @@ msgstr "" "(unde se gasesc unitatile) și atunci se va folosi\n" "aceasta valoare." -#: flatcamGUI/FlatCAMGUI.py:4516 +#: flatcamGUI/FlatCAMGUI.py:4512 msgid "" "This sets the units of Excellon files.\n" "Some Excellon files don't have an header\n" @@ -7148,15 +7148,15 @@ msgstr "" "(unde se gasesc unitatile) și atunci se va folosi\n" "aceasta valoare." -#: flatcamGUI/FlatCAMGUI.py:4532 +#: flatcamGUI/FlatCAMGUI.py:4520 msgid "Excellon Optimization:" msgstr "Optimizarea traseului Excellon:" -#: flatcamGUI/FlatCAMGUI.py:4539 +#: flatcamGUI/FlatCAMGUI.py:4523 msgid "Algorithm: " msgstr "Algoritm:" -#: flatcamGUI/FlatCAMGUI.py:4542 flatcamGUI/FlatCAMGUI.py:4555 +#: flatcamGUI/FlatCAMGUI.py:4525 flatcamGUI/FlatCAMGUI.py:4539 msgid "" "This sets the optimization type for the Excellon drill path.\n" "If MH is checked then Google OR-Tools algorithm with MetaHeuristic\n" @@ -7180,11 +7180,11 @@ msgstr "" "care nu este compatibila cu pachetul OR Tools și in acest caz se foloseşte\n" "algoritmul default: Travelling Salesman (vanzatorul ambulant)." -#: flatcamGUI/FlatCAMGUI.py:4567 +#: flatcamGUI/FlatCAMGUI.py:4550 msgid "Optimization Time: " msgstr "Durata optimiz.:" -#: flatcamGUI/FlatCAMGUI.py:4570 +#: flatcamGUI/FlatCAMGUI.py:4553 msgid "" "When OR-Tools Metaheuristic (MH) is enabled there is a\n" "maximum threshold for how much time is spent doing the\n" @@ -7195,15 +7195,15 @@ msgstr "" "reprezinta cat timp se sta pentru fiecare element in\n" "incercarea de a afla calea optima." -#: flatcamGUI/FlatCAMGUI.py:4612 +#: flatcamGUI/FlatCAMGUI.py:4596 msgid "Excellon Options" msgstr "Opțiuni Excellon" -#: flatcamGUI/FlatCAMGUI.py:4615 flatcamGUI/ObjectUI.py:584 +#: flatcamGUI/FlatCAMGUI.py:4599 flatcamGUI/ObjectUI.py:584 msgid "Create CNC Job" msgstr "Crează CNCJob" -#: flatcamGUI/FlatCAMGUI.py:4617 +#: flatcamGUI/FlatCAMGUI.py:4601 msgid "" "Parameters used to create a CNC Job object\n" "for this drill object." @@ -7211,13 +7211,13 @@ msgstr "" "Parametrii folositi pentru a crea un obiect FlatCAM tip CNCJob\n" "din acest obiect Excellon." -#: flatcamGUI/FlatCAMGUI.py:4625 flatcamGUI/FlatCAMGUI.py:5217 -#: flatcamGUI/FlatCAMGUI.py:6321 flatcamGUI/ObjectUI.py:595 +#: flatcamGUI/FlatCAMGUI.py:4609 flatcamGUI/FlatCAMGUI.py:5196 +#: flatcamGUI/FlatCAMGUI.py:6300 flatcamGUI/ObjectUI.py:595 #: flatcamGUI/ObjectUI.py:1062 flatcamTools/ToolCalculators.py:108 msgid "Cut Z:" msgstr "Z tăiere:" -#: flatcamGUI/FlatCAMGUI.py:4627 flatcamGUI/ObjectUI.py:597 +#: flatcamGUI/FlatCAMGUI.py:4611 flatcamGUI/ObjectUI.py:597 msgid "" "Drill depth (negative)\n" "below the copper surface." @@ -7226,12 +7226,12 @@ msgstr "" "Daca se foloseşte o val. pozitivă, aplicaţia\n" "va incerca in mod automat să schimbe semnul." -#: flatcamGUI/FlatCAMGUI.py:4634 flatcamGUI/FlatCAMGUI.py:5250 +#: flatcamGUI/FlatCAMGUI.py:4618 flatcamGUI/FlatCAMGUI.py:5229 #: flatcamGUI/ObjectUI.py:605 flatcamGUI/ObjectUI.py:1098 msgid "Travel Z:" msgstr "Z Deplasare:" -#: flatcamGUI/FlatCAMGUI.py:4636 flatcamGUI/ObjectUI.py:607 +#: flatcamGUI/FlatCAMGUI.py:4620 flatcamGUI/ObjectUI.py:607 msgid "" "Tool height when travelling\n" "across the XY plane." @@ -7240,11 +7240,11 @@ msgstr "" "in planul X-Y, fără a efectua taieri, adica\n" "in afara materialului." -#: flatcamGUI/FlatCAMGUI.py:4644 flatcamGUI/FlatCAMGUI.py:5260 +#: flatcamGUI/FlatCAMGUI.py:4628 flatcamGUI/FlatCAMGUI.py:5239 msgid "Tool change:" msgstr "Schimbare unealtă:" -#: flatcamGUI/FlatCAMGUI.py:4646 flatcamGUI/FlatCAMGUI.py:5262 +#: flatcamGUI/FlatCAMGUI.py:4630 flatcamGUI/FlatCAMGUI.py:5241 #: flatcamGUI/ObjectUI.py:617 msgid "" "Include tool-change sequence\n" @@ -7254,11 +7254,11 @@ msgstr "" "in codul G-Code (pauza pentru schimbare unealtă).\n" "De obicei este folosita comanda G-Code M6." -#: flatcamGUI/FlatCAMGUI.py:4653 flatcamGUI/FlatCAMGUI.py:5270 +#: flatcamGUI/FlatCAMGUI.py:4637 flatcamGUI/FlatCAMGUI.py:5249 msgid "Toolchange Z:" msgstr "Z schimb. unealtă:" -#: flatcamGUI/FlatCAMGUI.py:4655 flatcamGUI/FlatCAMGUI.py:5272 +#: flatcamGUI/FlatCAMGUI.py:4639 flatcamGUI/FlatCAMGUI.py:5251 msgid "Toolchange Z position." msgstr "" "Înălţimea la care se efectuează schimbarea uneltei.\n" @@ -7266,11 +7266,11 @@ msgstr "" "'toolchanger' automat sau acolo unde utilizatorul\n" "schimba unealtă manual." -#: flatcamGUI/FlatCAMGUI.py:4661 +#: flatcamGUI/FlatCAMGUI.py:4645 msgid "Feedrate:" msgstr "Feedrate:" -#: flatcamGUI/FlatCAMGUI.py:4663 +#: flatcamGUI/FlatCAMGUI.py:4647 msgid "" "Tool speed while drilling\n" "(in units per minute)." @@ -7278,11 +7278,11 @@ msgstr "" "Viteza cu care se misca unealtă (burghiul) când se fac\n" "operațiuni de găurire. In unitati pe minut." -#: flatcamGUI/FlatCAMGUI.py:4671 +#: flatcamGUI/FlatCAMGUI.py:4655 msgid "Spindle Speed:" msgstr "Viteza Motor:" -#: flatcamGUI/FlatCAMGUI.py:4673 flatcamGUI/FlatCAMGUI.py:5302 +#: flatcamGUI/FlatCAMGUI.py:4657 flatcamGUI/FlatCAMGUI.py:5281 #: flatcamGUI/ObjectUI.py:684 msgid "" "Speed of the spindle\n" @@ -7293,11 +7293,11 @@ msgstr "" "Acest parametru este optional și se poate lasa gol\n" "daca nu se foloseşte." -#: flatcamGUI/FlatCAMGUI.py:4681 flatcamGUI/FlatCAMGUI.py:5310 +#: flatcamGUI/FlatCAMGUI.py:4665 flatcamGUI/FlatCAMGUI.py:5289 msgid "Spindle dir.:" msgstr "Directie Motor:" -#: flatcamGUI/FlatCAMGUI.py:4683 flatcamGUI/FlatCAMGUI.py:5312 +#: flatcamGUI/FlatCAMGUI.py:4667 flatcamGUI/FlatCAMGUI.py:5291 msgid "" "This sets the direction that the spindle is rotating.\n" "It can be either:\n" @@ -7309,12 +7309,12 @@ msgstr "" "- CW = in sensul acelor de ceasornic\n" "- CCW = in sensul invers acelor de ceasornic" -#: flatcamGUI/FlatCAMGUI.py:4695 flatcamGUI/FlatCAMGUI.py:5324 +#: flatcamGUI/FlatCAMGUI.py:4679 flatcamGUI/FlatCAMGUI.py:5303 #: flatcamGUI/ObjectUI.py:692 flatcamGUI/ObjectUI.py:1224 msgid "Dwell:" msgstr "Pauza:" -#: flatcamGUI/FlatCAMGUI.py:4697 flatcamGUI/FlatCAMGUI.py:5326 +#: flatcamGUI/FlatCAMGUI.py:4681 flatcamGUI/FlatCAMGUI.py:5305 #: flatcamGUI/ObjectUI.py:694 flatcamGUI/ObjectUI.py:1227 msgid "" "Pause to allow the spindle to reach its\n" @@ -7323,21 +7323,21 @@ msgstr "" "O pauza care permite motorului să ajunga la turatia specificata,\n" "inainte de a incepe mișcarea spre poziţia de tăiere (găurire)." -#: flatcamGUI/FlatCAMGUI.py:4700 flatcamGUI/FlatCAMGUI.py:5329 +#: flatcamGUI/FlatCAMGUI.py:4684 flatcamGUI/FlatCAMGUI.py:5308 msgid "Duration:" msgstr "Durata:" -#: flatcamGUI/FlatCAMGUI.py:4702 flatcamGUI/FlatCAMGUI.py:5331 +#: flatcamGUI/FlatCAMGUI.py:4686 flatcamGUI/FlatCAMGUI.py:5310 #: flatcamGUI/ObjectUI.py:699 flatcamGUI/ObjectUI.py:1234 msgid "Number of milliseconds for spindle to dwell." msgstr "Timpul (ori secunde ori milisec) cat se sta in pauza." -#: flatcamGUI/FlatCAMGUI.py:4714 flatcamGUI/FlatCAMGUI.py:5341 +#: flatcamGUI/FlatCAMGUI.py:4698 flatcamGUI/FlatCAMGUI.py:5320 #: flatcamGUI/ObjectUI.py:707 msgid "Postprocessor:" msgstr "Postprocesor:" -#: flatcamGUI/FlatCAMGUI.py:4716 +#: flatcamGUI/FlatCAMGUI.py:4700 msgid "" "The postprocessor file that dictates\n" "gcode output." @@ -7346,11 +7346,11 @@ msgstr "" "respecte un anumit format care să fie ințeles de diverse\n" "utilaje. Este responsabil de 'personalizarea' G-Code." -#: flatcamGUI/FlatCAMGUI.py:4725 +#: flatcamGUI/FlatCAMGUI.py:4709 msgid "Gcode: " msgstr "G-Code:" -#: flatcamGUI/FlatCAMGUI.py:4727 +#: flatcamGUI/FlatCAMGUI.py:4711 msgid "" "Choose what to use for GCode generation:\n" "'Drills', 'Slots' or 'Both'.\n" @@ -7364,41 +7364,41 @@ msgstr "" "Când se alege Sloturi sau Ambele, sloturile vor fi convertite in serii de " "găuri." -#: flatcamGUI/FlatCAMGUI.py:4743 flatcamGUI/ObjectUI.py:772 +#: flatcamGUI/FlatCAMGUI.py:4727 flatcamGUI/ObjectUI.py:772 msgid "Mill Holes" msgstr "Frezare găuri" -#: flatcamGUI/FlatCAMGUI.py:4745 flatcamGUI/ObjectUI.py:774 +#: flatcamGUI/FlatCAMGUI.py:4729 flatcamGUI/ObjectUI.py:774 msgid "Create Geometry for milling holes." msgstr "Crează un obiect tip Geometrie pentru frezarea găurilor." -#: flatcamGUI/FlatCAMGUI.py:4751 +#: flatcamGUI/FlatCAMGUI.py:4733 msgid "Drill Tool dia:" msgstr "Dia. Burghiu Găurire:" -#: flatcamGUI/FlatCAMGUI.py:4758 +#: flatcamGUI/FlatCAMGUI.py:4740 msgid "Slot Tool dia:" msgstr "Dia. Freza Slot:" -#: flatcamGUI/FlatCAMGUI.py:4760 +#: flatcamGUI/FlatCAMGUI.py:4742 msgid "" "Diameter of the cutting tool\n" "when milling slots." msgstr "Diametrul frezei când se frezează sloturile." -#: flatcamGUI/FlatCAMGUI.py:4772 +#: flatcamGUI/FlatCAMGUI.py:4754 msgid "Defaults" msgstr "Val. Implicite" -#: flatcamGUI/FlatCAMGUI.py:4785 +#: flatcamGUI/FlatCAMGUI.py:4767 msgid "Excellon Adv. Options" msgstr "Opțiuni Avans. Excellon" -#: flatcamGUI/FlatCAMGUI.py:4791 flatcamGUI/FlatCAMGUI.py:5364 +#: flatcamGUI/FlatCAMGUI.py:4773 flatcamGUI/FlatCAMGUI.py:5343 msgid "Advanced Options:" msgstr "Opțiuni avansate:" -#: flatcamGUI/FlatCAMGUI.py:4793 +#: flatcamGUI/FlatCAMGUI.py:4775 msgid "" "Parameters used to create a CNC Job object\n" "for this drill object that are shown when App Level is Advanced." @@ -7407,11 +7407,11 @@ msgstr "" "pt acest obiect Excellon, parametri care sunt disponibili\n" "doar in modul Avansat al aplicaţiei." -#: flatcamGUI/FlatCAMGUI.py:4801 +#: flatcamGUI/FlatCAMGUI.py:4783 msgid "Offset Z:" msgstr "Z ofset:" -#: flatcamGUI/FlatCAMGUI.py:4803 flatcamGUI/ObjectUI.py:574 +#: flatcamGUI/FlatCAMGUI.py:4785 flatcamGUI/ObjectUI.py:574 msgid "" "Some drill bits (the larger ones) need to drill deeper\n" "to create the desired exit hole diameter due of the tip shape.\n" @@ -7424,20 +7424,20 @@ msgstr "" "Valoarea de aici efectuează o compensare asupra\n" "parametrului >Z tăiere<." -#: flatcamGUI/FlatCAMGUI.py:4810 flatcamGUI/FlatCAMGUI.py:5375 +#: flatcamGUI/FlatCAMGUI.py:4792 flatcamGUI/FlatCAMGUI.py:5354 msgid "Toolchange X,Y:" msgstr "X,Y schimb. unealtă:" -#: flatcamGUI/FlatCAMGUI.py:4812 flatcamGUI/FlatCAMGUI.py:5377 +#: flatcamGUI/FlatCAMGUI.py:4794 flatcamGUI/FlatCAMGUI.py:5356 msgid "Toolchange X,Y position." msgstr "Poziţia X,Y in format (x,y) unde se face schimbarea uneltei." -#: flatcamGUI/FlatCAMGUI.py:4818 flatcamGUI/FlatCAMGUI.py:5384 +#: flatcamGUI/FlatCAMGUI.py:4800 flatcamGUI/FlatCAMGUI.py:5363 #: flatcamGUI/ObjectUI.py:634 msgid "Start move Z:" msgstr "Z pornire:" -#: flatcamGUI/FlatCAMGUI.py:4820 +#: flatcamGUI/FlatCAMGUI.py:4802 msgid "" "Height of the tool just after start.\n" "Delete the value if you don't need this feature." @@ -7445,23 +7445,23 @@ msgstr "" "Înălţimea uneltei imediat dupa ce se porneste operatia CNC.\n" "Lasa casuta goala daca nu se foloseşte." -#: flatcamGUI/FlatCAMGUI.py:4827 flatcamGUI/FlatCAMGUI.py:5394 +#: flatcamGUI/FlatCAMGUI.py:4809 flatcamGUI/FlatCAMGUI.py:5373 #: flatcamGUI/ObjectUI.py:644 flatcamGUI/ObjectUI.py:1144 msgid "End move Z:" msgstr "Z oprire:" -#: flatcamGUI/FlatCAMGUI.py:4829 flatcamGUI/FlatCAMGUI.py:5396 +#: flatcamGUI/FlatCAMGUI.py:4811 flatcamGUI/FlatCAMGUI.py:5375 msgid "" "Height of the tool after\n" "the last move at the end of the job." msgstr "Înălţimea la care se parchează freza dupa ce se termina lucrul." -#: flatcamGUI/FlatCAMGUI.py:4836 flatcamGUI/FlatCAMGUI.py:5404 +#: flatcamGUI/FlatCAMGUI.py:4818 flatcamGUI/FlatCAMGUI.py:5383 #: flatcamGUI/ObjectUI.py:665 msgid "Feedrate Rapids:" msgstr "Feedrate rapizi:" -#: flatcamGUI/FlatCAMGUI.py:4838 flatcamGUI/ObjectUI.py:667 +#: flatcamGUI/FlatCAMGUI.py:4820 flatcamGUI/ObjectUI.py:667 msgid "" "Tool speed while drilling\n" "(in units per minute).\n" @@ -7474,12 +7474,12 @@ msgstr "" "printerul 3D Marlin, implicit când se foloseşte fişierul\n" "postprocesor: Marlin. Ignora aceasta parametru in rest." -#: flatcamGUI/FlatCAMGUI.py:4849 flatcamGUI/FlatCAMGUI.py:5428 +#: flatcamGUI/FlatCAMGUI.py:4831 flatcamGUI/FlatCAMGUI.py:5407 #: flatcamGUI/ObjectUI.py:718 flatcamGUI/ObjectUI.py:1256 msgid "Probe Z depth:" msgstr "Z sonda:" -#: flatcamGUI/FlatCAMGUI.py:4851 flatcamGUI/FlatCAMGUI.py:5430 +#: flatcamGUI/FlatCAMGUI.py:4833 flatcamGUI/FlatCAMGUI.py:5409 #: flatcamGUI/ObjectUI.py:720 flatcamGUI/ObjectUI.py:1259 msgid "" "The maximum depth that the probe is allowed\n" @@ -7488,21 +7488,21 @@ msgstr "" "Adâncimea maxima la care este permis sondei să coboare.\n" "Are o valoare negativă, in unitatile curente." -#: flatcamGUI/FlatCAMGUI.py:4859 flatcamGUI/FlatCAMGUI.py:5438 +#: flatcamGUI/FlatCAMGUI.py:4841 flatcamGUI/FlatCAMGUI.py:5417 #: flatcamGUI/ObjectUI.py:730 flatcamGUI/ObjectUI.py:1270 msgid "Feedrate Probe:" msgstr "Feedrate sonda:" -#: flatcamGUI/FlatCAMGUI.py:4861 flatcamGUI/FlatCAMGUI.py:5440 +#: flatcamGUI/FlatCAMGUI.py:4843 flatcamGUI/FlatCAMGUI.py:5419 #: flatcamGUI/ObjectUI.py:732 flatcamGUI/ObjectUI.py:1273 msgid "The feedrate used while the probe is probing." msgstr "Viteza sondei când aceasta coboara." -#: flatcamGUI/FlatCAMGUI.py:4867 flatcamGUI/FlatCAMGUI.py:5447 +#: flatcamGUI/FlatCAMGUI.py:4849 flatcamGUI/FlatCAMGUI.py:5426 msgid "Fast Plunge:" msgstr "Plonjare rapida:" -#: flatcamGUI/FlatCAMGUI.py:4869 flatcamGUI/FlatCAMGUI.py:5449 +#: flatcamGUI/FlatCAMGUI.py:4851 flatcamGUI/FlatCAMGUI.py:5428 msgid "" "By checking this, the vertical move from\n" "Z_Toolchange to Z_move is done with G0,\n" @@ -7519,11 +7519,11 @@ msgstr "" "schimba\n" "unealta. Daca aveti ceva plasat sub unealtă ceva se va strica." -#: flatcamGUI/FlatCAMGUI.py:4878 +#: flatcamGUI/FlatCAMGUI.py:4860 msgid "Fast Retract:" msgstr "Retragere rapida:" -#: flatcamGUI/FlatCAMGUI.py:4880 +#: flatcamGUI/FlatCAMGUI.py:4862 msgid "" "Exit hole strategy.\n" " - When uncheked, while exiting the drilled hole the drill bit\n" @@ -7542,11 +7542,11 @@ msgstr "" "adâncimea\n" "de deplasare cu viteza maxima G0, intr-o singură mișcare." -#: flatcamGUI/FlatCAMGUI.py:4899 +#: flatcamGUI/FlatCAMGUI.py:4881 msgid "Excellon Export" msgstr "Export Excellon" -#: flatcamGUI/FlatCAMGUI.py:4904 +#: flatcamGUI/FlatCAMGUI.py:4886 msgid "" "The parameters set here are used in the file exported\n" "when using the File -> Export -> Export Excellon menu entry." @@ -7555,11 +7555,11 @@ msgstr "" "se exporta un fişier Excellon folosind:\n" "File -> Exporta -> Exporta Excellon" -#: flatcamGUI/FlatCAMGUI.py:4915 flatcamGUI/FlatCAMGUI.py:4921 +#: flatcamGUI/FlatCAMGUI.py:4897 flatcamGUI/FlatCAMGUI.py:4903 msgid "The units used in the Excellon file." msgstr "Unitatile de masura folosite in fişierul Excellon." -#: flatcamGUI/FlatCAMGUI.py:4929 +#: flatcamGUI/FlatCAMGUI.py:4911 msgid "" "The NC drill files, usually named Excellon files\n" "are files that can be found in different formats.\n" @@ -7571,11 +7571,11 @@ msgstr "" "Aici se setează formatul Excellon când nu se utilizează\n" "coordonate cu zecimale." -#: flatcamGUI/FlatCAMGUI.py:4965 +#: flatcamGUI/FlatCAMGUI.py:4947 msgid "Format:" msgstr "Format:" -#: flatcamGUI/FlatCAMGUI.py:4967 flatcamGUI/FlatCAMGUI.py:4977 +#: flatcamGUI/FlatCAMGUI.py:4949 flatcamGUI/FlatCAMGUI.py:4959 msgid "" "Select the kind of coordinates format used.\n" "Coordinates can be saved with decimal point or without.\n" @@ -7594,7 +7594,7 @@ msgstr "" "- LZ = zerourile prefix sunt pastrate și cele sufix eliminate\n" "- TZ = zerourile prefix sunt eliminate și cele sufix pastrate." -#: flatcamGUI/FlatCAMGUI.py:5001 +#: flatcamGUI/FlatCAMGUI.py:4983 msgid "" "This sets the default type of Excellon zeros.\n" "If LZ then Leading Zeros are kept and\n" @@ -7606,11 +7606,11 @@ msgstr "" "- LZ = zerourile prefix sunt pastrate și cele sufix eliminate\n" "- TZ = zerourile prefix sunt eliminate și cele sufix pastrate." -#: flatcamGUI/FlatCAMGUI.py:5031 +#: flatcamGUI/FlatCAMGUI.py:5013 msgid "A list of Excellon Editor parameters." msgstr "O lista de parametri ai Editorului Excellon." -#: flatcamGUI/FlatCAMGUI.py:5041 +#: flatcamGUI/FlatCAMGUI.py:5023 msgid "" "Set the number of selected Excellon geometry\n" "items above which the utility geometry\n" @@ -7624,27 +7624,27 @@ msgstr "" "Creste performanta cand se muta un număr mai mare de \n" "elemente geometrice." -#: flatcamGUI/FlatCAMGUI.py:5053 +#: flatcamGUI/FlatCAMGUI.py:5035 msgid "New Tool Dia:" msgstr "Dia. nou unealtă:" -#: flatcamGUI/FlatCAMGUI.py:5076 +#: flatcamGUI/FlatCAMGUI.py:5058 msgid "Linear Drill Array:" msgstr "Arie de gauri lineara:" -#: flatcamGUI/FlatCAMGUI.py:5080 +#: flatcamGUI/FlatCAMGUI.py:5062 msgid "Linear Dir.:" msgstr "Dir. Lineara:" -#: flatcamGUI/FlatCAMGUI.py:5116 +#: flatcamGUI/FlatCAMGUI.py:5098 msgid "Circular Drill Array:" msgstr "Arie de gauri circ.:" -#: flatcamGUI/FlatCAMGUI.py:5120 +#: flatcamGUI/FlatCAMGUI.py:5102 msgid "Circular Dir.:" msgstr "Directie circ.:" -#: flatcamGUI/FlatCAMGUI.py:5122 +#: flatcamGUI/FlatCAMGUI.py:5104 msgid "" "Direction for circular array.\n" "Can be CW = clockwise or CCW = counter clockwise." @@ -7653,15 +7653,15 @@ msgstr "" "Poate fi CW = in sensul acelor de ceasornic sau CCW = invers acelor de " "ceasornic" -#: flatcamGUI/FlatCAMGUI.py:5133 +#: flatcamGUI/FlatCAMGUI.py:5115 msgid "Circ. Angle:" msgstr "Unghi circ.:" -#: flatcamGUI/FlatCAMGUI.py:5150 +#: flatcamGUI/FlatCAMGUI.py:5132 msgid "Geometry General" msgstr "Geometrie General" -#: flatcamGUI/FlatCAMGUI.py:5168 +#: flatcamGUI/FlatCAMGUI.py:5151 msgid "" "The number of circle steps for Geometry \n" "circle and arc shapes linear approximation." @@ -7669,29 +7669,23 @@ msgstr "" "Numărul de segmente utilizate pentru\n" "aproximarea lineara a Geometriilor circulare." -#: flatcamGUI/FlatCAMGUI.py:5176 -msgid "Tools" -msgstr "Unelte" +#: flatcamGUI/FlatCAMGUI.py:5159 +msgid "Tools:" +msgstr "Unelte:" -#: flatcamGUI/FlatCAMGUI.py:5183 -msgid "Tool dia: " -msgstr "Dia Unealtă:" +#: flatcamGUI/FlatCAMGUI.py:5165 flatcamGUI/FlatCAMGUI.py:5774 +msgid "Diameters of the cutting tools, separated by ','" +msgstr "Diametrele pentru unelte taietoare, separate cu virgula" -#: flatcamGUI/FlatCAMGUI.py:5185 -msgid "" -"The diameter of the cutting\n" -"tool.." -msgstr "Diametrul uneltei taietoare ..." - -#: flatcamGUI/FlatCAMGUI.py:5200 +#: flatcamGUI/FlatCAMGUI.py:5179 msgid "Geometry Options" msgstr "Opțiuni Geometrie" -#: flatcamGUI/FlatCAMGUI.py:5205 +#: flatcamGUI/FlatCAMGUI.py:5184 msgid "Create CNC Job:" msgstr "Crează CNCJob:" -#: flatcamGUI/FlatCAMGUI.py:5207 +#: flatcamGUI/FlatCAMGUI.py:5186 msgid "" "Create a CNC Job object\n" "tracing the contours of this\n" @@ -7700,7 +7694,7 @@ msgstr "" "Crează un obiect CNCJob care urmareste conturul\n" "acestui obiect tip Geometrie." -#: flatcamGUI/FlatCAMGUI.py:5219 flatcamGUI/ObjectUI.py:1065 +#: flatcamGUI/FlatCAMGUI.py:5198 flatcamGUI/ObjectUI.py:1065 msgid "" "Cutting depth (negative)\n" "below the copper surface." @@ -7708,21 +7702,21 @@ msgstr "" "Adâncimea la care se taie sub suprafata de cupru.\n" "Valoare negativă." -#: flatcamGUI/FlatCAMGUI.py:5227 +#: flatcamGUI/FlatCAMGUI.py:5206 msgid "Multidepth" msgstr "MultiPas" -#: flatcamGUI/FlatCAMGUI.py:5229 +#: flatcamGUI/FlatCAMGUI.py:5208 msgid "Multidepth usage: True or False." msgstr "" "Daca se folosesc sau nu pasi multipli de tăiere\n" "pentru a ajunge la adâncimea de tăiere." -#: flatcamGUI/FlatCAMGUI.py:5234 +#: flatcamGUI/FlatCAMGUI.py:5213 msgid "Depth/Pass:" msgstr "Adanc./Trecere" -#: flatcamGUI/FlatCAMGUI.py:5236 +#: flatcamGUI/FlatCAMGUI.py:5215 msgid "" "The depth to cut on each pass,\n" "when multidepth is enabled.\n" @@ -7735,7 +7729,7 @@ msgstr "" "Valoarea este pozitivă desi reprezinta o fracţie\n" "a adancimii de tăiere care este o valoare negativă." -#: flatcamGUI/FlatCAMGUI.py:5252 flatcamGUI/ObjectUI.py:1101 +#: flatcamGUI/FlatCAMGUI.py:5231 flatcamGUI/ObjectUI.py:1101 msgid "" "Height of the tool when\n" "moving without cutting." @@ -7743,11 +7737,11 @@ msgstr "" "Înălţimea la care se misca unealta când nu taie,\n" "deasupra materialului." -#: flatcamGUI/FlatCAMGUI.py:5279 flatcamGUI/ObjectUI.py:1156 +#: flatcamGUI/FlatCAMGUI.py:5258 flatcamGUI/ObjectUI.py:1156 msgid "Feed Rate X-Y:" msgstr "Feedrate X-Y:" -#: flatcamGUI/FlatCAMGUI.py:5281 flatcamGUI/ObjectUI.py:1159 +#: flatcamGUI/FlatCAMGUI.py:5260 flatcamGUI/ObjectUI.py:1159 msgid "" "Cutting speed in the XY\n" "plane in units per minute" @@ -7755,11 +7749,11 @@ msgstr "" "Viteza de tăiere in planul X-Y\n" "in unitati pe minut." -#: flatcamGUI/FlatCAMGUI.py:5289 +#: flatcamGUI/FlatCAMGUI.py:5268 msgid "Feed Rate Z:" msgstr "Feedrate Z:" -#: flatcamGUI/FlatCAMGUI.py:5291 +#: flatcamGUI/FlatCAMGUI.py:5270 msgid "" "Cutting speed in the XY\n" "plane in units per minute.\n" @@ -7769,12 +7763,12 @@ msgstr "" "in unitati pe minut.\n" "Mai este numita și viteza de plonjare." -#: flatcamGUI/FlatCAMGUI.py:5300 flatcamGUI/ObjectUI.py:682 +#: flatcamGUI/FlatCAMGUI.py:5279 flatcamGUI/ObjectUI.py:682 #: flatcamGUI/ObjectUI.py:1211 msgid "Spindle speed:" msgstr "Viteza motor:" -#: flatcamGUI/FlatCAMGUI.py:5343 +#: flatcamGUI/FlatCAMGUI.py:5322 msgid "" "The postprocessor file that dictates\n" "Machine Code output." @@ -7783,11 +7777,11 @@ msgstr "" "respecte un anumit format care să fie ințeles de diverse\n" "utilaje. Este responsabil de 'personalizarea' G-Code." -#: flatcamGUI/FlatCAMGUI.py:5359 +#: flatcamGUI/FlatCAMGUI.py:5338 msgid "Geometry Adv. Options" msgstr "Opțiuni Avans. Geometrie" -#: flatcamGUI/FlatCAMGUI.py:5366 +#: flatcamGUI/FlatCAMGUI.py:5345 msgid "" "Parameters to create a CNC Job object\n" "tracing the contours of a Geometry object." @@ -7795,7 +7789,7 @@ msgstr "" "Parametrii folositi pentru a crea un obiect CNCJob,\n" "urmărind contururile unui obiect tip Geometrie." -#: flatcamGUI/FlatCAMGUI.py:5386 +#: flatcamGUI/FlatCAMGUI.py:5365 msgid "" "Height of the tool just after starting the work.\n" "Delete the value if you don't need this feature." @@ -7803,7 +7797,7 @@ msgstr "" "Înălţimea uneltei la care se gaseste la inceputul lucrului.\n" "Lasa câmpul gol daca nu folosești aceasta." -#: flatcamGUI/FlatCAMGUI.py:5406 +#: flatcamGUI/FlatCAMGUI.py:5385 msgid "" "Cutting speed in the XY plane\n" "(in units per minute).\n" @@ -7816,11 +7810,11 @@ msgstr "" "Este utila doar când se foloseşte cu un printer 3D Marlin,\n" "pentru toate celelalte cazuri ignora acest parametru." -#: flatcamGUI/FlatCAMGUI.py:5418 +#: flatcamGUI/FlatCAMGUI.py:5397 msgid "Re-cut 1st pt." msgstr "Re-tăiere 1-ul pt." -#: flatcamGUI/FlatCAMGUI.py:5420 flatcamGUI/ObjectUI.py:1202 +#: flatcamGUI/FlatCAMGUI.py:5399 flatcamGUI/ObjectUI.py:1202 msgid "" "In order to remove possible\n" "copper leftovers where first cut\n" @@ -7832,11 +7826,11 @@ msgstr "" "cu sfârşitul acesteia (este vorba de un contur), sunt eliminate\n" "prin taierea peste acest punct." -#: flatcamGUI/FlatCAMGUI.py:5459 +#: flatcamGUI/FlatCAMGUI.py:5438 msgid "Seg. X size:" msgstr "Dim. seg X." -#: flatcamGUI/FlatCAMGUI.py:5461 +#: flatcamGUI/FlatCAMGUI.py:5440 msgid "" "The size of the trace segment on the X axis.\n" "Useful for auto-leveling.\n" @@ -7847,11 +7841,11 @@ msgstr "" "O valoare de 0 inseamnaca nu se face segmentare\n" "pe axa X." -#: flatcamGUI/FlatCAMGUI.py:5470 +#: flatcamGUI/FlatCAMGUI.py:5449 msgid "Seg. Y size:" msgstr "Dim. seg Y." -#: flatcamGUI/FlatCAMGUI.py:5472 +#: flatcamGUI/FlatCAMGUI.py:5451 msgid "" "The size of the trace segment on the Y axis.\n" "Useful for auto-leveling.\n" @@ -7862,15 +7856,15 @@ msgstr "" "O valoare de 0 inseamnaca nu se face segmentare\n" "pe axa Y." -#: flatcamGUI/FlatCAMGUI.py:5488 +#: flatcamGUI/FlatCAMGUI.py:5467 msgid "Geometry Editor" msgstr "Editor Geometrii" -#: flatcamGUI/FlatCAMGUI.py:5493 +#: flatcamGUI/FlatCAMGUI.py:5472 msgid "A list of Geometry Editor parameters." msgstr "O lista de parametri ai Editorului de Geometrii." -#: flatcamGUI/FlatCAMGUI.py:5503 +#: flatcamGUI/FlatCAMGUI.py:5482 msgid "" "Set the number of selected geometry\n" "items above which the utility geometry\n" @@ -7884,20 +7878,20 @@ msgstr "" "Creste performanta cand se muta un număr mai mare de \n" "elemente geometrice." -#: flatcamGUI/FlatCAMGUI.py:5522 +#: flatcamGUI/FlatCAMGUI.py:5501 msgid "CNC Job General" msgstr "CNCJob General" -#: flatcamGUI/FlatCAMGUI.py:5535 flatcamGUI/ObjectUI.py:544 +#: flatcamGUI/FlatCAMGUI.py:5514 flatcamGUI/ObjectUI.py:544 #: flatcamGUI/ObjectUI.py:877 flatcamGUI/ObjectUI.py:1447 msgid "Plot Object" msgstr "Afisează" -#: flatcamGUI/FlatCAMGUI.py:5542 +#: flatcamGUI/FlatCAMGUI.py:5521 msgid "Plot kind:" msgstr "Tip afișare:" -#: flatcamGUI/FlatCAMGUI.py:5544 flatcamGUI/ObjectUI.py:1356 +#: flatcamGUI/FlatCAMGUI.py:5523 flatcamGUI/ObjectUI.py:1356 msgid "" "This selects the kind of geometries on the canvas to plot.\n" "Those can be either of type 'Travel' which means the moves\n" @@ -7910,11 +7904,11 @@ msgstr "" "- Tăiere -> miscarile in material, tăiere\n" "- Amandoua" -#: flatcamGUI/FlatCAMGUI.py:5561 +#: flatcamGUI/FlatCAMGUI.py:5540 msgid "Display Annotation:" msgstr "Afiseaza notatii:" -#: flatcamGUI/FlatCAMGUI.py:5563 flatcamGUI/ObjectUI.py:1372 +#: flatcamGUI/FlatCAMGUI.py:5542 flatcamGUI/ObjectUI.py:1372 msgid "" "This selects if to display text annotation on the plot.\n" "When checked it will display numbers in order for each end\n" @@ -7924,23 +7918,23 @@ msgstr "" "Cand este selectat va afisa numerele in ordine pt fiecare\n" "capat al liniilor de traversare." -#: flatcamGUI/FlatCAMGUI.py:5575 +#: flatcamGUI/FlatCAMGUI.py:5554 msgid "Annotation Size:" msgstr "Dim. anotate:" -#: flatcamGUI/FlatCAMGUI.py:5577 +#: flatcamGUI/FlatCAMGUI.py:5556 msgid "The font size of the annotation text. In pixels." msgstr "Dimensiunea fontului pt. textul cu notatii. In pixeli." -#: flatcamGUI/FlatCAMGUI.py:5585 +#: flatcamGUI/FlatCAMGUI.py:5564 msgid "Annotation Color:" msgstr "Culoarea anotatii:" -#: flatcamGUI/FlatCAMGUI.py:5587 +#: flatcamGUI/FlatCAMGUI.py:5566 msgid "Set the font color for the annotation texts." msgstr "Setează culoarea pentru textul cu anotatii." -#: flatcamGUI/FlatCAMGUI.py:5610 +#: flatcamGUI/FlatCAMGUI.py:5589 msgid "" "The number of circle steps for GCode \n" "circle and arc shapes linear approximation." @@ -7948,17 +7942,17 @@ msgstr "" "Numărul de segmente utilizate pentru\n" "aproximarea lineara a reprezentarilor GCodului circular." -#: flatcamGUI/FlatCAMGUI.py:5620 +#: flatcamGUI/FlatCAMGUI.py:5599 msgid "" "Diameter of the tool to be\n" "rendered in the plot." msgstr "Diametrul uneltei care să fie redat prin afișare." -#: flatcamGUI/FlatCAMGUI.py:5628 +#: flatcamGUI/FlatCAMGUI.py:5607 msgid "Coords dec.:" msgstr "Coord. zec.:" -#: flatcamGUI/FlatCAMGUI.py:5630 +#: flatcamGUI/FlatCAMGUI.py:5609 msgid "" "The number of decimals to be used for \n" "the X, Y, Z coordinates in CNC code (GCODE, etc.)" @@ -7966,11 +7960,11 @@ msgstr "" "Numărul de zecimale care să fie folosit in \n" "coordonatele X,Y,Z in codul CNC (GCode etc)." -#: flatcamGUI/FlatCAMGUI.py:5638 +#: flatcamGUI/FlatCAMGUI.py:5617 msgid "Feedrate dec.:" msgstr "Feedrate zec.:" -#: flatcamGUI/FlatCAMGUI.py:5640 +#: flatcamGUI/FlatCAMGUI.py:5619 msgid "" "The number of decimals to be used for \n" "the Feedrate parameter in CNC code (GCODE, etc.)" @@ -7978,15 +7972,15 @@ msgstr "" "Numărul de zecimale care să fie folosit in \n" "parametrul >Feedrate< in codul CNC (GCode etc)." -#: flatcamGUI/FlatCAMGUI.py:5655 +#: flatcamGUI/FlatCAMGUI.py:5634 msgid "CNC Job Options" msgstr "Opțiuni CNCJob" -#: flatcamGUI/FlatCAMGUI.py:5658 flatcamGUI/FlatCAMGUI.py:5699 +#: flatcamGUI/FlatCAMGUI.py:5637 flatcamGUI/FlatCAMGUI.py:5678 msgid "Export G-Code:" msgstr "Exporta G-Code:" -#: flatcamGUI/FlatCAMGUI.py:5660 flatcamGUI/FlatCAMGUI.py:5701 +#: flatcamGUI/FlatCAMGUI.py:5639 flatcamGUI/FlatCAMGUI.py:5680 #: flatcamGUI/ObjectUI.py:1483 msgid "" "Export and save G-Code to\n" @@ -7995,11 +7989,11 @@ msgstr "" "Exporta și salvează codul G-Code intr-un fişier\n" "care este salvat pe HDD." -#: flatcamGUI/FlatCAMGUI.py:5666 +#: flatcamGUI/FlatCAMGUI.py:5645 msgid "Prepend to G-Code:" msgstr "Adaugă la inceputul G-Code:" -#: flatcamGUI/FlatCAMGUI.py:5668 +#: flatcamGUI/FlatCAMGUI.py:5647 msgid "" "Type here any G-Code commands you would\n" "like to add at the beginning of the G-Code file." @@ -8007,11 +8001,11 @@ msgstr "" "Adaugă aici orice comenzi G-Code care se dorește să fie\n" "inserate la inceputul codului G-Code." -#: flatcamGUI/FlatCAMGUI.py:5677 +#: flatcamGUI/FlatCAMGUI.py:5656 msgid "Append to G-Code:" msgstr "Adaugă la sfârşitul G-Code:" -#: flatcamGUI/FlatCAMGUI.py:5679 flatcamGUI/ObjectUI.py:1505 +#: flatcamGUI/FlatCAMGUI.py:5658 flatcamGUI/ObjectUI.py:1505 msgid "" "Type here any G-Code commands you would\n" "like to append to the generated file.\n" @@ -8020,15 +8014,15 @@ msgstr "" "Adaugă aici orice comenzi G-Code care se dorește să fie\n" "inserate la sfârşitul codului G-Code." -#: flatcamGUI/FlatCAMGUI.py:5696 +#: flatcamGUI/FlatCAMGUI.py:5675 msgid "CNC Job Adv. Options" msgstr "Opțiuni Avans. CNCJob" -#: flatcamGUI/FlatCAMGUI.py:5707 flatcamGUI/ObjectUI.py:1523 +#: flatcamGUI/FlatCAMGUI.py:5686 flatcamGUI/ObjectUI.py:1523 msgid "Toolchange G-Code:" msgstr "G-Code pt schimb unealtă:" -#: flatcamGUI/FlatCAMGUI.py:5709 +#: flatcamGUI/FlatCAMGUI.py:5688 msgid "" "Type here any G-Code commands you would\n" "like to be executed when Toolchange event is encountered.\n" @@ -8040,11 +8034,11 @@ msgstr "" "Comanda M6 este inlocuita.\n" "Aceata va constitui un macro pentru schimbul uneltelor." -#: flatcamGUI/FlatCAMGUI.py:5723 flatcamGUI/ObjectUI.py:1545 +#: flatcamGUI/FlatCAMGUI.py:5702 flatcamGUI/ObjectUI.py:1545 msgid "Use Toolchange Macro" msgstr "Fol. Macro schimb unealtă" -#: flatcamGUI/FlatCAMGUI.py:5725 flatcamGUI/ObjectUI.py:1548 +#: flatcamGUI/FlatCAMGUI.py:5704 flatcamGUI/ObjectUI.py:1548 msgid "" "Check this box if you want to use\n" "a Custom Toolchange GCode (macro)." @@ -8052,7 +8046,7 @@ msgstr "" "Bifează aici daca dorești să folosești Macro pentru\n" "schimb unelte." -#: flatcamGUI/FlatCAMGUI.py:5737 flatcamGUI/ObjectUI.py:1557 +#: flatcamGUI/FlatCAMGUI.py:5716 flatcamGUI/ObjectUI.py:1557 msgid "" "A list of the FlatCAM variables that can be used\n" "in the Toolchange event.\n" @@ -8062,71 +8056,67 @@ msgstr "" "de schimb al uneltei (când se intalneste comanda M6).\n" "Este necesar să fie inconjurate de simbolul '%'." -#: flatcamGUI/FlatCAMGUI.py:5744 flatcamGUI/ObjectUI.py:1564 +#: flatcamGUI/FlatCAMGUI.py:5723 flatcamGUI/ObjectUI.py:1564 msgid "Parameters" msgstr "Parametri" -#: flatcamGUI/FlatCAMGUI.py:5747 flatcamGUI/ObjectUI.py:1567 +#: flatcamGUI/FlatCAMGUI.py:5726 flatcamGUI/ObjectUI.py:1567 msgid "FlatCAM CNC parameters" msgstr "Parametri FlatCAM CNC" -#: flatcamGUI/FlatCAMGUI.py:5748 flatcamGUI/ObjectUI.py:1568 +#: flatcamGUI/FlatCAMGUI.py:5727 flatcamGUI/ObjectUI.py:1568 msgid "tool = tool number" msgstr "tool = numărul uneltei" -#: flatcamGUI/FlatCAMGUI.py:5749 flatcamGUI/ObjectUI.py:1569 +#: flatcamGUI/FlatCAMGUI.py:5728 flatcamGUI/ObjectUI.py:1569 msgid "tooldia = tool diameter" msgstr "tooldia = dimaetrul uneltei" -#: flatcamGUI/FlatCAMGUI.py:5750 flatcamGUI/ObjectUI.py:1570 +#: flatcamGUI/FlatCAMGUI.py:5729 flatcamGUI/ObjectUI.py:1570 msgid "t_drills = for Excellon, total number of drills" msgstr "t_drills = pt Excellom, numărul total de operațiuni găurire" -#: flatcamGUI/FlatCAMGUI.py:5751 flatcamGUI/ObjectUI.py:1571 +#: flatcamGUI/FlatCAMGUI.py:5730 flatcamGUI/ObjectUI.py:1571 msgid "x_toolchange = X coord for Toolchange" msgstr "x_toolchange = coord. X pt schimb unealtă" -#: flatcamGUI/FlatCAMGUI.py:5752 flatcamGUI/ObjectUI.py:1572 +#: flatcamGUI/FlatCAMGUI.py:5731 flatcamGUI/ObjectUI.py:1572 msgid "y_toolchange = Y coord for Toolchange" msgstr "y_toolchange = coord. Y pt schimb unealtă" -#: flatcamGUI/FlatCAMGUI.py:5753 flatcamGUI/ObjectUI.py:1573 +#: flatcamGUI/FlatCAMGUI.py:5732 flatcamGUI/ObjectUI.py:1573 msgid "z_toolchange = Z coord for Toolchange" msgstr "z_toolchange = coord. Z pt schimb unealtă" -#: flatcamGUI/FlatCAMGUI.py:5754 +#: flatcamGUI/FlatCAMGUI.py:5733 msgid "z_cut = Z depth for the cut" msgstr "z_cut = Z adâncimea de tăiere" -#: flatcamGUI/FlatCAMGUI.py:5755 +#: flatcamGUI/FlatCAMGUI.py:5734 msgid "z_move = Z height for travel" msgstr "z_move = Z Înălţimea deplasare" -#: flatcamGUI/FlatCAMGUI.py:5756 flatcamGUI/ObjectUI.py:1576 +#: flatcamGUI/FlatCAMGUI.py:5735 flatcamGUI/ObjectUI.py:1576 msgid "z_depthpercut = the step value for multidepth cut" msgstr "z_depthpercut = pasul pentru taierea progresiva" -#: flatcamGUI/FlatCAMGUI.py:5757 flatcamGUI/ObjectUI.py:1577 +#: flatcamGUI/FlatCAMGUI.py:5736 flatcamGUI/ObjectUI.py:1577 msgid "spindlesspeed = the value for the spindle speed" msgstr "spindlesspeed = valoarea viteza motor" -#: flatcamGUI/FlatCAMGUI.py:5759 flatcamGUI/ObjectUI.py:1578 +#: flatcamGUI/FlatCAMGUI.py:5738 flatcamGUI/ObjectUI.py:1578 msgid "dwelltime = time to dwell to allow the spindle to reach it's set RPM" msgstr "dwelltime = durata de asteptare ca motorul să ajunga la turatia setată" -#: flatcamGUI/FlatCAMGUI.py:5780 +#: flatcamGUI/FlatCAMGUI.py:5759 msgid "NCC Tool Options" msgstr "Opțiuni Unealta NCC" -#: flatcamGUI/FlatCAMGUI.py:5793 flatcamGUI/FlatCAMGUI.py:6523 +#: flatcamGUI/FlatCAMGUI.py:5772 flatcamGUI/FlatCAMGUI.py:6502 msgid "Tools dia:" msgstr "Dia unealtă:" -#: flatcamGUI/FlatCAMGUI.py:5795 -msgid "Diameters of the cutting tools, separated by ','" -msgstr "Diametrele pentru unelte taietoare, separate cu virgula" - -#: flatcamGUI/FlatCAMGUI.py:5803 flatcamTools/ToolNonCopperClear.py:167 +#: flatcamGUI/FlatCAMGUI.py:5782 flatcamTools/ToolNonCopperClear.py:167 #, python-format msgid "" "How much (fraction) of the tool width to overlap each tool pass.\n" @@ -8152,11 +8142,11 @@ msgstr "" "Valori mari= procesare lenta cat și o execuţie la fel de lenta a PCB-ului,\n" "datorita numărului mai mare de treceri-tăiere." -#: flatcamGUI/FlatCAMGUI.py:5819 flatcamTools/ToolNonCopperClear.py:183 +#: flatcamGUI/FlatCAMGUI.py:5798 flatcamTools/ToolNonCopperClear.py:183 msgid "Bounding box margin." msgstr "Marginea pentru forma înconjurătoare." -#: flatcamGUI/FlatCAMGUI.py:5828 flatcamTools/ToolNonCopperClear.py:192 +#: flatcamGUI/FlatCAMGUI.py:5807 flatcamTools/ToolNonCopperClear.py:192 #: flatcamTools/ToolPaint.py:190 msgid "" "Algorithm for non-copper clearing:
Standard: Fixed step inwards." @@ -8167,12 +8157,12 @@ msgstr "" "
Punct-samanta: De la punctul samanta, spre expterior.
Linii " "drepte: Linii paralele." -#: flatcamGUI/FlatCAMGUI.py:5860 flatcamTools/ToolNonCopperClear.py:224 +#: flatcamGUI/FlatCAMGUI.py:5839 flatcamTools/ToolNonCopperClear.py:224 #: flatcamTools/ToolPaint.py:222 msgid "Rest M.:" msgstr "Rest M.:" -#: flatcamGUI/FlatCAMGUI.py:5862 +#: flatcamGUI/FlatCAMGUI.py:5841 msgid "" "If checked, use 'rest machining'.\n" "Basically it will clear copper outside PCB features,\n" @@ -8190,11 +8180,11 @@ msgstr "" "precedenta.\n" "Daca nu este bifat, foloseşte algoritmul standard." -#: flatcamGUI/FlatCAMGUI.py:5881 +#: flatcamGUI/FlatCAMGUI.py:5860 msgid "Cutout Tool Options" msgstr "Opțiuni Unealta Decupare" -#: flatcamGUI/FlatCAMGUI.py:5886 flatcamGUI/ObjectUI.py:402 +#: flatcamGUI/FlatCAMGUI.py:5865 flatcamGUI/ObjectUI.py:402 msgid "" "Create toolpaths to cut around\n" "the PCB and separate it from\n" @@ -8204,17 +8194,17 @@ msgstr "" "lasand punţi pentru a separa PCB-ul de \n" "placa din care a fost taiat." -#: flatcamGUI/FlatCAMGUI.py:5905 +#: flatcamGUI/FlatCAMGUI.py:5884 msgid "" "Distance from objects at which\n" "to draw the cutout." msgstr "Distanta de obiecte la care să se deseneze forma taietoare." -#: flatcamGUI/FlatCAMGUI.py:5912 flatcamTools/ToolCutOut.py:96 +#: flatcamGUI/FlatCAMGUI.py:5891 flatcamTools/ToolCutOut.py:96 msgid "Gap size:" msgstr "Dim. punte:" -#: flatcamGUI/FlatCAMGUI.py:5914 +#: flatcamGUI/FlatCAMGUI.py:5893 msgid "" "Size of the gaps in the toolpath\n" "that will remain to hold the\n" @@ -8224,11 +8214,11 @@ msgstr "" "care vor mentine PCB-ul in poziţie, fără să cada\n" "din placa 'mama' dupa decupare." -#: flatcamGUI/FlatCAMGUI.py:5922 flatcamTools/ToolCutOut.py:134 +#: flatcamGUI/FlatCAMGUI.py:5901 flatcamTools/ToolCutOut.py:134 msgid "Gaps:" msgstr "Punţi:" -#: flatcamGUI/FlatCAMGUI.py:5924 +#: flatcamGUI/FlatCAMGUI.py:5903 msgid "" "Number of bridge gaps used for the cutout.\n" "There can be maximum 8 bridges/gaps.\n" @@ -8250,21 +8240,21 @@ msgstr "" "- 2tb = 2* sus - 2* jos\n" "- 8 = 2* stânga - 2* dreapta - 2* sus - 2* jos" -#: flatcamGUI/FlatCAMGUI.py:5945 flatcamTools/ToolCutOut.py:115 +#: flatcamGUI/FlatCAMGUI.py:5924 flatcamTools/ToolCutOut.py:115 msgid "Convex Sh.:" msgstr "Formă Conv." -#: flatcamGUI/FlatCAMGUI.py:5947 +#: flatcamGUI/FlatCAMGUI.py:5926 msgid "Create a convex shape surrounding the entire PCB." msgstr "" "Generează un obiect tip Geometrie care va inconjura\n" "tot PCB-ul. Forma sa este convexa." -#: flatcamGUI/FlatCAMGUI.py:5960 +#: flatcamGUI/FlatCAMGUI.py:5939 msgid "2Sided Tool Options" msgstr "Opțiuni Unealta 2Fețe" -#: flatcamGUI/FlatCAMGUI.py:5965 +#: flatcamGUI/FlatCAMGUI.py:5944 msgid "" "A tool to help in creating a double sided\n" "PCB using alignment holes." @@ -8272,28 +8262,28 @@ msgstr "" "O unealtă care ajuta in crearea de PCB-uri cu 2 fețe\n" "folosind găuri de aliniere." -#: flatcamGUI/FlatCAMGUI.py:5975 flatcamTools/ToolDblSided.py:235 +#: flatcamGUI/FlatCAMGUI.py:5954 flatcamTools/ToolDblSided.py:235 msgid "Drill diam.:" msgstr "Dia gaura:" -#: flatcamGUI/FlatCAMGUI.py:5977 flatcamTools/ToolDblSided.py:226 +#: flatcamGUI/FlatCAMGUI.py:5956 flatcamTools/ToolDblSided.py:226 #: flatcamTools/ToolDblSided.py:237 msgid "Diameter of the drill for the alignment holes." msgstr "Diametrul găurii pentru găurile de aliniere." -#: flatcamGUI/FlatCAMGUI.py:5986 flatcamTools/ToolDblSided.py:120 +#: flatcamGUI/FlatCAMGUI.py:5965 flatcamTools/ToolDblSided.py:120 msgid "Mirror Axis:" msgstr "Axe oglindire:" -#: flatcamGUI/FlatCAMGUI.py:5988 flatcamTools/ToolDblSided.py:122 +#: flatcamGUI/FlatCAMGUI.py:5967 flatcamTools/ToolDblSided.py:122 msgid "Mirror vertically (X) or horizontally (Y)." msgstr "Oglindește vertical (X) sau orizontal (Y)." -#: flatcamGUI/FlatCAMGUI.py:5999 flatcamTools/ToolDblSided.py:133 +#: flatcamGUI/FlatCAMGUI.py:5978 flatcamTools/ToolDblSided.py:133 msgid "Axis Ref:" msgstr "Axa de ref.:" -#: flatcamGUI/FlatCAMGUI.py:6001 +#: flatcamGUI/FlatCAMGUI.py:5980 msgid "" "The axis should pass through a point or cut\n" " a specified box (in a Geometry object) in \n" @@ -8302,11 +8292,11 @@ msgstr "" "Axa de referinţă ar trebui să treaca printr-un punct ori să strabata\n" " o forma (specificata un obiect tip Geometrie) prin mijloc." -#: flatcamGUI/FlatCAMGUI.py:6017 +#: flatcamGUI/FlatCAMGUI.py:5996 msgid "Paint Tool Options" msgstr "Opțiuni Unealta Paint" -#: flatcamGUI/FlatCAMGUI.py:6024 flatcamGUI/ObjectUI.py:1305 +#: flatcamGUI/FlatCAMGUI.py:6003 flatcamGUI/ObjectUI.py:1305 msgid "" "Creates tool paths to cover the\n" "whole area of a polygon (remove\n" @@ -8319,7 +8309,7 @@ msgstr "" "singur poligon se va cere să faceti click pe poligonul\n" "dorit." -#: flatcamGUI/FlatCAMGUI.py:6048 +#: flatcamGUI/FlatCAMGUI.py:6027 msgid "" "How much (fraction) of the tool\n" "width to overlap each tool pass." @@ -8327,19 +8317,19 @@ msgstr "" "Cat de mult (o fracţie din diametrul uneltei) din diametrul uneltei,\n" "(lăţimea de tăiere) să se suprapună peste trecerea anterioară." -#: flatcamGUI/FlatCAMGUI.py:6102 flatcamTools/ToolPaint.py:237 +#: flatcamGUI/FlatCAMGUI.py:6081 flatcamTools/ToolPaint.py:237 msgid "Selection:" msgstr "Selecţie:" -#: flatcamGUI/FlatCAMGUI.py:6104 +#: flatcamGUI/FlatCAMGUI.py:6083 msgid "How to select the polygons to paint." msgstr "Cum să se selecteze poligoanele de pictat (paint)." -#: flatcamGUI/FlatCAMGUI.py:6122 +#: flatcamGUI/FlatCAMGUI.py:6101 msgid "Film Tool Options" msgstr "Opțiuni Unealta Film" -#: flatcamGUI/FlatCAMGUI.py:6127 +#: flatcamGUI/FlatCAMGUI.py:6106 msgid "" "Create a PCB film from a Gerber or Geometry\n" "FlatCAM object.\n" @@ -8348,11 +8338,11 @@ msgstr "" "Crează un film PCB dintr-un obiect Gerber sau tip Geometrie.\n" "Fişierul este salvat in format SVG." -#: flatcamGUI/FlatCAMGUI.py:6138 flatcamTools/ToolFilm.py:116 +#: flatcamGUI/FlatCAMGUI.py:6117 flatcamTools/ToolFilm.py:116 msgid "Film Type:" msgstr "Tip film:" -#: flatcamGUI/FlatCAMGUI.py:6140 flatcamTools/ToolFilm.py:118 +#: flatcamGUI/FlatCAMGUI.py:6119 flatcamTools/ToolFilm.py:118 msgid "" "Generate a Positive black film or a Negative film.\n" "Positive means that it will print the features\n" @@ -8366,11 +8356,11 @@ msgstr "" "Negativ = traseele vor fi albe pe un fundal negru.\n" "Formatul fişierului pt filmul salvat este SVG." -#: flatcamGUI/FlatCAMGUI.py:6151 flatcamTools/ToolFilm.py:130 +#: flatcamGUI/FlatCAMGUI.py:6130 flatcamTools/ToolFilm.py:130 msgid "Border:" msgstr "Bordura:" -#: flatcamGUI/FlatCAMGUI.py:6153 flatcamTools/ToolFilm.py:132 +#: flatcamGUI/FlatCAMGUI.py:6132 flatcamTools/ToolFilm.py:132 msgid "" "Specify a border around the object.\n" "Only for negative film.\n" @@ -8387,11 +8377,11 @@ msgstr "" "Va crea o bara solida neagra in jurul printului efectiv permitand o\n" "delimitare exacta" -#: flatcamGUI/FlatCAMGUI.py:6166 flatcamTools/ToolFilm.py:144 +#: flatcamGUI/FlatCAMGUI.py:6145 flatcamTools/ToolFilm.py:144 msgid "Scale Stroke:" msgstr "Scalează:" -#: flatcamGUI/FlatCAMGUI.py:6168 flatcamTools/ToolFilm.py:146 +#: flatcamGUI/FlatCAMGUI.py:6147 flatcamTools/ToolFilm.py:146 msgid "" "Scale the line stroke thickness of each feature in the SVG file.\n" "It means that the line that envelope each SVG feature will be thicker or " @@ -8401,11 +8391,11 @@ msgstr "" "Scalează grosimea conturului fiecarui element din fişierul SVG.\n" "Elementele mai mici vor fi afectate mai mult." -#: flatcamGUI/FlatCAMGUI.py:6183 +#: flatcamGUI/FlatCAMGUI.py:6162 msgid "Panelize Tool Options" msgstr "Opțiuni Unealta Panelizare" -#: flatcamGUI/FlatCAMGUI.py:6188 +#: flatcamGUI/FlatCAMGUI.py:6167 msgid "" "Create an object that contains an array of (x, y) elements,\n" "each element is a copy of the source object spaced\n" @@ -8415,11 +8405,11 @@ msgstr "" "unde fiecare element este o copie a obiectului sursa, separat la o\n" "distanţă X, Y unul de celalalt." -#: flatcamGUI/FlatCAMGUI.py:6199 flatcamTools/ToolPanelize.py:147 +#: flatcamGUI/FlatCAMGUI.py:6178 flatcamTools/ToolPanelize.py:147 msgid "Spacing cols:" msgstr "Sep. coloane:" -#: flatcamGUI/FlatCAMGUI.py:6201 flatcamTools/ToolPanelize.py:149 +#: flatcamGUI/FlatCAMGUI.py:6180 flatcamTools/ToolPanelize.py:149 msgid "" "Spacing between columns of the desired panel.\n" "In current units." @@ -8427,11 +8417,11 @@ msgstr "" "Spatiul de separare între coloane.\n" "In unitatile curente." -#: flatcamGUI/FlatCAMGUI.py:6209 flatcamTools/ToolPanelize.py:156 +#: flatcamGUI/FlatCAMGUI.py:6188 flatcamTools/ToolPanelize.py:156 msgid "Spacing rows:" msgstr "Sep. linii:" -#: flatcamGUI/FlatCAMGUI.py:6211 flatcamTools/ToolPanelize.py:158 +#: flatcamGUI/FlatCAMGUI.py:6190 flatcamTools/ToolPanelize.py:158 msgid "" "Spacing between rows of the desired panel.\n" "In current units." @@ -8439,27 +8429,27 @@ msgstr "" "Spatiul de separare între linii.\n" "In unitatile curente." -#: flatcamGUI/FlatCAMGUI.py:6219 flatcamTools/ToolPanelize.py:165 +#: flatcamGUI/FlatCAMGUI.py:6198 flatcamTools/ToolPanelize.py:165 msgid "Columns:" msgstr "Coloane:" -#: flatcamGUI/FlatCAMGUI.py:6221 flatcamTools/ToolPanelize.py:167 +#: flatcamGUI/FlatCAMGUI.py:6200 flatcamTools/ToolPanelize.py:167 msgid "Number of columns of the desired panel" msgstr "Numărul de coloane ale panel-ului dorit." -#: flatcamGUI/FlatCAMGUI.py:6228 flatcamTools/ToolPanelize.py:173 +#: flatcamGUI/FlatCAMGUI.py:6207 flatcamTools/ToolPanelize.py:173 msgid "Rows:" msgstr "Linii:" -#: flatcamGUI/FlatCAMGUI.py:6230 flatcamTools/ToolPanelize.py:175 +#: flatcamGUI/FlatCAMGUI.py:6209 flatcamTools/ToolPanelize.py:175 msgid "Number of rows of the desired panel" msgstr "Numărul de linii ale panel-ului dorit." -#: flatcamGUI/FlatCAMGUI.py:6238 +#: flatcamGUI/FlatCAMGUI.py:6217 msgid "Panel Type:" msgstr "Tip panel:" -#: flatcamGUI/FlatCAMGUI.py:6240 +#: flatcamGUI/FlatCAMGUI.py:6219 msgid "" "Choose the type of object for the panel object:\n" "- Gerber\n" @@ -8469,11 +8459,11 @@ msgstr "" "- Gerber\n" "- Geometrie" -#: flatcamGUI/FlatCAMGUI.py:6249 +#: flatcamGUI/FlatCAMGUI.py:6228 msgid "Constrain within:" msgstr "Constrange:" -#: flatcamGUI/FlatCAMGUI.py:6251 flatcamTools/ToolPanelize.py:195 +#: flatcamGUI/FlatCAMGUI.py:6230 flatcamTools/ToolPanelize.py:195 msgid "" "Area define by DX and DY within to constrain the panel.\n" "DX and DY values are in current units.\n" @@ -8487,11 +8477,11 @@ msgstr "" "panelul final va contine numai acel număr de linii/coloane care se inscrie\n" "complet in aria desemnata." -#: flatcamGUI/FlatCAMGUI.py:6260 flatcamTools/ToolPanelize.py:204 +#: flatcamGUI/FlatCAMGUI.py:6239 flatcamTools/ToolPanelize.py:204 msgid "Width (DX):" msgstr "Latime (Dx):" -#: flatcamGUI/FlatCAMGUI.py:6262 flatcamTools/ToolPanelize.py:206 +#: flatcamGUI/FlatCAMGUI.py:6241 flatcamTools/ToolPanelize.py:206 msgid "" "The width (DX) within which the panel must fit.\n" "In current units." @@ -8499,11 +8489,11 @@ msgstr "" "Lăţimea (Dx) in care panelul trebuie să se inscrie.\n" "In unitati curente." -#: flatcamGUI/FlatCAMGUI.py:6269 flatcamTools/ToolPanelize.py:212 +#: flatcamGUI/FlatCAMGUI.py:6248 flatcamTools/ToolPanelize.py:212 msgid "Height (DY):" msgstr "Inaltime (Dy):" -#: flatcamGUI/FlatCAMGUI.py:6271 flatcamTools/ToolPanelize.py:214 +#: flatcamGUI/FlatCAMGUI.py:6250 flatcamTools/ToolPanelize.py:214 msgid "" "The height (DY)within which the panel must fit.\n" "In current units." @@ -8511,15 +8501,15 @@ msgstr "" "Înălţimea (Dy) in care panelul trebuie să se inscrie.\n" "In unitati curente." -#: flatcamGUI/FlatCAMGUI.py:6285 +#: flatcamGUI/FlatCAMGUI.py:6264 msgid "Calculators Tool Options" msgstr "Opțiuni Unealta Calculatoare" -#: flatcamGUI/FlatCAMGUI.py:6288 +#: flatcamGUI/FlatCAMGUI.py:6267 msgid "V-Shape Tool Calculator:" msgstr "Calculator: Unealta V-shape" -#: flatcamGUI/FlatCAMGUI.py:6290 +#: flatcamGUI/FlatCAMGUI.py:6269 msgid "" "Calculate the tool diameter for a given V-shape tool,\n" "having the tip diameter, tip angle and\n" @@ -8529,11 +8519,11 @@ msgstr "" "avand diametrul vârfului și unghiul la vârf cat și\n" "adâncimea de tăiere, ca parametri." -#: flatcamGUI/FlatCAMGUI.py:6301 flatcamTools/ToolCalculators.py:94 +#: flatcamGUI/FlatCAMGUI.py:6280 flatcamTools/ToolCalculators.py:94 msgid "Tip Diameter:" msgstr "Dia vârf:" -#: flatcamGUI/FlatCAMGUI.py:6303 +#: flatcamGUI/FlatCAMGUI.py:6282 msgid "" "This is the tool tip diameter.\n" "It is specified by manufacturer." @@ -8541,11 +8531,11 @@ msgstr "" "Acesta este diametrul la vârf al uneltei.\n" "Este specificat de producator." -#: flatcamGUI/FlatCAMGUI.py:6311 +#: flatcamGUI/FlatCAMGUI.py:6290 msgid "Tip angle:" msgstr "Unghiul la vârf:" -#: flatcamGUI/FlatCAMGUI.py:6313 +#: flatcamGUI/FlatCAMGUI.py:6292 msgid "" "This is the angle on the tip of the tool.\n" "It is specified by manufacturer." @@ -8553,7 +8543,7 @@ msgstr "" "Acesta este unghiul la vârf al uneltei.\n" "Este specificat de producator." -#: flatcamGUI/FlatCAMGUI.py:6323 +#: flatcamGUI/FlatCAMGUI.py:6302 msgid "" "This is depth to cut into material.\n" "In the CNCJob object it is the CutZ parameter." @@ -8561,11 +8551,11 @@ msgstr "" "Aceasta este adâncimea la care se taie in material.\n" "In obiectul CNCJob este parametrul >Z tăiere<." -#: flatcamGUI/FlatCAMGUI.py:6330 +#: flatcamGUI/FlatCAMGUI.py:6309 msgid "ElectroPlating Calculator:" msgstr "Calculator Electroplacare:" -#: flatcamGUI/FlatCAMGUI.py:6332 flatcamTools/ToolCalculators.py:152 +#: flatcamGUI/FlatCAMGUI.py:6311 flatcamTools/ToolCalculators.py:152 msgid "" "This calculator is useful for those who plate the via/pad/drill holes,\n" "using a method like grahite ink or calcium hypophosphite ink or palladium " @@ -8577,31 +8567,31 @@ msgstr "" "- clorura paladiu\n" "- hipofosfit de calciu" -#: flatcamGUI/FlatCAMGUI.py:6342 flatcamTools/ToolCalculators.py:161 +#: flatcamGUI/FlatCAMGUI.py:6321 flatcamTools/ToolCalculators.py:161 msgid "Board Length:" msgstr "Lung. placii:" -#: flatcamGUI/FlatCAMGUI.py:6344 flatcamTools/ToolCalculators.py:165 +#: flatcamGUI/FlatCAMGUI.py:6323 flatcamTools/ToolCalculators.py:165 msgid "This is the board length. In centimeters." msgstr "" "Aceasta este lungimea PCB-ului.\n" "In centimetri. " -#: flatcamGUI/FlatCAMGUI.py:6350 flatcamTools/ToolCalculators.py:167 +#: flatcamGUI/FlatCAMGUI.py:6329 flatcamTools/ToolCalculators.py:167 msgid "Board Width:" msgstr "Lat. placii:" -#: flatcamGUI/FlatCAMGUI.py:6352 flatcamTools/ToolCalculators.py:171 +#: flatcamGUI/FlatCAMGUI.py:6331 flatcamTools/ToolCalculators.py:171 msgid "This is the board width.In centimeters." msgstr "" "Aceasta este lăţimea PCB-ului.\n" "In centimetri. " -#: flatcamGUI/FlatCAMGUI.py:6357 flatcamTools/ToolCalculators.py:173 +#: flatcamGUI/FlatCAMGUI.py:6336 flatcamTools/ToolCalculators.py:173 msgid "Current Density:" msgstr "Densitate I:" -#: flatcamGUI/FlatCAMGUI.py:6360 flatcamTools/ToolCalculators.py:177 +#: flatcamGUI/FlatCAMGUI.py:6339 flatcamTools/ToolCalculators.py:177 msgid "" "Current density to pass through the board. \n" "In Amps per Square Feet ASF." @@ -8609,11 +8599,11 @@ msgstr "" "Densitatea de curent care să treaca prin placa.\n" "In ASF (amperi pe picior la patrat)." -#: flatcamGUI/FlatCAMGUI.py:6366 flatcamTools/ToolCalculators.py:181 +#: flatcamGUI/FlatCAMGUI.py:6345 flatcamTools/ToolCalculators.py:181 msgid "Copper Growth:" msgstr "Grosime Cu:" -#: flatcamGUI/FlatCAMGUI.py:6369 flatcamTools/ToolCalculators.py:185 +#: flatcamGUI/FlatCAMGUI.py:6348 flatcamTools/ToolCalculators.py:185 msgid "" "How thick the copper growth is intended to be.\n" "In microns." @@ -8621,11 +8611,11 @@ msgstr "" "Cat de gros se dorește să fie stratul de cupru depus.\n" "In microni." -#: flatcamGUI/FlatCAMGUI.py:6382 +#: flatcamGUI/FlatCAMGUI.py:6361 msgid "Transform Tool Options" msgstr "Opțiuni Unealta Transformare" -#: flatcamGUI/FlatCAMGUI.py:6387 +#: flatcamGUI/FlatCAMGUI.py:6366 msgid "" "Various transformations that can be applied\n" "on a FlatCAM object." @@ -8638,47 +8628,47 @@ msgstr "" "- deformare\n" "- oglindire" -#: flatcamGUI/FlatCAMGUI.py:6397 +#: flatcamGUI/FlatCAMGUI.py:6376 msgid "Rotate Angle:" msgstr "Unghi Rotaţie:" -#: flatcamGUI/FlatCAMGUI.py:6399 +#: flatcamGUI/FlatCAMGUI.py:6378 msgid "Angle for rotation. In degrees." msgstr "Unnghiul pentru rotaţie. In grade." -#: flatcamGUI/FlatCAMGUI.py:6406 +#: flatcamGUI/FlatCAMGUI.py:6385 msgid "Skew_X angle:" msgstr "Unghi Deform_X:" -#: flatcamGUI/FlatCAMGUI.py:6408 +#: flatcamGUI/FlatCAMGUI.py:6387 msgid "Angle for Skew/Shear on X axis. In degrees." msgstr "Unghiul pentru deformare pe axa X. In grade." -#: flatcamGUI/FlatCAMGUI.py:6415 +#: flatcamGUI/FlatCAMGUI.py:6394 msgid "Skew_Y angle:" msgstr "Unghi Deform_Y:" -#: flatcamGUI/FlatCAMGUI.py:6417 +#: flatcamGUI/FlatCAMGUI.py:6396 msgid "Angle for Skew/Shear on Y axis. In degrees." msgstr "Unghiul pentru deformare pe axa Y. In grade." -#: flatcamGUI/FlatCAMGUI.py:6424 +#: flatcamGUI/FlatCAMGUI.py:6403 msgid "Scale_X factor:" msgstr "Factor Scal_X:" -#: flatcamGUI/FlatCAMGUI.py:6426 +#: flatcamGUI/FlatCAMGUI.py:6405 msgid "Factor for scaling on X axis." msgstr "Factor de scalare pe axa X." -#: flatcamGUI/FlatCAMGUI.py:6433 +#: flatcamGUI/FlatCAMGUI.py:6412 msgid "Scale_Y factor:" msgstr "Factor Scal_Y:" -#: flatcamGUI/FlatCAMGUI.py:6435 +#: flatcamGUI/FlatCAMGUI.py:6414 msgid "Factor for scaling on Y axis." msgstr "Factor de scalare pe axa Y." -#: flatcamGUI/FlatCAMGUI.py:6443 +#: flatcamGUI/FlatCAMGUI.py:6422 msgid "" "Scale the selected object(s)\n" "using the Scale_X factor for both axis." @@ -8686,7 +8676,7 @@ msgstr "" "Scalează obiectele selectate folosind\n" "Factor Scal_X pentru ambele axe." -#: flatcamGUI/FlatCAMGUI.py:6451 flatcamTools/ToolTransform.py:210 +#: flatcamGUI/FlatCAMGUI.py:6430 flatcamTools/ToolTransform.py:210 msgid "" "Scale the selected object(s)\n" "using the origin reference when checked,\n" @@ -8699,27 +8689,27 @@ msgstr "" "centrul formei inconjuatoare care cuprinde\n" "toate obiectele selectate." -#: flatcamGUI/FlatCAMGUI.py:6460 +#: flatcamGUI/FlatCAMGUI.py:6439 msgid "Offset_X val:" msgstr "Ofset_X:" -#: flatcamGUI/FlatCAMGUI.py:6462 +#: flatcamGUI/FlatCAMGUI.py:6441 msgid "Distance to offset on X axis. In current units." msgstr "Distanta la care se face ofset pe axa X. In unitatile curente." -#: flatcamGUI/FlatCAMGUI.py:6469 +#: flatcamGUI/FlatCAMGUI.py:6448 msgid "Offset_Y val:" msgstr "Ofset_Y:" -#: flatcamGUI/FlatCAMGUI.py:6471 +#: flatcamGUI/FlatCAMGUI.py:6450 msgid "Distance to offset on Y axis. In current units." msgstr "Distanta la care se face ofset pe axa Y. In unitatile curente." -#: flatcamGUI/FlatCAMGUI.py:6477 +#: flatcamGUI/FlatCAMGUI.py:6456 msgid "Mirror Reference" msgstr "Referinţă Oglindire" -#: flatcamGUI/FlatCAMGUI.py:6479 flatcamTools/ToolTransform.py:314 +#: flatcamGUI/FlatCAMGUI.py:6458 flatcamTools/ToolTransform.py:314 msgid "" "Flip the selected object(s)\n" "around the point in Point Entry Field.\n" @@ -8742,11 +8732,11 @@ msgstr "" "in forma (x, y).\n" "La final apasa butonul de oglindire pe axa dorita. " -#: flatcamGUI/FlatCAMGUI.py:6490 +#: flatcamGUI/FlatCAMGUI.py:6469 msgid " Mirror Ref. Point:" msgstr "Pt. Ref. Oglindire:" -#: flatcamGUI/FlatCAMGUI.py:6492 flatcamTools/ToolTransform.py:327 +#: flatcamGUI/FlatCAMGUI.py:6471 flatcamTools/ToolTransform.py:327 msgid "" "Coordinates in format (x, y) used as reference for mirroring.\n" "The 'x' in (x, y) will be used when using Flip on X and\n" @@ -8757,11 +8747,11 @@ msgstr "" "X din (x,y) se va folosi când se face oglindirea pe axa X\n" "Y din (x,y) se va folosi când se face oglindirea pe axa Y." -#: flatcamGUI/FlatCAMGUI.py:6509 +#: flatcamGUI/FlatCAMGUI.py:6488 msgid "SolderPaste Tool Options" msgstr "Opțiuni Unealta Pasta Fludor" -#: flatcamGUI/FlatCAMGUI.py:6514 +#: flatcamGUI/FlatCAMGUI.py:6493 msgid "" "A tool to create GCode for dispensing\n" "solder paste onto a PCB." @@ -8769,49 +8759,49 @@ msgstr "" "O unealtă care crează cod G-Code pentru dispensarea de pastă de fludor\n" "pe padurile unui PCB." -#: flatcamGUI/FlatCAMGUI.py:6525 +#: flatcamGUI/FlatCAMGUI.py:6504 msgid "Diameters of nozzle tools, separated by ','" msgstr "Diametrele uneltelor (nozzle), separate prin virgula." -#: flatcamGUI/FlatCAMGUI.py:6532 +#: flatcamGUI/FlatCAMGUI.py:6511 msgid "New Nozzle Dia:" msgstr "Nou Dia::" -#: flatcamGUI/FlatCAMGUI.py:6534 flatcamTools/ToolSolderPaste.py:103 +#: flatcamGUI/FlatCAMGUI.py:6513 flatcamTools/ToolSolderPaste.py:103 msgid "Diameter for the new Nozzle tool to add in the Tool Table" msgstr "" "Valoarea pentru diametrul unei noi unelte (nozzle) pentru adaugare in Tabela " "de Unelte" -#: flatcamGUI/FlatCAMGUI.py:6542 flatcamTools/ToolSolderPaste.py:166 +#: flatcamGUI/FlatCAMGUI.py:6521 flatcamTools/ToolSolderPaste.py:166 msgid "Z Dispense Start:" msgstr "Z start disp.:" -#: flatcamGUI/FlatCAMGUI.py:6544 flatcamTools/ToolSolderPaste.py:168 +#: flatcamGUI/FlatCAMGUI.py:6523 flatcamTools/ToolSolderPaste.py:168 msgid "The height (Z) when solder paste dispensing starts." msgstr "Înălţimea (Z) când incepe dispensarea de pastă de fludor." -#: flatcamGUI/FlatCAMGUI.py:6551 flatcamTools/ToolSolderPaste.py:174 +#: flatcamGUI/FlatCAMGUI.py:6530 flatcamTools/ToolSolderPaste.py:174 msgid "Z Dispense:" msgstr "Z disp.:" -#: flatcamGUI/FlatCAMGUI.py:6553 flatcamTools/ToolSolderPaste.py:176 +#: flatcamGUI/FlatCAMGUI.py:6532 flatcamTools/ToolSolderPaste.py:176 msgid "The height (Z) when doing solder paste dispensing." msgstr "Înălţimea (Z) in timp ce se face dispensarea de pastă de fludor." -#: flatcamGUI/FlatCAMGUI.py:6560 flatcamTools/ToolSolderPaste.py:183 +#: flatcamGUI/FlatCAMGUI.py:6539 flatcamTools/ToolSolderPaste.py:183 msgid "Z Dispense Stop:" msgstr "Z stop disp.:" -#: flatcamGUI/FlatCAMGUI.py:6562 flatcamTools/ToolSolderPaste.py:185 +#: flatcamGUI/FlatCAMGUI.py:6541 flatcamTools/ToolSolderPaste.py:185 msgid "The height (Z) when solder paste dispensing stops." msgstr "Înălţimea (Z) când se opreste dispensarea de pastă de fludor." -#: flatcamGUI/FlatCAMGUI.py:6569 flatcamTools/ToolSolderPaste.py:191 +#: flatcamGUI/FlatCAMGUI.py:6548 flatcamTools/ToolSolderPaste.py:191 msgid "Z Travel:" msgstr "Z deplasare:" -#: flatcamGUI/FlatCAMGUI.py:6571 flatcamTools/ToolSolderPaste.py:193 +#: flatcamGUI/FlatCAMGUI.py:6550 flatcamTools/ToolSolderPaste.py:193 msgid "" "The height (Z) for travel between pads\n" "(without dispensing solder paste)." @@ -8819,19 +8809,19 @@ msgstr "" "Înălţimea (Z) când se face deplasare între pad-uri.\n" "(fără dispensare de pastă de fludor)." -#: flatcamGUI/FlatCAMGUI.py:6579 flatcamTools/ToolSolderPaste.py:200 +#: flatcamGUI/FlatCAMGUI.py:6558 flatcamTools/ToolSolderPaste.py:200 msgid "Z Toolchange:" msgstr "Z schimb. unealtă:" -#: flatcamGUI/FlatCAMGUI.py:6581 flatcamTools/ToolSolderPaste.py:202 +#: flatcamGUI/FlatCAMGUI.py:6560 flatcamTools/ToolSolderPaste.py:202 msgid "The height (Z) for tool (nozzle) change." msgstr "Înălţimea (Z) când se schimbă unealta (nozzle-ul)." -#: flatcamGUI/FlatCAMGUI.py:6588 flatcamTools/ToolSolderPaste.py:208 +#: flatcamGUI/FlatCAMGUI.py:6567 flatcamTools/ToolSolderPaste.py:208 msgid "XY Toolchange:" msgstr "XY schimb unealtă:" -#: flatcamGUI/FlatCAMGUI.py:6590 flatcamTools/ToolSolderPaste.py:210 +#: flatcamGUI/FlatCAMGUI.py:6569 flatcamTools/ToolSolderPaste.py:210 msgid "" "The X,Y location for tool (nozzle) change.\n" "The format is (x, y) where x and y are real numbers." @@ -8839,30 +8829,30 @@ msgstr "" "Coordonatele X, Y pentru schimbarea uneltei (nozzle).\n" "Formatul este (x,y) unde x și y sunt numere Reale." -#: flatcamGUI/FlatCAMGUI.py:6598 flatcamTools/ToolSolderPaste.py:217 +#: flatcamGUI/FlatCAMGUI.py:6577 flatcamTools/ToolSolderPaste.py:217 msgid "Feedrate X-Y:" msgstr "Feedrate X-Y:" -#: flatcamGUI/FlatCAMGUI.py:6600 flatcamTools/ToolSolderPaste.py:219 +#: flatcamGUI/FlatCAMGUI.py:6579 flatcamTools/ToolSolderPaste.py:219 msgid "Feedrate (speed) while moving on the X-Y plane." msgstr "Viteza de deplasare a uneltei când se deplasează in planul X-Y." -#: flatcamGUI/FlatCAMGUI.py:6607 flatcamTools/ToolSolderPaste.py:225 +#: flatcamGUI/FlatCAMGUI.py:6586 flatcamTools/ToolSolderPaste.py:225 msgid "Feedrate Z:" msgstr "Feedrate Z:" -#: flatcamGUI/FlatCAMGUI.py:6609 flatcamTools/ToolSolderPaste.py:227 +#: flatcamGUI/FlatCAMGUI.py:6588 flatcamTools/ToolSolderPaste.py:227 msgid "" "Feedrate (speed) while moving vertically\n" "(on Z plane)." msgstr "" "Viteza de deplasare a uneltei când se misca in plan vertical (planul Z)." -#: flatcamGUI/FlatCAMGUI.py:6617 flatcamTools/ToolSolderPaste.py:234 +#: flatcamGUI/FlatCAMGUI.py:6596 flatcamTools/ToolSolderPaste.py:234 msgid "Feedrate Z Dispense:" msgstr "Feedrate Z disp.:" -#: flatcamGUI/FlatCAMGUI.py:6619 +#: flatcamGUI/FlatCAMGUI.py:6598 msgid "" "Feedrate (speed) while moving up vertically\n" "to Dispense position (on Z plane)." @@ -8870,11 +8860,11 @@ msgstr "" "Viteza de deplasare la mișcarea pe verticala spre\n" "poziţia de dispensare (in planul Z)." -#: flatcamGUI/FlatCAMGUI.py:6627 flatcamTools/ToolSolderPaste.py:243 +#: flatcamGUI/FlatCAMGUI.py:6606 flatcamTools/ToolSolderPaste.py:243 msgid "Spindle Speed FWD:" msgstr "Viteza motor inainte:" -#: flatcamGUI/FlatCAMGUI.py:6629 flatcamTools/ToolSolderPaste.py:245 +#: flatcamGUI/FlatCAMGUI.py:6608 flatcamTools/ToolSolderPaste.py:245 msgid "" "The dispenser speed while pushing solder paste\n" "through the dispenser nozzle." @@ -8882,19 +8872,19 @@ msgstr "" "Viteza motorului de dispensare in timp ce impinge pastă de fludor\n" "prin orificiul uneltei de dispensare." -#: flatcamGUI/FlatCAMGUI.py:6637 flatcamTools/ToolSolderPaste.py:252 +#: flatcamGUI/FlatCAMGUI.py:6616 flatcamTools/ToolSolderPaste.py:252 msgid "Dwell FWD:" msgstr "Pauza dupa disp.:" -#: flatcamGUI/FlatCAMGUI.py:6639 flatcamTools/ToolSolderPaste.py:254 +#: flatcamGUI/FlatCAMGUI.py:6618 flatcamTools/ToolSolderPaste.py:254 msgid "Pause after solder dispensing." msgstr "Pauza dupa dispensarea de pastă de fludor." -#: flatcamGUI/FlatCAMGUI.py:6646 flatcamTools/ToolSolderPaste.py:260 +#: flatcamGUI/FlatCAMGUI.py:6625 flatcamTools/ToolSolderPaste.py:260 msgid "Spindle Speed REV:" msgstr "Viteza motor inapoi:" -#: flatcamGUI/FlatCAMGUI.py:6648 flatcamTools/ToolSolderPaste.py:262 +#: flatcamGUI/FlatCAMGUI.py:6627 flatcamTools/ToolSolderPaste.py:262 msgid "" "The dispenser speed while retracting solder paste\n" "through the dispenser nozzle." @@ -8902,11 +8892,11 @@ msgstr "" "Viteza motorului de dispensare in timp ce retrage pasta de fludor\n" "prin orificiul uneltei de dispensare." -#: flatcamGUI/FlatCAMGUI.py:6656 flatcamTools/ToolSolderPaste.py:269 +#: flatcamGUI/FlatCAMGUI.py:6635 flatcamTools/ToolSolderPaste.py:269 msgid "Dwell REV:" msgstr "Pauza dupa rev:" -#: flatcamGUI/FlatCAMGUI.py:6658 flatcamTools/ToolSolderPaste.py:271 +#: flatcamGUI/FlatCAMGUI.py:6637 flatcamTools/ToolSolderPaste.py:271 msgid "" "Pause after solder paste dispenser retracted,\n" "to allow pressure equilibrium." @@ -8914,23 +8904,23 @@ msgstr "" "Pauza dupa ce pasta de fludor a fost retrasă,\n" "necesară pt a ajunge la un echilibru al presiunilor." -#: flatcamGUI/FlatCAMGUI.py:6665 flatcamTools/ToolSolderPaste.py:277 +#: flatcamGUI/FlatCAMGUI.py:6644 flatcamTools/ToolSolderPaste.py:277 msgid "PostProcessors:" msgstr "Postprocesoare:" -#: flatcamGUI/FlatCAMGUI.py:6667 flatcamTools/ToolSolderPaste.py:279 +#: flatcamGUI/FlatCAMGUI.py:6646 flatcamTools/ToolSolderPaste.py:279 msgid "Files that control the GCode generation." msgstr "Fişiere care controlează generarea codului G-Code." -#: flatcamGUI/FlatCAMGUI.py:6697 flatcamGUI/FlatCAMGUI.py:6703 +#: flatcamGUI/FlatCAMGUI.py:6676 flatcamGUI/FlatCAMGUI.py:6682 msgid "Idle." msgstr "Inactiv." -#: flatcamGUI/FlatCAMGUI.py:6727 +#: flatcamGUI/FlatCAMGUI.py:6706 msgid "Application started ..." msgstr "Aplicaţia a pornit ..." -#: flatcamGUI/FlatCAMGUI.py:6728 +#: flatcamGUI/FlatCAMGUI.py:6707 msgid "Hello!" msgstr "Bună!" @@ -12232,6 +12222,14 @@ msgstr "" msgid "CNCJob objects can't be offseted." msgstr "Obiectele tip CNCJob nu pot fi deplasate." +#~ msgid "Tool dia: " +#~ msgstr "Dia Unealtă:" + +#~ msgid "" +#~ "The diameter of the cutting\n" +#~ "tool.." +#~ msgstr "Diametrul uneltei taietoare ..." + #~ msgid "Disable" #~ msgstr "Dezactivează" diff --git a/locale/ru/LC_MESSAGES/strings.mo b/locale/ru/LC_MESSAGES/strings.mo index 496bf459585179c6a6bcb10b352d2952d38645b0..185f7c2b25d395c8a29421071bfb02bccac772fc 100644 GIT binary patch literal 163041 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 diff --git a/locale/ru/LC_MESSAGES/strings.po b/locale/ru/LC_MESSAGES/strings.po index 999d4e7d..3069b2fe 100644 --- a/locale/ru/LC_MESSAGES/strings.po +++ b/locale/ru/LC_MESSAGES/strings.po @@ -5,8 +5,8 @@ msgid "" msgstr "" "Project-Id-Version: \n" -"POT-Creation-Date: 2019-06-09 17:10+0300\n" -"PO-Revision-Date: 2019-06-09 21:57+0400\n" +"POT-Creation-Date: 2019-06-22 16:43+0300\n" +"PO-Revision-Date: 2019-06-22 17:57+0300\n" "Last-Translator: Andrey Kultyapov \n" "Language-Team: \n" "Language: ru\n" @@ -14,10 +14,10 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Generated-By: pygettext.py 1.5\n" -"X-Generator: Poedit 2.0.6\n" +"X-Generator: Poedit 2.2.1\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "%10<=4 && (n%100<10 || n%100>=20) ? 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: doc\n" @@ -28,26 +28,26 @@ msgid "[ERROR] Could not find the Language files. The App strings are missing." msgstr "" "[ERROR] Не удалось найти языковые файлы. Строки приложения отсутствуют." -#: FlatCAMApp.py:2019 ObjectCollection.py:80 flatcamTools/ToolImage.py:213 +#: FlatCAMApp.py:2018 ObjectCollection.py:80 flatcamTools/ToolImage.py:213 #: flatcamTools/ToolPcbWizard.py:299 flatcamTools/ToolPcbWizard.py:322 msgid "Open cancelled." msgstr "Открытие завершено." -#: FlatCAMApp.py:2033 +#: FlatCAMApp.py:2032 msgid "Open Config file failed." msgstr "Не удалось открыть файл конфигурации." -#: FlatCAMApp.py:2047 +#: FlatCAMApp.py:2046 msgid "Open Script file failed." msgstr "Ошибка открытия файла сценария." -#: FlatCAMApp.py:2236 +#: FlatCAMApp.py:2235 msgid "[WARNING_NOTCL] Select a Geometry, Gerber or Excellon Object to edit." msgstr "" "[WARNING_NOTCL] Выберите объект Geometry, Gerber или Excellon для " "редактирования." -#: FlatCAMApp.py:2246 +#: FlatCAMApp.py:2245 msgid "" "[WARNING_NOTCL] Simultanoeus editing of tools geometry in a MultiGeo " "Geometry is not possible.\n" @@ -57,97 +57,97 @@ msgstr "" "невозможно.\n" "Редактируйте только одну геометрию за раз." -#: FlatCAMApp.py:2290 +#: FlatCAMApp.py:2289 msgid "[WARNING_NOTCL] Editor is activated ..." msgstr "[WARNING_NOTCL] Редактор активирован ..." -#: FlatCAMApp.py:2308 +#: FlatCAMApp.py:2307 msgid "Do you want to save the edited object?" msgstr "Вы хотите сохранить редактируемый объект?" -#: FlatCAMApp.py:2309 flatcamGUI/FlatCAMGUI.py:1618 +#: FlatCAMApp.py:2308 flatcamGUI/FlatCAMGUI.py:1618 msgid "Close Editor" msgstr "Закрыть редактор" -#: FlatCAMApp.py:2312 FlatCAMApp.py:3404 FlatCAMApp.py:5882 +#: FlatCAMApp.py:2311 FlatCAMApp.py:3403 FlatCAMApp.py:5908 #: FlatCAMTranslation.py:89 flatcamGUI/FlatCAMGUI.py:3730 msgid "Yes" msgstr "Да" -#: FlatCAMApp.py:2313 FlatCAMApp.py:3405 FlatCAMApp.py:5883 +#: FlatCAMApp.py:2312 FlatCAMApp.py:3404 FlatCAMApp.py:5909 #: FlatCAMTranslation.py:90 flatcamGUI/FlatCAMGUI.py:3731 msgid "No" msgstr "Нет" -#: FlatCAMApp.py:2314 FlatCAMApp.py:3406 FlatCAMApp.py:3738 FlatCAMApp.py:5884 +#: FlatCAMApp.py:2313 FlatCAMApp.py:3405 FlatCAMApp.py:3754 FlatCAMApp.py:5910 msgid "Cancel" msgstr "Отмена" -#: FlatCAMApp.py:2341 +#: FlatCAMApp.py:2340 msgid "[WARNING] Object empty after edit." msgstr "[WARNING] Объект пуст после редактирования." -#: FlatCAMApp.py:2363 FlatCAMApp.py:2382 FlatCAMApp.py:2394 +#: FlatCAMApp.py:2362 FlatCAMApp.py:2381 FlatCAMApp.py:2393 msgid "[WARNING_NOTCL] Select a Gerber, Geometry or Excellon Object to update." msgstr "" "[WARNING_NOTCL] Выберите объект Gerber, Geometry или Excellon для обновления." -#: FlatCAMApp.py:2366 +#: FlatCAMApp.py:2365 #, python-format msgid "[selected] %s is updated, returning to App..." msgstr "[selected] %s обновлён, возврат в приложение ..." -#: FlatCAMApp.py:2731 +#: FlatCAMApp.py:2730 msgid "[ERROR] Could not load defaults file." msgstr "[ERROR] Не удаётся загрузить файл настроек." -#: FlatCAMApp.py:2743 +#: FlatCAMApp.py:2742 msgid "[ERROR] Failed to parse defaults file." msgstr "[ERRORr] Не удаётся прочитать файл настроек." -#: FlatCAMApp.py:2764 FlatCAMApp.py:2768 +#: FlatCAMApp.py:2763 FlatCAMApp.py:2767 msgid "Import FlatCAM Preferences" msgstr "Импорт настроек FlatCAM" -#: FlatCAMApp.py:2774 +#: FlatCAMApp.py:2773 msgid "[WARNING_NOTCL] FlatCAM preferences import cancelled." msgstr "[WARNING_NOTCL] Импорт настроек FlatCAM отменен." -#: FlatCAMApp.py:2782 FlatCAMApp.py:2836 FlatCAMApp.py:3283 +#: FlatCAMApp.py:2781 FlatCAMApp.py:2835 FlatCAMApp.py:3282 msgid "[ERROR_NOTCL] Could not load defaults file." msgstr "[ERROR_NOTCL] Не удалось загрузить файл значений по умолчанию." -#: FlatCAMApp.py:2790 FlatCAMApp.py:3292 +#: FlatCAMApp.py:2789 FlatCAMApp.py:3291 msgid "[ERROR_NOTCL] Failed to parse defaults file." msgstr "[ERROR_NOTCL] Не удалось прочитать файл значений по умолчанию." -#: FlatCAMApp.py:2793 +#: FlatCAMApp.py:2792 #, python-format msgid "[success] Imported Defaults from %s" msgstr "[success] Значения по умолчанию импортированы из %s" -#: FlatCAMApp.py:2808 FlatCAMApp.py:2813 +#: FlatCAMApp.py:2807 FlatCAMApp.py:2812 msgid "Export FlatCAM Preferences" msgstr "Экспорт настроек FlatCAM" -#: FlatCAMApp.py:2820 +#: FlatCAMApp.py:2819 msgid "[WARNING_NOTCL] FlatCAM preferences export cancelled." msgstr "[WARNING_NOTCL] Экспорт настроек FlatCAM завершён." -#: FlatCAMApp.py:2855 FlatCAMApp.py:3337 +#: FlatCAMApp.py:2854 FlatCAMApp.py:3336 msgid "[ERROR_NOTCL] Failed to write defaults to file." msgstr "[ERROR_NOTCL] Не удалось записать значения по умолчанию в файл." -#: FlatCAMApp.py:2908 +#: FlatCAMApp.py:2907 msgid "[ERROR_NOTCL] Failed to open recent files file for writing." msgstr "[ERROR_NOTCL] Не удалось открыть файл истории файлов для записи." -#: FlatCAMApp.py:2985 camlib.py:4443 +#: FlatCAMApp.py:2984 camlib.py:4457 msgid "[ERROR_NOTCL] An internal error has ocurred. See shell.\n" msgstr "" "[ERROR_NOTCL] Произошла внутренняя ошибка. Посмотрите в командную строку.\n" -#: FlatCAMApp.py:2986 +#: FlatCAMApp.py:2985 #, python-brace-format msgid "" "Object ({kind}) failed because: {error} \n" @@ -156,11 +156,11 @@ msgstr "" "Объект ({kind}) не выполнен, потому что: {error} \n" "\n" -#: FlatCAMApp.py:3006 +#: FlatCAMApp.py:3005 msgid "Converting units to " msgstr "Конвертирование единиц в " -#: FlatCAMApp.py:3085 FlatCAMApp.py:3088 FlatCAMApp.py:3091 FlatCAMApp.py:3094 +#: FlatCAMApp.py:3084 FlatCAMApp.py:3087 FlatCAMApp.py:3090 FlatCAMApp.py:3093 #, python-brace-format msgid "" "[selected] {kind} created/selected: {name}{name}" -#: FlatCAMApp.py:3188 +#: FlatCAMApp.py:3187 #, python-brace-format msgid "" "FlatCAM
Version {version} {beta} ({date}) - " @@ -191,31 +191,31 @@ msgstr "" "a>
ЗАГРУЗИТЬ можно отсюда.
" -#: FlatCAMApp.py:3341 +#: FlatCAMApp.py:3340 msgid "[success] Defaults saved." msgstr "[success] Значения по умолчанию сохранены." -#: FlatCAMApp.py:3362 +#: FlatCAMApp.py:3361 msgid "[ERROR_NOTCL] Could not load factory defaults file." msgstr "[ERROR_NOTCL] Не удалось загрузить файл с исходными значениями." -#: FlatCAMApp.py:3371 +#: FlatCAMApp.py:3370 msgid "[ERROR_NOTCL] Failed to parse factory defaults file." msgstr "[ERROR_NOTCL] Не удалось прочитать файл с исходными значениями." -#: FlatCAMApp.py:3385 +#: FlatCAMApp.py:3384 msgid "[ERROR_NOTCL] Failed to write factory defaults to file." msgstr "[ERROR_NOTCL] Не удалось записать исходные значения в файл." -#: FlatCAMApp.py:3389 +#: FlatCAMApp.py:3388 msgid "Factory defaults saved." msgstr "Исходные значения сохранены." -#: FlatCAMApp.py:3394 flatcamGUI/FlatCAMGUI.py:3106 +#: FlatCAMApp.py:3393 flatcamGUI/FlatCAMGUI.py:3106 msgid "[WARNING_NOTCL] Application is saving the project. Please wait ..." msgstr "[WARNING_NOTCL] Приложение сохраняет проект. Пожалуйста, подождите ..." -#: FlatCAMApp.py:3399 +#: FlatCAMApp.py:3398 msgid "" "There are files/objects modified in FlatCAM. \n" "Do you want to Save the project?" @@ -223,11 +223,11 @@ msgstr "" "Есть файлы/объекты, измененные в FlatCAM.\n" "Вы хотите сохранить проект?" -#: FlatCAMApp.py:3402 FlatCAMApp.py:5880 +#: FlatCAMApp.py:3401 FlatCAMApp.py:5906 msgid "Save changes" msgstr "Сохранить изменения" -#: FlatCAMApp.py:3469 +#: FlatCAMApp.py:3468 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 " @@ -243,70 +243,70 @@ msgstr "" "потеряна, и результат может не соответствовать ожидаемому. \n" "Проверьте сгенерированный GCODE." -#: FlatCAMApp.py:3510 +#: FlatCAMApp.py:3509 msgid "[ERROR_NOTCL] Failed. Excellon joining works only on Excellon objects." msgstr "" "[ERROR_NOTCL] Неудача. Присоединение Excellon работает только на объектах " "Excellon." -#: FlatCAMApp.py:3532 +#: FlatCAMApp.py:3531 msgid "[ERROR_NOTCL] Failed. Gerber joining works only on Gerber objects." msgstr "" "[ERROR_NOTCL] Неудача. Объединение Gerber работает только на объектах Gerber." -#: FlatCAMApp.py:3547 FlatCAMApp.py:3572 +#: FlatCAMApp.py:3546 FlatCAMApp.py:3571 msgid "[ERROR_NOTCL] Failed. Select a Geometry Object and try again." msgstr "[ERROR_NOTCL] Неудалось. Выберите объект Geometry и попробуйте снова." -#: FlatCAMApp.py:3551 FlatCAMApp.py:3576 +#: FlatCAMApp.py:3550 FlatCAMApp.py:3575 #, python-format msgid "[ERROR_NOTCL] Expected a FlatCAMGeometry, got %s" msgstr "[ERROR_NOTCL] Ожидается FlatCAMGeometry, получено %s" -#: FlatCAMApp.py:3564 +#: FlatCAMApp.py:3563 msgid "[success] A Geometry object was converted to MultiGeo type." msgstr "[success] Объект Geometry был преобразован в тип MultiGeo." -#: FlatCAMApp.py:3590 +#: FlatCAMApp.py:3589 msgid "[success] A Geometry object was converted to SingleGeo type." msgstr "[success] Объект Geometry был преобразован в тип SingleGeo." -#: FlatCAMApp.py:3737 FlatCAMApp.py:4573 FlatCAMApp.py:6155 FlatCAMApp.py:6166 -#: FlatCAMApp.py:6406 FlatCAMApp.py:6416 +#: FlatCAMApp.py:3753 FlatCAMApp.py:4593 FlatCAMApp.py:6181 FlatCAMApp.py:6192 +#: FlatCAMApp.py:6432 FlatCAMApp.py:6442 msgid "Ok" msgstr "Да" -#: FlatCAMApp.py:3779 +#: FlatCAMApp.py:3799 #, python-format msgid "[success] Converted units to %s" msgstr "[success] Конвертирование единиц в %s" -#: FlatCAMApp.py:3790 +#: FlatCAMApp.py:3810 msgid "[WARNING_NOTCL] Units conversion cancelled." msgstr "[WARNING_NOTCL] Преобразование единиц завершено." -#: FlatCAMApp.py:4442 +#: FlatCAMApp.py:4462 msgid "Open file" msgstr "Открыть файл" -#: FlatCAMApp.py:4473 FlatCAMApp.py:4478 +#: FlatCAMApp.py:4493 FlatCAMApp.py:4498 msgid "Export G-Code ..." msgstr "Экспорт G-Code …" -#: FlatCAMApp.py:4481 +#: FlatCAMApp.py:4501 msgid "[WARNING_NOTCL] Export Code cancelled." msgstr "[WARNING_NOTCL] Экспорт Code завершён." -#: FlatCAMApp.py:4491 +#: FlatCAMApp.py:4511 msgid "[WARNING] No such file or directory" msgstr "[WARNING] Нет такого файла или каталога" -#: FlatCAMApp.py:4498 +#: FlatCAMApp.py:4518 #, python-format msgid "Saved to: %s" msgstr "Сохранёно в: %s" -#: FlatCAMApp.py:4561 FlatCAMApp.py:4594 FlatCAMApp.py:4605 FlatCAMApp.py:4616 +#: FlatCAMApp.py:4581 FlatCAMApp.py:4614 FlatCAMApp.py:4625 FlatCAMApp.py:4636 #: flatcamTools/ToolNonCopperClear.py:489 flatcamTools/ToolSolderPaste.py:765 msgid "" "[WARNING_NOTCL] Please enter a tool diameter with non-zero value, in Float " @@ -315,12 +315,12 @@ msgstr "" "[WARNING_NOTCL] Пожалуйста, введите диаметр инструмента с ненулевым " "значением в float формате." -#: FlatCAMApp.py:4566 FlatCAMApp.py:4599 FlatCAMApp.py:4610 FlatCAMApp.py:4621 +#: FlatCAMApp.py:4586 FlatCAMApp.py:4619 FlatCAMApp.py:4630 FlatCAMApp.py:4641 #: flatcamGUI/FlatCAMGUI.py:3001 msgid "[WARNING_NOTCL] Adding Tool cancelled ..." msgstr "[WARNING_NOTCL] Добавление инструмента завершено ..." -#: FlatCAMApp.py:4569 +#: FlatCAMApp.py:4589 msgid "" "Adding Tool works only when Advanced is checked.\n" "Go to Preferences -> General - Show Advanced Options." @@ -329,128 +329,129 @@ msgstr "" "«Дополнительно».\n" "Перейдите в Настройки -> Основные парам. - Показать дополнительные параметры." -#: FlatCAMApp.py:4682 +#: FlatCAMApp.py:4702 msgid "Object(s) deleted ..." msgstr "Объект(ы) удален ..." -#: FlatCAMApp.py:4686 +#: FlatCAMApp.py:4706 msgid "Failed. No object(s) selected..." msgstr "Нудача. Объекты не выбраны ..." -#: FlatCAMApp.py:4688 +#: FlatCAMApp.py:4708 msgid "Save the work in Editor and try again ..." msgstr "Сохраните работу в редакторе и попробуйте снова ..." -#: FlatCAMApp.py:4701 +#: FlatCAMApp.py:4721 msgid "Click to set the origin ..." msgstr "Кликните, чтобы указать начало ..." -#: FlatCAMApp.py:4713 +#: FlatCAMApp.py:4733 msgid "Jump to ..." msgstr "Перейти к ..." -#: FlatCAMApp.py:4714 +#: FlatCAMApp.py:4734 msgid "Enter the coordinates in format X,Y:" msgstr "Введите координаты в формате X, Y:" -#: FlatCAMApp.py:4721 +#: FlatCAMApp.py:4741 msgid "Wrong coordinates. Enter coordinates in format: X,Y" msgstr "Неверные координаты. Введите координаты в формате: X, Y" -#: FlatCAMApp.py:4739 flatcamEditors/FlatCAMExcEditor.py:2320 +#: FlatCAMApp.py:4759 flatcamEditors/FlatCAMExcEditor.py:2320 #: flatcamEditors/FlatCAMExcEditor.py:2327 -#: flatcamEditors/FlatCAMGeoEditor.py:3645 -#: flatcamEditors/FlatCAMGeoEditor.py:3659 +#: flatcamEditors/FlatCAMGeoEditor.py:3648 +#: flatcamEditors/FlatCAMGeoEditor.py:3662 #: flatcamEditors/FlatCAMGrbEditor.py:1040 #: flatcamEditors/FlatCAMGrbEditor.py:1141 #: flatcamEditors/FlatCAMGrbEditor.py:1409 #: flatcamEditors/FlatCAMGrbEditor.py:1666 -#: flatcamEditors/FlatCAMGrbEditor.py:3950 -#: flatcamEditors/FlatCAMGrbEditor.py:3964 flatcamGUI/FlatCAMGUI.py:2414 +#: flatcamEditors/FlatCAMGrbEditor.py:3960 +#: flatcamEditors/FlatCAMGrbEditor.py:3974 flatcamGUI/FlatCAMGUI.py:2414 #: flatcamGUI/FlatCAMGUI.py:2426 msgid "[success] Done." msgstr "[success] Готово." -#: FlatCAMApp.py:4871 FlatCAMApp.py:4938 +#: FlatCAMApp.py:4891 FlatCAMApp.py:4958 msgid "[WARNING_NOTCL] No object is selected. Select an object and try again." msgstr "[WARNING_NOTCL] Объект не выбран. Выберите объект и попробуйте снова." -#: FlatCAMApp.py:4979 +#: FlatCAMApp.py:4999 msgid "[success] Origin set ..." msgstr "[success] Начало установлено ..." -#: FlatCAMApp.py:4999 +#: FlatCAMApp.py:5019 msgid "Preferences" msgstr "Настройки" -#: FlatCAMApp.py:5019 +#: FlatCAMApp.py:5039 msgid "[WARNING_NOTCL] No object selected to Flip on Y axis." msgstr "[WARNING_NOTCL] Не выбран объект для отражения по оси Y." -#: FlatCAMApp.py:5044 +#: FlatCAMApp.py:5064 msgid "[success] Flip on Y axis done." msgstr "[success] Отражение по оси Y завершено." -#: FlatCAMApp.py:5046 FlatCAMApp.py:5086 +#: FlatCAMApp.py:5066 FlatCAMApp.py:5106 #: flatcamEditors/FlatCAMGeoEditor.py:1355 -#: flatcamEditors/FlatCAMGrbEditor.py:5331 flatcamTools/ToolTransform.py:748 +#: flatcamEditors/FlatCAMGrbEditor.py:5343 flatcamTools/ToolTransform.py:748 #, python-format msgid "[ERROR_NOTCL] Due of %s, Flip action was not executed." msgstr "[ERROR_NOTCL] Из-за %s, операция переворота не была выполнена." -#: FlatCAMApp.py:5059 +#: FlatCAMApp.py:5079 msgid "[WARNING_NOTCL] No object selected to Flip on X axis." msgstr "[WARNING_NOTCL] Не выбран объект для отражения по оси Х." -#: FlatCAMApp.py:5084 +#: FlatCAMApp.py:5104 msgid "[success] Flip on X axis done." msgstr "[success] Отражение по оси Х завершено." -#: FlatCAMApp.py:5099 +#: FlatCAMApp.py:5119 msgid "[WARNING_NOTCL] No object selected to Rotate." msgstr "[WARNING_NOTCL] Не выбран ни один объект для вращения." -#: FlatCAMApp.py:5102 FlatCAMApp.py:5147 FlatCAMApp.py:5178 +#: FlatCAMApp.py:5122 FlatCAMApp.py:5167 FlatCAMApp.py:5198 msgid "Transform" msgstr "Трансформация" -#: FlatCAMApp.py:5102 FlatCAMApp.py:5147 FlatCAMApp.py:5178 +#: FlatCAMApp.py:5122 FlatCAMApp.py:5167 FlatCAMApp.py:5198 msgid "Enter the Angle value:" msgstr "Введите значение угла:" -#: FlatCAMApp.py:5132 +#: FlatCAMApp.py:5152 msgid "[success] Rotation done." msgstr "[success] Вращение завершено." -#: FlatCAMApp.py:5134 flatcamEditors/FlatCAMGeoEditor.py:1298 -#: flatcamEditors/FlatCAMGrbEditor.py:5262 flatcamTools/ToolTransform.py:677 +#: FlatCAMApp.py:5154 flatcamEditors/FlatCAMGeoEditor.py:1298 +#: flatcamEditors/FlatCAMGrbEditor.py:5272 flatcamTools/ToolTransform.py:677 #, python-format msgid "[ERROR_NOTCL] Due of %s, rotation movement was not executed." msgstr "[ERROR_NOTCL] Из-за %s вращение не было выполнено." -#: FlatCAMApp.py:5145 +#: FlatCAMApp.py:5165 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on X axis." msgstr "[WARNING_NOTCL] Не выбран ни один объект для наклона/сдвига по оси X." -#: FlatCAMApp.py:5166 +#: FlatCAMApp.py:5186 msgid "[success] Skew on X axis done." msgstr "[success] Наклон по оси X выполнен." -#: FlatCAMApp.py:5176 +#: FlatCAMApp.py:5196 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on Y axis." msgstr "" +"[WARNING_NOTCL] Нет объекта, выбранного для перекоса / сдвига по оси Y." -#: FlatCAMApp.py:5197 +#: FlatCAMApp.py:5217 msgid "[success] Skew on Y axis done." -msgstr "" +msgstr "[success] Наклон по оси Y сделано." -#: FlatCAMApp.py:5266 +#: FlatCAMApp.py:5287 msgid "Grid On/Off" msgstr "Сетка вкл/откл" -#: FlatCAMApp.py:5279 flatcamEditors/FlatCAMGeoEditor.py:937 +#: FlatCAMApp.py:5300 flatcamEditors/FlatCAMGeoEditor.py:937 #: flatcamEditors/FlatCAMGrbEditor.py:2381 -#: flatcamEditors/FlatCAMGrbEditor.py:4853 flatcamGUI/ObjectUI.py:991 +#: flatcamEditors/FlatCAMGrbEditor.py:4861 flatcamGUI/ObjectUI.py:991 #: flatcamTools/ToolDblSided.py:160 flatcamTools/ToolDblSided.py:208 #: flatcamTools/ToolNonCopperClear.py:134 flatcamTools/ToolPaint.py:131 #: flatcamTools/ToolSolderPaste.py:115 flatcamTools/ToolSolderPaste.py:479 @@ -458,7 +459,7 @@ msgstr "Сетка вкл/откл" msgid "Add" msgstr "Добавить" -#: FlatCAMApp.py:5280 FlatCAMObj.py:3306 +#: FlatCAMApp.py:5301 FlatCAMObj.py:3296 #: flatcamEditors/FlatCAMGrbEditor.py:2386 flatcamGUI/FlatCAMGUI.py:527 #: flatcamGUI/FlatCAMGUI.py:724 flatcamGUI/FlatCAMGUI.py:1616 #: flatcamGUI/FlatCAMGUI.py:1953 flatcamGUI/ObjectUI.py:1007 @@ -467,15 +468,15 @@ msgstr "Добавить" msgid "Delete" msgstr "Удалить" -#: FlatCAMApp.py:5293 +#: FlatCAMApp.py:5314 msgid "New Grid ..." msgstr "Новая сетка ..." -#: FlatCAMApp.py:5294 +#: FlatCAMApp.py:5315 msgid "Enter a Grid Value:" msgstr "Введите размер сетки:" -#: FlatCAMApp.py:5302 FlatCAMApp.py:5329 +#: FlatCAMApp.py:5323 FlatCAMApp.py:5350 msgid "" "[WARNING_NOTCL] Please enter a grid value with non-zero value, in Float " "format." @@ -483,48 +484,53 @@ msgstr "" "[WARNING_NOTCL] Пожалуйста, введите значение сетки с ненулевым значением в " "float формате." -#: FlatCAMApp.py:5308 +#: FlatCAMApp.py:5329 msgid "[success] New Grid added ..." msgstr "[success] Новая сетка добавлена ..." -#: FlatCAMApp.py:5311 +#: FlatCAMApp.py:5332 msgid "[WARNING_NOTCL] Grid already exists ..." -msgstr "" +msgstr "[WARNING_NOTCL] Сетка уже существует ..." -#: FlatCAMApp.py:5314 +#: FlatCAMApp.py:5335 msgid "[WARNING_NOTCL] Adding New Grid cancelled ..." -msgstr "" +msgstr "[WARNING_NOTCL] Добавление новой сетки отменено ..." -#: FlatCAMApp.py:5336 +#: FlatCAMApp.py:5357 msgid "[ERROR_NOTCL] Grid Value does not exist ..." -msgstr "" +msgstr "[ERROR_NOTCL] Значение сетки не существует ..." -#: FlatCAMApp.py:5339 +#: FlatCAMApp.py:5360 msgid "[success] Grid Value deleted ..." -msgstr "" +msgstr "[success] Значение сетки удалено ..." -#: FlatCAMApp.py:5342 +#: FlatCAMApp.py:5363 msgid "[WARNING_NOTCL] Delete Grid value cancelled ..." -msgstr "" +msgstr "[WARNING_NOTCL] Удалить отмененное значение сетки ..." -#: FlatCAMApp.py:5381 +#: FlatCAMApp.py:5402 msgid "[WARNING_NOTCL] No object selected to copy it's name" -msgstr "" +msgstr "[WARNING_NOTCL] Нет объекта, выбранного для копирования его имени." -#: FlatCAMApp.py:5385 +#: FlatCAMApp.py:5406 msgid "Name copied on clipboard ..." msgstr "Имя скопировано в буфер обмена ..." -#: FlatCAMApp.py:5678 FlatCAMApp.py:5681 FlatCAMApp.py:5684 FlatCAMApp.py:5687 -#: FlatCAMApp.py:5702 FlatCAMApp.py:5705 FlatCAMApp.py:5708 FlatCAMApp.py:5711 -#: FlatCAMApp.py:5751 FlatCAMApp.py:5754 FlatCAMApp.py:5757 FlatCAMApp.py:5760 +#: FlatCAMApp.py:5448 flatcamEditors/FlatCAMGrbEditor.py:3901 +#| msgid "Name copied on clipboard ..." +msgid "[success] Coordinates copied to clipboard." +msgstr "[success] Координаты копируются в буфер обмена." + +#: FlatCAMApp.py:5704 FlatCAMApp.py:5707 FlatCAMApp.py:5710 FlatCAMApp.py:5713 +#: FlatCAMApp.py:5728 FlatCAMApp.py:5731 FlatCAMApp.py:5734 FlatCAMApp.py:5737 +#: FlatCAMApp.py:5777 FlatCAMApp.py:5780 FlatCAMApp.py:5783 FlatCAMApp.py:5786 #: ObjectCollection.py:719 ObjectCollection.py:722 ObjectCollection.py:725 #: ObjectCollection.py:728 #, python-brace-format msgid "[selected]{name} selected" msgstr "[selected]{name} выбран" -#: FlatCAMApp.py:5877 +#: FlatCAMApp.py:5903 msgid "" "There are files/objects opened in FlatCAM.\n" "Creating a New project will delete them.\n" @@ -534,216 +540,231 @@ msgstr "" "Создание нового проекта удалит их.\n" "Вы хотите сохранить проект?" -#: FlatCAMApp.py:5898 +#: FlatCAMApp.py:5924 msgid "[success] New Project created..." msgstr "[success] Новый проект создан ..." -#: FlatCAMApp.py:6014 FlatCAMApp.py:6017 flatcamGUI/FlatCAMGUI.py:608 +#: FlatCAMApp.py:6040 FlatCAMApp.py:6043 flatcamGUI/FlatCAMGUI.py:608 #: flatcamGUI/FlatCAMGUI.py:1832 msgid "Open Gerber" msgstr "Открыть Gerber" -#: FlatCAMApp.py:6022 +#: FlatCAMApp.py:6048 msgid "[WARNING_NOTCL] Open Gerber cancelled." -msgstr "" +msgstr "[WARNING_NOTCL] Открытый Gerber отменен." -#: FlatCAMApp.py:6043 FlatCAMApp.py:6046 flatcamGUI/FlatCAMGUI.py:609 +#: FlatCAMApp.py:6069 FlatCAMApp.py:6072 flatcamGUI/FlatCAMGUI.py:609 #: flatcamGUI/FlatCAMGUI.py:1833 msgid "Open Excellon" msgstr "Открыть Excellon" -#: FlatCAMApp.py:6051 +#: FlatCAMApp.py:6077 msgid "[WARNING_NOTCL] Open Excellon cancelled." -msgstr "" +msgstr "[WARNING_NOTCL] Открытый Excellon отменен." -#: FlatCAMApp.py:6073 FlatCAMApp.py:6076 +#: FlatCAMApp.py:6099 FlatCAMApp.py:6102 msgid "Open G-Code" msgstr "Открыть G-Code" -#: FlatCAMApp.py:6081 +#: FlatCAMApp.py:6107 msgid "[WARNING_NOTCL] Open G-Code cancelled." -msgstr "" +msgstr "[WARNING_NOTCL] Открытый G-код отменен." -#: FlatCAMApp.py:6099 FlatCAMApp.py:6102 +#: FlatCAMApp.py:6125 FlatCAMApp.py:6128 msgid "Open Project" msgstr "Открыть проект" -#: FlatCAMApp.py:6110 +#: FlatCAMApp.py:6136 msgid "[WARNING_NOTCL] Open Project cancelled." -msgstr "" +msgstr "[WARNING_NOTCL] Открытый проект отменен." -#: FlatCAMApp.py:6129 FlatCAMApp.py:6132 +#: FlatCAMApp.py:6155 FlatCAMApp.py:6158 msgid "Open Configuration File" msgstr "Открыть файл конфигурации" -#: FlatCAMApp.py:6136 +#: FlatCAMApp.py:6162 msgid "[WARNING_NOTCL] Open Config cancelled." msgstr "[WARNING_NOTCL] Открытие конфигурации завершено." -#: FlatCAMApp.py:6151 FlatCAMApp.py:6402 FlatCAMApp.py:8552 FlatCAMApp.py:8572 -#: FlatCAMApp.py:8593 FlatCAMApp.py:8615 +#: FlatCAMApp.py:6177 FlatCAMApp.py:6428 FlatCAMApp.py:8581 FlatCAMApp.py:8601 +#: FlatCAMApp.py:8622 FlatCAMApp.py:8644 msgid "[WARNING_NOTCL] No object selected." msgstr "[WARNING_NOTCL] Нет выбранных объектов." -#: FlatCAMApp.py:6152 FlatCAMApp.py:6403 +#: FlatCAMApp.py:6178 FlatCAMApp.py:6429 msgid "Please Select a Geometry object to export" msgstr "Выберите объект Geometry для экспорта" -#: FlatCAMApp.py:6163 +#: FlatCAMApp.py:6189 msgid "[ERROR_NOTCL] Only Geometry, Gerber and CNCJob objects can be used." msgstr "" +"[ERROR_NOTCL] Можно использовать только объекты Geometry, Gerber и CNC " +"работа." -#: FlatCAMApp.py:6176 FlatCAMApp.py:6180 +#: FlatCAMApp.py:6202 FlatCAMApp.py:6206 msgid "Export SVG" msgstr "Экспорт SVG" -#: FlatCAMApp.py:6185 +#: FlatCAMApp.py:6211 msgid "[WARNING_NOTCL] Export SVG cancelled." -msgstr "" +msgstr "[WARNING_NOTCL] Экспорт SVG отменен." -#: FlatCAMApp.py:6204 +#: FlatCAMApp.py:6230 msgid "[[WARNING_NOTCL]] Data must be a 3D array with last dimension 3 or 4" msgstr "" +"[[WARNING_NOTCL]] Данные должны быть 3D массивом с последним размером 3 или 4" -#: FlatCAMApp.py:6210 FlatCAMApp.py:6214 +#: FlatCAMApp.py:6236 FlatCAMApp.py:6240 msgid "Export PNG Image" msgstr "Экспорт PNG изображения" -#: FlatCAMApp.py:6219 +#: FlatCAMApp.py:6245 msgid "Export PNG cancelled." msgstr "Экспорт PNG завершён." -#: FlatCAMApp.py:6238 +#: FlatCAMApp.py:6264 msgid "" "[WARNING_NOTCL] No object selected. Please select an Gerber object to export." msgstr "" "[WARNING_NOTCL] Нет выбранных объектов. Пожалуйста, выберите Gerber объект " "для экспорта." -#: FlatCAMApp.py:6243 FlatCAMApp.py:6366 +#: FlatCAMApp.py:6269 FlatCAMApp.py:6392 msgid "" "[ERROR_NOTCL] Failed. Only Gerber objects can be saved as Gerber files..." msgstr "" +"[ERROR_NOTCL] Неудачный. Только объекты Gerber могут быть сохранены как " +"файлы Gerber..." -#: FlatCAMApp.py:6255 +#: FlatCAMApp.py:6281 msgid "Save Gerber source file" msgstr "Сохранить исходный файл Gerber" -#: FlatCAMApp.py:6260 +#: FlatCAMApp.py:6286 msgid "[WARNING_NOTCL] Save Gerber source file cancelled." -msgstr "" +msgstr "[WARNING_NOTCL] Сохранить исходный файл Gerber отменено." -#: FlatCAMApp.py:6279 +#: FlatCAMApp.py:6305 msgid "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." msgstr "" +"[WARNING_NOTCL] Объект не выбран. Пожалуйста, выберите отличный объект для " +"экспорта." -#: FlatCAMApp.py:6284 FlatCAMApp.py:6325 +#: FlatCAMApp.py:6310 FlatCAMApp.py:6351 msgid "" "[ERROR_NOTCL] Failed. Only Excellon objects can be saved as Excellon files..." msgstr "" +"[ERROR_NOTCL] Неудачный. Только объекты Excellon могут быть сохранены как " +"файлы Excellon..." -#: FlatCAMApp.py:6292 FlatCAMApp.py:6296 +#: FlatCAMApp.py:6318 FlatCAMApp.py:6322 msgid "Save Excellon source file" msgstr "Сохранить исходный файл Excellon" -#: FlatCAMApp.py:6301 +#: FlatCAMApp.py:6327 msgid "[WARNING_NOTCL] Saving Excellon source file cancelled." -msgstr "" +msgstr "[WARNING_NOTCL] Сохранение исходного файла Excellon отменено." -#: FlatCAMApp.py:6320 +#: FlatCAMApp.py:6346 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." msgstr "" +"[WARNING_NOTCL] Объект не выбран. Пожалуйста, выберите отличный объект для " +"экспорта." -#: FlatCAMApp.py:6333 FlatCAMApp.py:6337 +#: FlatCAMApp.py:6359 FlatCAMApp.py:6363 msgid "Export Excellon" msgstr "Экспорт Excellon" -#: FlatCAMApp.py:6342 +#: FlatCAMApp.py:6368 msgid "[WARNING_NOTCL] Export Excellon cancelled." -msgstr "" +msgstr "[WARNING_NOTCL] Экспорт Excellon отменен." -#: FlatCAMApp.py:6361 +#: FlatCAMApp.py:6387 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Gerber object to export." msgstr "" "[WARNING_NOTCL] Нет выбранных объектов. Пожалуйста, выберите Gerber объект " "для экспорта." -#: FlatCAMApp.py:6374 FlatCAMApp.py:6378 +#: FlatCAMApp.py:6400 FlatCAMApp.py:6404 msgid "Export Gerber" msgstr "Экспорт Gerber" -#: FlatCAMApp.py:6383 +#: FlatCAMApp.py:6409 msgid "[WARNING_NOTCL] Export Gerber cancelled." -msgstr "" +msgstr "[WARNING_NOTCL] Экспорт Гербера отменен." -#: FlatCAMApp.py:6413 +#: FlatCAMApp.py:6439 msgid "[ERROR_NOTCL] Only Geometry objects can be used." -msgstr "" +msgstr "[ERROR_NOTCL] Можно использовать только геометрические объекты." -#: FlatCAMApp.py:6427 FlatCAMApp.py:6431 +#: FlatCAMApp.py:6453 FlatCAMApp.py:6457 msgid "Export DXF" msgstr "Экспорт DXF" -#: FlatCAMApp.py:6437 +#: FlatCAMApp.py:6463 msgid "[WARNING_NOTCL] Export DXF cancelled." -msgstr "" +msgstr "[WARNING_NOTCL] Экспорт DXF отменен." -#: FlatCAMApp.py:6457 FlatCAMApp.py:6460 +#: FlatCAMApp.py:6483 FlatCAMApp.py:6486 msgid "Import SVG" msgstr "Импорт SVG" -#: FlatCAMApp.py:6469 +#: FlatCAMApp.py:6495 msgid "[WARNING_NOTCL] Open SVG cancelled." -msgstr "" +msgstr "[WARNING_NOTCL] Открытие СВГ отменен." -#: FlatCAMApp.py:6488 FlatCAMApp.py:6492 +#: FlatCAMApp.py:6514 FlatCAMApp.py:6518 msgid "Import DXF" msgstr "Импорт DXF" -#: FlatCAMApp.py:6501 +#: FlatCAMApp.py:6527 msgid "[WARNING_NOTCL] Open DXF cancelled." -msgstr "" +msgstr "[WARNING_NOTCL] Открытие DXF отменено." -#: FlatCAMApp.py:6519 +#: FlatCAMApp.py:6545 #, python-format msgid "%s" msgstr "%s" -#: FlatCAMApp.py:6539 +#: FlatCAMApp.py:6565 msgid "" "[WARNING_NOTCL] Select an Gerber or Excellon file to view it's source file." msgstr "" +"[WARNING_NOTCL] Выберите файл Gerber или Excellon для просмотра исходного " +"файла." -#: FlatCAMApp.py:6546 +#: FlatCAMApp.py:6572 msgid "" "[WARNING_NOTCL] There is no selected object for which to see it's source " "file code." msgstr "" +"[WARNING_NOTCL] Нет выбранного объекта, для которого можно увидеть исходный " +"код файла." -#: FlatCAMApp.py:6554 +#: FlatCAMApp.py:6580 msgid "Source Editor" msgstr "Редактор исходного кода" -#: FlatCAMApp.py:6564 +#: FlatCAMApp.py:6590 #, python-format msgid "[ERROR]App.on_view_source() -->%s" -msgstr "" +msgstr "[ERROR] Приложение.on_view_source() -->%s" -#: FlatCAMApp.py:6576 FlatCAMApp.py:7718 FlatCAMObj.py:5587 +#: FlatCAMApp.py:6602 FlatCAMApp.py:7744 FlatCAMObj.py:5581 #: flatcamTools/ToolSolderPaste.py:1278 msgid "Code Editor" msgstr "Редактор кода" -#: FlatCAMApp.py:6588 +#: FlatCAMApp.py:6614 msgid "Script Editor" msgstr "Редактор сценариев" -#: FlatCAMApp.py:6591 +#: FlatCAMApp.py:6617 msgid "" "#\n" "# CREATE A NEW FLATCAM TCL SCRIPT\n" @@ -787,216 +808,225 @@ msgstr "" "#\n" "\n" -#: FlatCAMApp.py:6614 FlatCAMApp.py:6617 +#: FlatCAMApp.py:6640 FlatCAMApp.py:6643 msgid "Open TCL script" msgstr "Открыть сценарий TCL" -#: FlatCAMApp.py:6625 +#: FlatCAMApp.py:6651 msgid "[WARNING_NOTCL] Open TCL script cancelled." -msgstr "" +msgstr "[WARNING_NOTCL] Открытый сценарий TCL отменен." -#: FlatCAMApp.py:6637 +#: FlatCAMApp.py:6663 #, python-format msgid "[ERROR]App.on_fileopenscript() -->%s" -msgstr "" +msgstr "[ERROR]App.on_fileopenscript() -->%s" -#: FlatCAMApp.py:6663 FlatCAMApp.py:6666 +#: FlatCAMApp.py:6689 FlatCAMApp.py:6692 msgid "Run TCL script" msgstr "Запустить сценарий TCL" -#: FlatCAMApp.py:6674 +#: FlatCAMApp.py:6700 msgid "[WARNING_NOTCL] Run TCL script cancelled." -msgstr "" +msgstr "[WARNING_NOTCL] Запуск скрипта отменен." -#: FlatCAMApp.py:6724 FlatCAMApp.py:6728 +#: FlatCAMApp.py:6750 FlatCAMApp.py:6754 msgid "Save Project As ..." msgstr "Сохранить проект как..." -#: FlatCAMApp.py:6725 +#: FlatCAMApp.py:6751 #, python-brace-format msgid "{l_save}/Project_{date}" msgstr "{l_save}/Project_{date}" -#: FlatCAMApp.py:6733 +#: FlatCAMApp.py:6759 msgid "[WARNING_NOTCL] Save Project cancelled." -msgstr "" +msgstr "[WARNING_NOTCL] Сохранить проект отменен." -#: FlatCAMApp.py:6777 +#: FlatCAMApp.py:6803 msgid "Exporting SVG" msgstr "Экспортирование SVG" -#: FlatCAMApp.py:6811 FlatCAMApp.py:6917 FlatCAMApp.py:7032 +#: FlatCAMApp.py:6837 FlatCAMApp.py:6943 FlatCAMApp.py:7058 #, python-format msgid "[success] SVG file exported to %s" -msgstr "" +msgstr "[success] SVG-файл экспортируется в %s" -#: FlatCAMApp.py:6842 FlatCAMApp.py:6963 +#: FlatCAMApp.py:6868 FlatCAMApp.py:6989 #, python-format msgid "[WARNING_NOTCL] No object Box. Using instead %s" -msgstr "" +msgstr "[WARNING_NOTCL] Нет поле объекта. Использование вместо %s" -#: FlatCAMApp.py:6920 FlatCAMApp.py:7035 +#: FlatCAMApp.py:6946 FlatCAMApp.py:7061 msgid "Generating Film ... Please wait." msgstr "Создание фильма ... Пожалуйста, подождите." -#: FlatCAMApp.py:7183 +#: FlatCAMApp.py:7209 #, python-format msgid "[success] Excellon file exported to %s" -msgstr "" +msgstr "[success] Файл Excellon экспортируется в %s" -#: FlatCAMApp.py:7190 +#: FlatCAMApp.py:7216 msgid "Exporting Excellon" msgstr "Экспорт Excellon" -#: FlatCAMApp.py:7195 FlatCAMApp.py:7202 +#: FlatCAMApp.py:7221 FlatCAMApp.py:7228 msgid "[ERROR_NOTCL] Could not export Excellon file." -msgstr "" +msgstr "[ERROR_NOTCL] Не удалось экспортировать файл Excellon." -#: FlatCAMApp.py:7300 +#: FlatCAMApp.py:7326 #, python-format msgid "[success] Gerber file exported to %s" -msgstr "" +msgstr "[success] Gerber файл экспортируется в %s" -#: FlatCAMApp.py:7307 +#: FlatCAMApp.py:7333 msgid "Exporting Gerber" msgstr "Экспортирование Gerber" -#: FlatCAMApp.py:7312 FlatCAMApp.py:7319 +#: FlatCAMApp.py:7338 FlatCAMApp.py:7345 msgid "[ERROR_NOTCL] Could not export Gerber file." -msgstr "" +msgstr "[ERROR_NOTCL] Не удалось экспортировать файл Gerber." -#: FlatCAMApp.py:7359 +#: FlatCAMApp.py:7385 #, python-format msgid "[success] DXF file exported to %s" -msgstr "" +msgstr "[success] Файл DXF экспортируется в %s" -#: FlatCAMApp.py:7365 +#: FlatCAMApp.py:7391 msgid "Exporting DXF" msgstr "Экспорт DXF" -#: FlatCAMApp.py:7370 FlatCAMApp.py:7377 +#: FlatCAMApp.py:7396 FlatCAMApp.py:7403 msgid "[[WARNING_NOTCL]] Could not export DXF file." -msgstr "" +msgstr "[[WARNING_NOTCL]] Не удалось экспортировать файл DXF." -#: FlatCAMApp.py:7397 FlatCAMApp.py:7439 FlatCAMApp.py:7483 +#: FlatCAMApp.py:7423 FlatCAMApp.py:7465 FlatCAMApp.py:7509 msgid "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" msgstr "" +"[ERROR_NOTCL] В качестве параметра выбран не поддерживаемый тип. " +"Поддерживаются только Geometry и Gerber." -#: FlatCAMApp.py:7407 +#: FlatCAMApp.py:7433 msgid "Importing SVG" msgstr "Импортирование SVG" -#: FlatCAMApp.py:7418 FlatCAMApp.py:7460 FlatCAMApp.py:7503 FlatCAMApp.py:7580 -#: FlatCAMApp.py:7641 FlatCAMApp.py:7704 flatcamTools/ToolPDF.py:212 +#: FlatCAMApp.py:7444 FlatCAMApp.py:7486 FlatCAMApp.py:7529 FlatCAMApp.py:7606 +#: FlatCAMApp.py:7667 FlatCAMApp.py:7730 flatcamTools/ToolPDF.py:212 #, python-format msgid "[success] Opened: %s" msgstr "[success] Открыт: %s" -#: FlatCAMApp.py:7449 +#: FlatCAMApp.py:7475 msgid "Importing DXF" msgstr "Импорт DXF" -#: FlatCAMApp.py:7491 +#: FlatCAMApp.py:7517 msgid "Importing Image" msgstr "Импорт изображения" -#: FlatCAMApp.py:7532 FlatCAMApp.py:7534 +#: FlatCAMApp.py:7558 FlatCAMApp.py:7560 #, python-format msgid "[ERROR_NOTCL] Failed to open file: %s" -msgstr "" +msgstr "[ERROR_NOTCL] Не удалось открыть файл: %s" -#: FlatCAMApp.py:7537 +#: FlatCAMApp.py:7563 #, python-brace-format msgid "[ERROR_NOTCL] Failed to parse file: {name}. {error}" -msgstr "" +msgstr "[ERROR_NOTCL] Не удалось проанализировать файл: {name}. {error}" -#: FlatCAMApp.py:7544 FlatCAMObj.py:4266 +#: FlatCAMApp.py:7570 FlatCAMObj.py:4259 #: flatcamEditors/FlatCAMExcEditor.py:2077 msgid "[ERROR] An internal error has ocurred. See shell.\n" msgstr "[ERROR] Произошла внутренняя ошибка. Посмотрите в командную строку.\n" -#: FlatCAMApp.py:7553 +#: FlatCAMApp.py:7579 msgid "" "[ERROR_NOTCL] Object is not Gerber file or empty. Aborting object creation." msgstr "" +"[ERROR_NOTCL] Объект не является файлом Gerber или пустым. Прерывание " +"создания объекта." -#: FlatCAMApp.py:7561 +#: FlatCAMApp.py:7587 msgid "Opening Gerber" msgstr "Открытие Gerber" -#: FlatCAMApp.py:7571 +#: FlatCAMApp.py:7597 msgid "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." -msgstr "" +msgstr "[ERROR_NOTCL] Открыть Gerber не удалось. Вероятно, не файл Gerber." -#: FlatCAMApp.py:7604 flatcamTools/ToolPcbWizard.py:421 +#: FlatCAMApp.py:7630 flatcamTools/ToolPcbWizard.py:421 msgid "[ERROR_NOTCL] This is not Excellon file." -msgstr "" +msgstr "[ERROR_NOTCL] Это не Excellon файл." -#: FlatCAMApp.py:7607 +#: FlatCAMApp.py:7633 #, python-format msgid "[ERROR_NOTCL] Cannot open file: %s" -msgstr "" +msgstr "[ERROR_NOTCL] Не удается открыть файл: %s" -#: FlatCAMApp.py:7612 flatcamTools/ToolPcbWizard.py:429 +#: FlatCAMApp.py:7638 flatcamTools/ToolPcbWizard.py:429 msgid "[ERROR_NOTCL] An internal error has occurred. See shell.\n" -msgstr "" +msgstr "[ERROR_NOTCL] Произошла внутренняя ошибка. Вижу оболочки.\n" -#: FlatCAMApp.py:7625 flatcamTools/ToolPDF.py:262 +#: FlatCAMApp.py:7651 flatcamTools/ToolPDF.py:262 #: flatcamTools/ToolPcbWizard.py:442 #, python-format msgid "[ERROR_NOTCL] No geometry found in file: %s" -msgstr "" +msgstr "[ERROR_NOTCL] Geometry не найдена в файле: %s" -#: FlatCAMApp.py:7628 +#: FlatCAMApp.py:7654 msgid "Opening Excellon." msgstr "Открытие Excellon." -#: FlatCAMApp.py:7634 +#: FlatCAMApp.py:7660 msgid "[ERROR_NOTCL] Open Excellon file failed. Probable not an Excellon file." msgstr "" +"[ERROR_NOTCL] Не удалось открыть файл Excellon. Вероятно, не файл Excellon." -#: FlatCAMApp.py:7671 +#: FlatCAMApp.py:7697 #, python-format msgid "[ERROR_NOTCL] Failed to open %s" -msgstr "" +msgstr "[ERROR_NOTCL] Не удалось открыть: %s" -#: FlatCAMApp.py:7681 +#: FlatCAMApp.py:7707 msgid "[ERROR_NOTCL] This is not GCODE" -msgstr "" +msgstr "[ERROR_NOTCL] Это не G-код" -#: FlatCAMApp.py:7687 +#: FlatCAMApp.py:7713 msgid "Opening G-Code." msgstr "Открытие G-Code." -#: FlatCAMApp.py:7695 +#: FlatCAMApp.py:7721 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 "" +"[ERROR_NOTCL] Не удалось создать объект задания ЧПУ. Вероятно, не файл G-" +"кода.\n" +"Попытка создать объект задания ЧПУ с плоским кулачком из файла G-кода не " +"удалась во время обработки" -#: FlatCAMApp.py:7735 +#: FlatCAMApp.py:7761 #, python-format msgid "[ERROR_NOTCL] Failed to open config file: %s" -msgstr "" +msgstr "[ERROR_NOTCL] Не удалось открыть файл конфигурации: %s" -#: FlatCAMApp.py:7761 FlatCAMApp.py:7778 +#: FlatCAMApp.py:7787 FlatCAMApp.py:7804 #, python-format msgid "[ERROR_NOTCL] Failed to open project file: %s" -msgstr "" +msgstr "[ERROR_NOTCL] Не удалось открыть файл проекта : %s" -#: FlatCAMApp.py:7801 +#: FlatCAMApp.py:7827 #, python-format msgid "[success] Project loaded from: %s" -msgstr "" +msgstr "[success] Проект загружен из: %s" -#: FlatCAMApp.py:7906 +#: FlatCAMApp.py:7932 msgid "Available commands:\n" msgstr "Доступные команды:\n" -#: FlatCAMApp.py:7908 +#: FlatCAMApp.py:7934 msgid "" "\n" "\n" @@ -1008,27 +1038,27 @@ msgstr "" "Для дополнительной информации ведите help <имя_команды> .\n" "Пример: help open_gerber" -#: FlatCAMApp.py:8058 +#: FlatCAMApp.py:8084 msgid "Shows list of commands." msgstr "Показывает список команд." -#: FlatCAMApp.py:8115 +#: FlatCAMApp.py:8141 msgid "[ERROR_NOTCL] Failed to load recent item list." -msgstr "" +msgstr "[ERROR_NOTCL] Не удалось загрузить список номенклатуры." -#: FlatCAMApp.py:8122 +#: FlatCAMApp.py:8148 msgid "[ERROR_NOTCL] Failed to parse recent item list." -msgstr "" +msgstr "[ERROR_NOTCL] Не удалось проанализировать список последних элементов." -#: FlatCAMApp.py:8166 +#: FlatCAMApp.py:8192 msgid "Clear Recent files" msgstr "Очистить список" -#: FlatCAMApp.py:8183 flatcamGUI/FlatCAMGUI.py:968 +#: FlatCAMApp.py:8209 flatcamGUI/FlatCAMGUI.py:968 msgid "Shortcut Key List" msgstr "Список сочетаний клавиш" -#: FlatCAMApp.py:8190 +#: FlatCAMApp.py:8216 msgid "" "\n" "

Selected Tab - Choose an Item from " @@ -1078,23 +1108,26 @@ msgid "" " " msgstr "" -#: FlatCAMApp.py:8294 +#: FlatCAMApp.py:8323 msgid "[WARNING_NOTCL] Failed checking for latest version. Could not connect." msgstr "" +"[WARNING_NOTCL] Не удалось проверить последнюю версию. Не удалось " +"подключиться." -#: FlatCAMApp.py:8301 +#: FlatCAMApp.py:8330 msgid "[ERROR_NOTCL] Could not parse information about latest version." msgstr "" +"[ERROR_NOTCL] Не удалось проанализировать информацию о последней версии." -#: FlatCAMApp.py:8311 +#: FlatCAMApp.py:8340 msgid "[success] FlatCAM is up to date!" msgstr "[success] FlatCAM в актуальном состоянии!" -#: FlatCAMApp.py:8316 +#: FlatCAMApp.py:8345 msgid "Newer Version Available" msgstr "Доступна новая версия" -#: FlatCAMApp.py:8317 +#: FlatCAMApp.py:8346 msgid "" "There is a newer version of FlatCAM available for download:\n" "\n" @@ -1102,91 +1135,97 @@ msgstr "" "Новая версия FlatCAM доступна для загрузки:\n" "\n" -#: FlatCAMApp.py:8319 +#: FlatCAMApp.py:8348 msgid "info" msgstr "инфо" -#: FlatCAMApp.py:8338 +#: FlatCAMApp.py:8367 msgid "[success] All plots disabled." -msgstr "" +msgstr "[success] Все участки отключены." -#: FlatCAMApp.py:8344 +#: FlatCAMApp.py:8373 msgid "[success] All non selected plots disabled." -msgstr "" +msgstr "[success] Все невыбранные участки отключены." -#: FlatCAMApp.py:8350 +#: FlatCAMApp.py:8379 msgid "[success] All plots enabled." -msgstr "" +msgstr "[success] Все участки включены." -#: FlatCAMApp.py:8356 +#: FlatCAMApp.py:8385 msgid "[success] Selected plots enabled..." -msgstr "" +msgstr "[success] Выбранные участки включены..." -#: FlatCAMApp.py:8364 +#: FlatCAMApp.py:8393 msgid "[success] Selected plots disabled..." -msgstr "" +msgstr "[success] Выбранные участки отключены..." -#: FlatCAMApp.py:8374 FlatCAMApp.py:8387 +#: FlatCAMApp.py:8403 FlatCAMApp.py:8416 msgid "Working ..." msgstr "Обработка…" -#: FlatCAMApp.py:8421 +#: FlatCAMApp.py:8450 msgid "Saving FlatCAM Project" msgstr "Сохранение проекта FlatCAM" -#: FlatCAMApp.py:8442 FlatCAMApp.py:8473 +#: FlatCAMApp.py:8471 FlatCAMApp.py:8502 #, python-format msgid "[success] Project saved to: %s" -msgstr "" +msgstr "[success] Проект, сохраненный на: %s" -#: FlatCAMApp.py:8460 +#: FlatCAMApp.py:8489 #, python-format msgid "[ERROR_NOTCL] Failed to verify project file: %s. Retry to save it." msgstr "" +"[ERROR_NOTCL] Не удалось проверить файл проекта: %s. Повторите попытку " +"сохранить его." -#: FlatCAMApp.py:8467 +#: FlatCAMApp.py:8496 #, python-format msgid "[ERROR_NOTCL] Failed to parse saved project file: %s. Retry to save it." msgstr "" +"[ERROR_NOTCL] Не удалось проанализировать сохраненный файл проекта: %s. " +"Повторите попытку сохранить его." -#: FlatCAMApp.py:8475 +#: FlatCAMApp.py:8504 #, python-format msgid "[ERROR_NOTCL] Failed to save project file: %s. Retry to save it." msgstr "" +"[ERROR_NOTCL] Не удалось сохранить файл проекта: %s. Повторите попытку " +"сохранить его." -#: FlatCAMObj.py:202 +#: FlatCAMObj.py:207 #, python-brace-format msgid "[success] Name changed from {old} to {new}" -msgstr "" +msgstr "[success] Имя изменено с {old} K {new}" -#: FlatCAMObj.py:546 FlatCAMObj.py:2031 FlatCAMObj.py:3311 FlatCAMObj.py:5484 +#: FlatCAMObj.py:553 FlatCAMObj.py:2035 FlatCAMObj.py:3301 FlatCAMObj.py:5478 msgid "Basic" msgstr "Базовый" -#: FlatCAMObj.py:558 FlatCAMObj.py:2047 FlatCAMObj.py:3333 FlatCAMObj.py:5490 +#: FlatCAMObj.py:565 FlatCAMObj.py:2051 FlatCAMObj.py:3323 FlatCAMObj.py:5484 msgid "Advanced" msgstr "Расширенный" -#: FlatCAMObj.py:921 FlatCAMObj.py:976 +#: FlatCAMObj.py:928 FlatCAMObj.py:983 #, python-format msgid "[success] Isolation geometry created: %s" -msgstr "" +msgstr "[success] Созданная геометрия изоляции: %s" -#: FlatCAMObj.py:1155 +#: FlatCAMObj.py:1162 msgid "Plotting Apertures" -msgstr "" +msgstr "Построение Отверстия" -#: FlatCAMObj.py:1870 flatcamEditors/FlatCAMExcEditor.py:1368 +#: FlatCAMObj.py:1878 flatcamEditors/FlatCAMExcEditor.py:1368 msgid "Total Drills" msgstr "Всего отверстий" -#: FlatCAMObj.py:1896 flatcamEditors/FlatCAMExcEditor.py:1400 +#: FlatCAMObj.py:1904 flatcamEditors/FlatCAMExcEditor.py:1400 msgid "Total Slots" msgstr "Всего ячеек" -#: FlatCAMObj.py:2103 FlatCAMObj.py:3384 FlatCAMObj.py:3682 FlatCAMObj.py:3869 -#: FlatCAMObj.py:3882 FlatCAMObj.py:3999 FlatCAMObj.py:4416 FlatCAMObj.py:4654 -#: FlatCAMObj.py:5067 flatcamEditors/FlatCAMExcEditor.py:1474 +#: FlatCAMObj.py:2107 FlatCAMObj.py:3375 FlatCAMObj.py:3675 FlatCAMObj.py:3862 +#: FlatCAMObj.py:3875 FlatCAMObj.py:3992 FlatCAMObj.py:4409 FlatCAMObj.py:4647 +#: FlatCAMObj.py:5060 flatcamEditors/FlatCAMExcEditor.py:1474 #: flatcamTools/ToolCalculators.py:307 flatcamTools/ToolCalculators.py:318 #: flatcamTools/ToolCalculators.py:330 flatcamTools/ToolCalculators.py:345 #: flatcamTools/ToolCalculators.py:358 flatcamTools/ToolCalculators.py:372 @@ -1203,23 +1242,27 @@ msgstr "Всего ячеек" #: flatcamTools/ToolPanelize.py:435 flatcamTools/ToolPanelize.py:446 #: flatcamTools/ToolSolderPaste.py:756 flatcamTools/ToolSolderPaste.py:827 msgid "[ERROR_NOTCL] Wrong value format entered, use a number." -msgstr "" +msgstr "[ERROR_NOTCL] Неправильно введен формат значения, используйте число." -#: FlatCAMObj.py:2327 FlatCAMObj.py:2418 FlatCAMObj.py:2540 +#: FlatCAMObj.py:2331 FlatCAMObj.py:2423 FlatCAMObj.py:2546 msgid "" "[ERROR_NOTCL] Please select one or more tools from the list and try again." msgstr "" +"[ERROR_NOTCL] Выберите один или несколько инструментов из списка и повторите " +"попытку." -#: FlatCAMObj.py:2334 +#: FlatCAMObj.py:2338 msgid "" "[ERROR_NOTCL] Milling tool for DRILLS is larger than hole size. Cancelled." msgstr "" +"[ERROR_NOTCL] Фрезерный инструмент для сверл больше размера отверстия. " +"Отмененный." -#: FlatCAMObj.py:2348 FlatCAMObj.py:2442 FlatCAMObj.py:2560 +#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 msgid "Tool_nr" msgstr "№ инструмента" -#: FlatCAMObj.py:2348 FlatCAMObj.py:2442 FlatCAMObj.py:2560 +#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 #: flatcamEditors/FlatCAMExcEditor.py:819 #: flatcamEditors/FlatCAMExcEditor.py:2020 flatcamGUI/ObjectUI.py:556 #: flatcamTools/ToolNonCopperClear.py:83 flatcamTools/ToolPaint.py:80 @@ -1227,193 +1270,224 @@ msgstr "№ инструмента" msgid "Diameter" msgstr "Диаметр" -#: FlatCAMObj.py:2348 FlatCAMObj.py:2442 FlatCAMObj.py:2560 +#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 msgid "Drills_Nr" msgstr "№ сверла" -#: FlatCAMObj.py:2348 FlatCAMObj.py:2442 FlatCAMObj.py:2560 +#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 msgid "Slots_Nr" msgstr "№ ячейки" -#: FlatCAMObj.py:2428 +#: FlatCAMObj.py:2433 msgid "" "[ERROR_NOTCL] Milling tool for SLOTS is larger than hole size. Cancelled." msgstr "" +"[ERROR_NOTCL] Фрезерный инструмент для пазов больше размера отверстия. " +"Отмененный." -#: FlatCAMObj.py:2602 FlatCAMObj.py:4304 FlatCAMObj.py:4520 FlatCAMObj.py:4837 +#: FlatCAMObj.py:2608 FlatCAMObj.py:4297 FlatCAMObj.py:4513 FlatCAMObj.py:4830 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"z_pdepth\"] or self." "options[\"z_pdepth\"]" msgstr "" +"[ERROR_NOTCL] Неправильный формат значения для self.defaults[\"z_pdepth\"] " +"или self.options[\"z_pdepth\"]" -#: FlatCAMObj.py:2614 FlatCAMObj.py:4316 FlatCAMObj.py:4532 FlatCAMObj.py:4849 +#: FlatCAMObj.py:2620 FlatCAMObj.py:4309 FlatCAMObj.py:4525 FlatCAMObj.py:4842 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"feedrate_probe\"] or " "self.options[\"feedrate_probe\"]" msgstr "" +"[ERROR_NOTCL] Неправильный формат значения для self.defaults " +"[\"feedrate_probe\"] или self.options[\"feedrate_probe\"]" -#: FlatCAMObj.py:2646 FlatCAMObj.py:4725 FlatCAMObj.py:4730 FlatCAMObj.py:4880 +#: FlatCAMObj.py:2652 FlatCAMObj.py:4718 FlatCAMObj.py:4723 FlatCAMObj.py:4873 msgid "Generating CNC Code" msgstr "Генерация кода ЧПУ" -#: FlatCAMObj.py:2672 FlatCAMObj.py:5026 camlib.py:5151 camlib.py:5610 -#: camlib.py:5873 +#: FlatCAMObj.py:2678 FlatCAMObj.py:5019 camlib.py:5167 camlib.py:5626 +#: camlib.py:5889 msgid "" "[ERROR]The Toolchange X,Y field in Edit -> Preferences has to be in the " "format (x, y) \n" "but now there is only one value, not two. " msgstr "" +"[ERROR] Поле изменение инструмента X, Y в Edit - > Preferences должно быть в " +"формате (x, y) \n" +"но теперь есть только одна ценность, а не две." -#: FlatCAMObj.py:3020 FlatCAMObj.py:3925 FlatCAMObj.py:3926 FlatCAMObj.py:3935 +#: FlatCAMObj.py:2998 FlatCAMObj.py:3918 FlatCAMObj.py:3919 FlatCAMObj.py:3928 msgid "Iso" msgstr "Iso" -#: FlatCAMObj.py:3020 FlatCAMObj.py:3269 FlatCAMObj.py:3549 +#: FlatCAMObj.py:2998 FlatCAMObj.py:3258 FlatCAMObj.py:3540 msgid "Rough" msgstr "Грубый" -#: FlatCAMObj.py:3020 +#: FlatCAMObj.py:2998 msgid "Finish" msgstr "Конец" -#: FlatCAMObj.py:3304 flatcamGUI/FlatCAMGUI.py:526 flatcamGUI/FlatCAMGUI.py:722 +#: FlatCAMObj.py:3294 flatcamGUI/FlatCAMGUI.py:526 flatcamGUI/FlatCAMGUI.py:722 #: flatcamGUI/FlatCAMGUI.py:1615 flatcamGUI/FlatCAMGUI.py:1951 #: flatcamGUI/ObjectUI.py:999 msgid "Copy" msgstr "Копировать" -#: FlatCAMObj.py:3519 +#: FlatCAMObj.py:3510 msgid "[ERROR_NOTCL] Please enter the desired tool diameter in Float format." msgstr "" +"[ERROR_NOTCL] Пожалуйста, введите нужный инструмент диаметр в формате с " +"Float точкой." -#: FlatCAMObj.py:3592 +#: FlatCAMObj.py:3585 msgid "[success] Tool added in Tool Table." -msgstr "" +msgstr "[success] Инструмент добавлен в таблицу инструментов." -#: FlatCAMObj.py:3597 +#: FlatCAMObj.py:3590 msgid "[ERROR_NOTCL] Default Tool added. Wrong value format entered." msgstr "" +"[ERROR_NOTCL] Добавлен инструмент по умолчанию. Введен неправильный формат " +"значения." -#: FlatCAMObj.py:3627 FlatCAMObj.py:3637 +#: FlatCAMObj.py:3620 FlatCAMObj.py:3630 msgid "[WARNING_NOTCL] Failed. Select a tool to copy." -msgstr "" +msgstr "[WARNING_NOTCL] Неудачный. Выберите инструмент для копирования." -#: FlatCAMObj.py:3666 +#: FlatCAMObj.py:3659 msgid "[success] Tool was copied in Tool Table." -msgstr "" +msgstr "[success] Инструмент был скопирован в таблицу инструментов." -#: FlatCAMObj.py:3699 +#: FlatCAMObj.py:3692 msgid "[success] Tool was edited in Tool Table." -msgstr "" +msgstr "[success] Инструмент был отредактирован в таблице инструментов." -#: FlatCAMObj.py:3730 FlatCAMObj.py:3740 +#: FlatCAMObj.py:3723 FlatCAMObj.py:3733 msgid "[WARNING_NOTCL] Failed. Select a tool to delete." -msgstr "" +msgstr "[WARNING_NOTCL] Неудачный. Выберите инструмент для удаления." -#: FlatCAMObj.py:3764 +#: FlatCAMObj.py:3757 msgid "[success] Tool was deleted in Tool Table." -msgstr "" +msgstr "[success] Инструмент был удален в таблице инструментов." -#: FlatCAMObj.py:4185 +#: FlatCAMObj.py:4178 #, python-format msgid "" "[WARNING_NOTCL] This Geometry can't be processed because it is %s geometry." msgstr "" +"[WARNING_NOTCL] Эта геометрия не может быть обработана, так как это %s " +"геометрия." -#: FlatCAMObj.py:4202 +#: FlatCAMObj.py:4195 msgid "[ERROR_NOTCL] Wrong Tool Dia value format entered, use a number." msgstr "" +"[ERROR_NOTCL] Неправильный инструмент формата ДВД с введенным значением, " +"использовать количество." -#: FlatCAMObj.py:4229 +#: FlatCAMObj.py:4222 msgid "[ERROR_NOTCL] Failed. No tool selected in the tool table ..." msgstr "" +"[ERROR_NOTCL] Неудачный. Инструмент не выбран в таблице инструментов ..." -#: FlatCAMObj.py:4267 +#: FlatCAMObj.py:4260 #, python-format msgid "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" -msgstr "" +msgstr "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" -#: FlatCAMObj.py:4425 FlatCAMObj.py:4663 +#: FlatCAMObj.py:4418 FlatCAMObj.py:4656 msgid "" "[WARNING] Tool Offset is selected in Tool Table but no value is provided.\n" "Add a Tool Offset or change the Offset Type." msgstr "" +"[WARNING] Смещение инструмента выбрано в таблице инструментов, но значение " +"не указано.\n" +"Добавьте смещение инструмента или измените тип смещения." -#: FlatCAMObj.py:4544 flatcamTools/ToolSolderPaste.py:1107 +#: FlatCAMObj.py:4537 flatcamTools/ToolSolderPaste.py:1107 #: flatcamTools/ToolSolderPaste.py:1162 msgid "[ERROR_NOTCL] Cancelled. Empty file, it has no geometry..." -msgstr "" +msgstr "[ERROR_NOTCL] Отмененный. Пустой файл, он не имеет геометрии..." -#: FlatCAMObj.py:4913 FlatCAMObj.py:4923 camlib.py:3335 camlib.py:3344 +#: FlatCAMObj.py:4906 FlatCAMObj.py:4916 camlib.py:3348 camlib.py:3357 msgid "[ERROR_NOTCL] Scale factor has to be a number: integer or float." msgstr "" +"[ERROR_NOTCL] Масштабный коэффициент должен быть числом: целочисленным или " +"плавающим." -#: FlatCAMObj.py:4961 +#: FlatCAMObj.py:4954 msgid "[success] Geometry Scale done." -msgstr "" +msgstr "[success] Геометрический масштаб выполнен." -#: FlatCAMObj.py:4978 camlib.py:3414 +#: FlatCAMObj.py:4971 camlib.py:3426 msgid "" "[ERROR_NOTCL] An (x,y) pair of values are needed. Probable you entered only " "one value in the Offset field." msgstr "" +"[ERROR_NOTCL] Необходима пара значений (x,y). Возможно, вы ввели только одно " +"значение в поле смещение." -#: FlatCAMObj.py:4998 +#: FlatCAMObj.py:4991 msgid "[success] Geometry Offset done." -msgstr "" +msgstr "[success] Смещение геометрии сделано." -#: FlatCAMObj.py:5552 FlatCAMObj.py:5557 flatcamTools/ToolSolderPaste.py:1361 +#: FlatCAMObj.py:5546 FlatCAMObj.py:5551 flatcamTools/ToolSolderPaste.py:1361 msgid "Export Machine Code ..." msgstr "Экспорт GCode ..." -#: FlatCAMObj.py:5563 flatcamTools/ToolSolderPaste.py:1364 +#: FlatCAMObj.py:5557 flatcamTools/ToolSolderPaste.py:1364 msgid "[WARNING_NOTCL] Export Machine Code cancelled ..." -msgstr "" +msgstr "[WARNING_NOTCL] Экспорт машинного кода отменен ..." -#: FlatCAMObj.py:5576 +#: FlatCAMObj.py:5570 #, python-format msgid "[success] Machine Code file saved to: %s" -msgstr "" +msgstr "[success] Файл машинного кода, сохраненный в: %s" -#: FlatCAMObj.py:5598 +#: FlatCAMObj.py:5592 #, python-format msgid "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" -msgstr "" +msgstr "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" -#: FlatCAMObj.py:5715 +#: FlatCAMObj.py:5709 #, python-format msgid "" "[WARNING_NOTCL] This CNCJob object can't be processed because it is a %s " "CNCJob object." msgstr "" +"[WARNING_NOTCL] Этот объект CNCJob не может быть обработан, так как он " +"является объектом %s CNCJob." -#: FlatCAMObj.py:5768 +#: FlatCAMObj.py:5762 msgid "[ERROR_NOTCL] G-code does not have a units code: either G20 or G21" -msgstr "" +msgstr "[ERROR_NOTCL] G-код не имеет кода единиц измерения: G20 или G21" -#: FlatCAMObj.py:5781 +#: FlatCAMObj.py:5775 msgid "" "[ERROR_NOTCL] Cancelled. The Toolchange Custom code is enabled but it's " "empty." msgstr "" +"[ERROR_NOTCL] Отмененный. Пользовательский код изменения инструмента " +"включен, но он пуст." -#: FlatCAMObj.py:5788 +#: FlatCAMObj.py:5782 msgid "[success] Toolchange G-code was replaced by a custom code." -msgstr "" +msgstr "[success] Инструмент смены G-кода был заменен на пользовательский код." -#: FlatCAMObj.py:5803 flatcamTools/ToolSolderPaste.py:1390 +#: FlatCAMObj.py:5797 flatcamTools/ToolSolderPaste.py:1390 msgid "[WARNING_NOTCL] No such file or directory" -msgstr "" +msgstr "[WARNING_NOTCL] Нет такого файла или каталога" -#: FlatCAMObj.py:5823 FlatCAMObj.py:5835 +#: FlatCAMObj.py:5817 FlatCAMObj.py:5829 msgid "" "[WARNING_NOTCL] The used postprocessor file has to have in it's name: " "'toolchange_custom'" msgstr "" +"[WARNING_NOTCL] Используемый файл постпроцессора должен иметь в своем имени: " +"'toolchange_custom'" -#: FlatCAMObj.py:5841 +#: FlatCAMObj.py:5835 msgid "[ERROR] There is no postprocessor file." -msgstr "" +msgstr "[ERROR] Нет файла постпроцессора." #: ObjectCollection.py:420 #, python-brace-format @@ -1423,85 +1497,91 @@ msgstr "Объект переименован из {old} в {new}" #: ObjectCollection.py:759 #, python-format msgid "[ERROR] Cause of error: %s" -msgstr "" +msgstr "[ERROR] Причина ошибки: %s" -#: camlib.py:198 +#: camlib.py:197 msgid "[ERROR_NOTCL] self.solid_geometry is neither BaseGeometry or list." msgstr "" +"[ERROR_NOTCL] self.solid_geometry не является ни базовой геометрией, ни " +"списком." -#: camlib.py:1381 +#: camlib.py:1391 msgid "[success] Object was mirrored ..." -msgstr "" +msgstr "[success] Объект был зеркальным ..." -#: camlib.py:1383 +#: camlib.py:1393 msgid "[ERROR_NOTCL] Failed to mirror. No object selected" -msgstr "" +msgstr "[ERROR_NOTCL] Не удалось зеркало. Объект не выбран." -#: camlib.py:1419 +#: camlib.py:1429 msgid "[success] Object was rotated ..." -msgstr "" +msgstr "[success] Объект был повернут ..." -#: camlib.py:1421 +#: camlib.py:1431 msgid "[ERROR_NOTCL] Failed to rotate. No object selected" -msgstr "" +msgstr "[ERROR_NOTCL] Не удалось повернуть. Объект не выбран." -#: camlib.py:1455 +#: camlib.py:1465 msgid "[success] Object was skewed ..." -msgstr "" +msgstr "[success] Объект был перекошен ..." -#: camlib.py:1457 +#: camlib.py:1467 msgid "[ERROR_NOTCL] Failed to skew. No object selected" -msgstr "" +msgstr "[ERROR_NOTCL] Не удалось перекос. Объект не выбран." -#: camlib.py:2717 camlib.py:2802 +#: camlib.py:2728 camlib.py:2813 #, python-format msgid "[WARNING] Coordinates missing, line ignored: %s" -msgstr "" +msgstr "[WARNING] Координаты отсутствуют, строка игнорируется: %s" -#: camlib.py:2718 camlib.py:2803 +#: camlib.py:2729 camlib.py:2814 msgid "[WARNING_NOTCL] GERBER file might be CORRUPT. Check the file !!!" -msgstr "" +msgstr "[WARNING_NOTCL] Файл Gerber может быть поврежден. Проверьте файл !!!" -#: camlib.py:2767 +#: camlib.py:2778 #, python-format msgid "" "[ERROR] Region does not have enough points. File will be processed but there " "are parser errors. Line number: %s" msgstr "" +"[ERROR] Региону не хватает очков. Файл будет обработан, но есть ошибки " +"парсера. Номер строки: %s" -#: camlib.py:3159 +#: camlib.py:3170 #, python-format msgid "" "[ERROR]Gerber Parser ERROR.\n" "%s:" msgstr "" +"[ERROR] Ошибка парсера Gerber.\n" +"%s:" -#: camlib.py:3381 +#: camlib.py:3394 msgid "[success] Gerber Scale done." -msgstr "" +msgstr "[success] Масштаб Gerber сделан." -#: camlib.py:3447 +#: camlib.py:3459 msgid "[success] Gerber Offset done." -msgstr "" +msgstr "[success] Gerber зачет сделал." -#: camlib.py:3501 +#: camlib.py:3513 msgid "[success] Gerber Mirror done." -msgstr "" +msgstr "[success] Gerber зеркало сделано." -#: camlib.py:3547 +#: camlib.py:3559 msgid "[success] Gerber Skew done." -msgstr "" +msgstr "[success] Gerber перекос сделал." -#: camlib.py:3585 +#: camlib.py:3597 msgid "[success] Gerber Rotate done." -msgstr "" +msgstr "[success] Gerber поворот сделано." -#: camlib.py:3864 +#: camlib.py:3878 #, python-format msgid "[ERROR_NOTCL] This is GCODE mark: %s" -msgstr "" +msgstr "[ERROR_NOTCL] Это метка G-кода: %s" -#: camlib.py:3979 +#: camlib.py:3993 #, python-format msgid "" "[WARNING] No tool diameter info's. See shell.\n" @@ -1511,27 +1591,38 @@ msgid "" "The user needs to edit the resulting Excellon object and change the " "diameters to reflect the real diameters." msgstr "" +"[WARNING] Нет информации о диаметре инструмента. См. Шелл.\n" +"Событие изменения инструмента: T%s было найдено, но в файле Excellon нет " +"информации о диаметрах инструмента, поэтому приложение попытается загрузить " +"его с помощью некоторых \"поддельных\" диаметров.\n" +"Пользователю необходимо отредактировать полученный объект Excellon и " +"изменить диаметры, чтобы отразить реальные диаметры." -#: camlib.py:4444 +#: camlib.py:4458 #, python-brace-format msgid "" "[ERROR] Excellon Parser error.\n" "Parsing Failed. Line {l_nr}: {line}\n" msgstr "" +"[ERROR] Ошибка парсера Excellon.\n" +"Разбор Не Удался. Линия {l_nr}: {line}\n" -#: camlib.py:4521 +#: camlib.py:4537 msgid "" "[WARNING] Excellon.create_geometry() -> a drill location was skipped due of " "not having a tool associated.\n" "Check the resulting GCode." msgstr "" +"[WARNING] Excellon.create_geometry() -> расположение сверла было пропущено " +"из-за отсутствия связанного инструмента.\n" +"Проверьте полученный код." -#: camlib.py:5060 +#: camlib.py:5076 #, python-format msgid "[ERROR] There is no such parameter: %s" -msgstr "" +msgstr "[ERROR] Нет такого параметра: %s" -#: camlib.py:5130 +#: camlib.py:5146 msgid "" "[WARNING] The Cut Z parameter has positive value. It is the depth value to " "drill into material.\n" @@ -1539,28 +1630,36 @@ msgid "" "therefore the app will convert the value to negative. Check the resulting " "CNC code (Gcode etc)." msgstr "" +"[WARNING] Параметр Cut Z имеет положительное значение. Значение глубины, " +"котор нужно просверлить в материал.\n" +"Параметр Cut Z должен иметь отрицательное значение, предполагая, что это " +"опечатка, поэтому приложение преобразует значение в отрицательное. Проверьте " +"полученный код ЧПУ (G-код и т. д.)." -#: camlib.py:5137 camlib.py:5633 camlib.py:5896 +#: camlib.py:5153 camlib.py:5649 camlib.py:5912 #, python-format msgid "" "[WARNING] The Cut Z parameter is zero. There will be no cut, skipping %s file" msgstr "" +"[WARNING] Параметр Cut Z равен нулю. Не будет вырезать, пропустив файл %s " -#: camlib.py:5366 camlib.py:5463 camlib.py:5521 +#: camlib.py:5382 camlib.py:5479 camlib.py:5537 msgid "[ERROR_NOTCL] The loaded Excellon file has no drills ..." -msgstr "" +msgstr "[ERROR_NOTCL] Загруженный файл Excellon не имеет сверл ..." -#: camlib.py:5468 +#: camlib.py:5484 msgid "[ERROR_NOTCL] Wrong optimization type selected." -msgstr "" +msgstr "[ERROR_NOTCL] Выбран неправильный тип оптимизации." -#: camlib.py:5621 camlib.py:5884 +#: camlib.py:5637 camlib.py:5900 msgid "" "[ERROR_NOTCL] Cut_Z parameter is None or zero. Most likely a bad " "combinations of other parameters." msgstr "" +"[ERROR_NOTCL] Параметр Cut_Z равен None или zero. Скорее всего неудачное " +"сочетание других параметров." -#: camlib.py:5626 camlib.py:5889 +#: camlib.py:5642 camlib.py:5905 msgid "" "[WARNING] The Cut Z parameter has positive value. It is the depth value to " "cut into material.\n" @@ -1568,12 +1667,17 @@ msgid "" "therefore the app will convert the value to negative.Check the resulting CNC " "code (Gcode etc)." msgstr "" +"[WARNING] Параметр Cut Z имеет положительное значение. Значение глубины, " +"котор нужно отрезать в материал.\n" +"Параметр Cut Z должен иметь отрицательное значение, предполагая, что это " +"опечатка, поэтому приложение преобразует значение в отрицательное." +"Регистрация результирующего кода с ЧПУ (G-код и т. д.)." -#: camlib.py:5638 camlib.py:5901 +#: camlib.py:5654 camlib.py:5917 msgid "[ERROR_NOTCL] Travel Z parameter is None or zero." -msgstr "" +msgstr "[ERROR_NOTCL] Параметр Travel Z-это ничего или ноль." -#: camlib.py:5642 camlib.py:5905 +#: camlib.py:5658 camlib.py:5921 msgid "" "[WARNING] The Travel Z parameter has negative value. It is the height value " "to travel between cuts.\n" @@ -1581,34 +1685,43 @@ msgid "" "therefore the app will convert the value to positive.Check the resulting CNC " "code (Gcode etc)." msgstr "" +"[WARNING] Параметр Travel Z имеет отрицательное значение. Это значение " +"высоты для перемещения между разрезами.\n" +"Параметр Z Travel должен иметь положительное значение, предполагая, что это " +"опечатка, поэтому приложение преобразует значение в положительное." +"Регистрация результирующего кода с ЧПУ (G-код и т. д.)." -#: camlib.py:5649 camlib.py:5912 +#: camlib.py:5665 camlib.py:5928 #, python-format msgid "" "[WARNING] The Z Travel parameter is zero. This is dangerous, skipping %s file" -msgstr "" +msgstr "[WARNING] Параметр Travel Z равен нулю. Это опасно, пропуская %s файл" -#: camlib.py:5779 +#: camlib.py:5795 #, python-format msgid "[ERROR]Expected a Geometry, got %s" -msgstr "" +msgstr "[ERROR] Ожидал Geometry, получил %некоторые" -#: camlib.py:5785 +#: camlib.py:5801 msgid "" "[ERROR_NOTCL] Trying to generate a CNC Job from a Geometry object without " "solid_geometry." msgstr "" +"[ERROR_NOTCL] Попытка создать ЧПУJob из объекта геометрии без solid_geometry." -#: camlib.py:5824 +#: camlib.py:5840 msgid "" "[ERROR_NOTCL] The Tool Offset value is too negative to use for the " "current_geometry.\n" "Raise the value (in module) and try again." msgstr "" +"[ERROR_NOTCL]Значение смещения инструмента слишком отрицательно для " +"current_geometry.\n" +"Поднимите значение (в модуле) и повторите попытку." -#: camlib.py:6036 +#: camlib.py:6052 msgid "[ERROR_NOTCL] There is no tool data in the SolderPaste geometry." -msgstr "" +msgstr "[ERROR_NOTCL] В геометрии SolderPaste нет данных инструмента." #: flatcamEditors/FlatCAMExcEditor.py:37 flatcamEditors/FlatCAMExcEditor.py:143 #: flatcamEditors/FlatCAMGrbEditor.py:229 @@ -1618,7 +1731,7 @@ msgstr "Нажмите для размещения ..." #: flatcamEditors/FlatCAMExcEditor.py:46 msgid "[WARNING_NOTCL] To add a drill first select a tool" -msgstr "" +msgstr "[WARNING_NOTCL] Чтобы добавить сверло, сначала выберите инструмент" #: flatcamEditors/FlatCAMExcEditor.py:62 flatcamEditors/FlatCAMExcEditor.py:165 #: flatcamEditors/FlatCAMExcEditor.py:450 @@ -1636,10 +1749,12 @@ msgstr "[success] Готово. Сверло добавлено." #: flatcamEditors/FlatCAMExcEditor.py:150 msgid "[WARNING_NOTCL] To add an Drill Array first select a tool in Tool Table" msgstr "" +"[WARNING_NOTCL] Чтобы добавить массив сверления, сначала выберите инструмент " +"в таблице инструментов" #: flatcamEditors/FlatCAMExcEditor.py:182 msgid "Click on the Drill Circular Array Start position" -msgstr "" +msgstr "Нажмите на начальную позицию сверлильного кругового массива" #: flatcamEditors/FlatCAMExcEditor.py:204 #: flatcamEditors/FlatCAMGrbEditor.py:494 @@ -1647,19 +1762,21 @@ msgid "" "[ERROR_NOTCL] The value is not Float. Check for comma instead of dot " "separator." msgstr "" +"[ERROR_NOTCL] Значение не Float. Проверьте наличие запятой вместо " +"разделителя точек." #: flatcamEditors/FlatCAMExcEditor.py:207 #, python-format msgid "[ERROR_NOTCL] The value is mistyped. Check the value. %s" -msgstr "" +msgstr "[ERROR_NOTCL] Значение вводится с ошибкой. Проверьте значение. %s" #: flatcamEditors/FlatCAMExcEditor.py:305 msgid "[WARNING_NOTCL] Too many drills for the selected spacing angle." -msgstr "" +msgstr "[WARNING_NOTCL] Слишком много сверл для выбранного угла интервала." #: flatcamEditors/FlatCAMExcEditor.py:322 msgid "[success] Done. Drill Array added." -msgstr "" +msgstr "[success] Сделанный. Добавлена дрель массив." #: flatcamEditors/FlatCAMExcEditor.py:333 msgid "Click on the Drill(s) to resize ..." @@ -1669,14 +1786,17 @@ msgstr "Нажмите на сверло для изменения размер msgid "" "[ERROR_NOTCL] Resize drill(s) failed. Please enter a diameter for resize." msgstr "" +"[ERROR_NOTCL] Не удалось изменить размер детализации. Введите диаметр для " +"изменения размера." #: flatcamEditors/FlatCAMExcEditor.py:424 msgid "[success] Done. Drill Resize completed." -msgstr "" +msgstr "[success] Сделанный. Сверление размера завершено." #: flatcamEditors/FlatCAMExcEditor.py:427 msgid "[WARNING_NOTCL] Cancelled. No drills selected for resize ..." msgstr "" +"[WARNING_NOTCL] Отмененный. Для изменения размера сверла не выбраны ..." #: flatcamEditors/FlatCAMExcEditor.py:452 #: flatcamEditors/FlatCAMGrbEditor.py:1778 @@ -1685,13 +1805,13 @@ msgstr "Кликните на конечную точку ..." #: flatcamEditors/FlatCAMExcEditor.py:507 msgid "[success] Done. Drill(s) Move completed." -msgstr "" +msgstr "[success] Сделанный. Дрель(ы) перемещение завершено." #: flatcamEditors/FlatCAMExcEditor.py:592 msgid "[success] Done. Drill(s) copied." -msgstr "" +msgstr "[success] Сделанный. Дрель(ы) скопирована." -#: flatcamEditors/FlatCAMExcEditor.py:792 flatcamGUI/FlatCAMGUI.py:5026 +#: flatcamEditors/FlatCAMExcEditor.py:792 flatcamGUI/FlatCAMGUI.py:5008 msgid "Excellon Editor" msgstr "Редактор Excellon" @@ -1729,7 +1849,7 @@ msgstr "" msgid "Tool Dia:" msgstr "Диаметр инструмента:" -#: flatcamEditors/FlatCAMExcEditor.py:839 flatcamGUI/FlatCAMGUI.py:5055 +#: flatcamEditors/FlatCAMExcEditor.py:839 flatcamGUI/FlatCAMGUI.py:5037 #: flatcamGUI/ObjectUI.py:978 msgid "Diameter for the new tool" msgstr "Диаметр нового инструмента" @@ -1808,11 +1928,11 @@ msgstr "Линейный" msgid "Circular" msgstr "Круговой" -#: flatcamEditors/FlatCAMExcEditor.py:944 flatcamGUI/FlatCAMGUI.py:5065 +#: flatcamEditors/FlatCAMExcEditor.py:944 flatcamGUI/FlatCAMGUI.py:5047 msgid "Nr of drills:" msgstr "Кол-во отверстий:" -#: flatcamEditors/FlatCAMExcEditor.py:946 flatcamGUI/FlatCAMGUI.py:5067 +#: flatcamEditors/FlatCAMExcEditor.py:946 flatcamGUI/FlatCAMGUI.py:5049 msgid "Specify how many drills to be in the array." msgstr "Укажите, сколько свёрел должно быть в массиве." @@ -1824,7 +1944,7 @@ msgid "Direction:" msgstr "Направление:" #: flatcamEditors/FlatCAMExcEditor.py:966 -#: flatcamEditors/FlatCAMGrbEditor.py:2528 flatcamGUI/FlatCAMGUI.py:5082 +#: flatcamEditors/FlatCAMGrbEditor.py:2528 flatcamGUI/FlatCAMGUI.py:5064 msgid "" "Direction on which the linear array is oriented:\n" "- 'X' - horizontal axis \n" @@ -1837,12 +1957,12 @@ msgstr "" "- 'Угол' - произвольный угол наклона массива" #: flatcamEditors/FlatCAMExcEditor.py:979 -#: flatcamEditors/FlatCAMGrbEditor.py:2541 flatcamGUI/FlatCAMGUI.py:5096 +#: flatcamEditors/FlatCAMGrbEditor.py:2541 flatcamGUI/FlatCAMGUI.py:5078 msgid "Pitch:" msgstr "Шаг:" #: flatcamEditors/FlatCAMExcEditor.py:981 -#: flatcamEditors/FlatCAMGrbEditor.py:2543 flatcamGUI/FlatCAMGUI.py:5098 +#: flatcamEditors/FlatCAMGrbEditor.py:2543 flatcamGUI/FlatCAMGUI.py:5080 msgid "Pitch = Distance between elements of the array." msgstr "Подача = Расстояние между элементами массива." @@ -1851,7 +1971,7 @@ msgstr "Подача = Расстояние между элементами ма #: flatcamEditors/FlatCAMGeoEditor.py:665 #: flatcamEditors/FlatCAMGrbEditor.py:2550 #: flatcamEditors/FlatCAMGrbEditor.py:2586 -#: flatcamEditors/FlatCAMGrbEditor.py:4580 flatcamGUI/FlatCAMGUI.py:5107 +#: flatcamEditors/FlatCAMGrbEditor.py:4588 flatcamGUI/FlatCAMGUI.py:5089 #: flatcamTools/ToolTransform.py:68 msgid "Angle:" msgstr "Угол:" @@ -1879,8 +1999,8 @@ msgstr "" "CCW = против часовой стрелки." #: flatcamEditors/FlatCAMExcEditor.py:1026 -#: flatcamEditors/FlatCAMGrbEditor.py:2588 flatcamGUI/FlatCAMGUI.py:5109 -#: flatcamGUI/FlatCAMGUI.py:5135 +#: flatcamEditors/FlatCAMGrbEditor.py:2588 flatcamGUI/FlatCAMGUI.py:5091 +#: flatcamGUI/FlatCAMGUI.py:5117 msgid "Angle at which each element in circular array is placed." msgstr "Угол, под которым расположен каждый элемент в круговом массиве." @@ -1889,26 +2009,32 @@ msgid "" "[WARNING_NOTCL] Tool already in the original or actual tool list.\n" "Save and reedit Excellon if you need to add this tool. " msgstr "" +"[WARNING_NOTCL] Инструмент уже в исходном или фактическом списке " +"инструментов.\n" +"Сохранить и повторно редактировать Excellon, если вам нужно добавить этот " +"инструмент." #: flatcamEditors/FlatCAMExcEditor.py:1496 flatcamGUI/FlatCAMGUI.py:2997 #, python-brace-format msgid "[success] Added new tool with dia: {dia} {units}" -msgstr "" +msgstr "[success] Добавлен новый инструмент с алмазом: {dia} {units}" #: flatcamEditors/FlatCAMExcEditor.py:1528 msgid "[WARNING_NOTCL] Select a tool in Tool Table" -msgstr "" +msgstr "[WARNING_NOTCL] Выберите инструмент в таблице инструментов" #: flatcamEditors/FlatCAMExcEditor.py:1560 #, python-brace-format msgid "[success] Deleted tool with dia: {del_dia} {units}" -msgstr "" +msgstr "[success] Удален инструмент с алмазными: {del_dia} {units}" #: flatcamEditors/FlatCAMExcEditor.py:2074 msgid "" "[ERROR_NOTCL] There are no Tools definitions in the file. Aborting Excellon " "creation." msgstr "" +"[ERROR_NOTCL] В файле нет определений инструментов. Прерывание создания " +"Excellon." #: flatcamEditors/FlatCAMExcEditor.py:2083 msgid "Creating Excellon." @@ -1916,18 +2042,18 @@ msgstr "Создание Excellon." #: flatcamEditors/FlatCAMExcEditor.py:2092 msgid "[success] Excellon editing finished." -msgstr "" +msgstr "[success] Excellon редактирование завершено." #: flatcamEditors/FlatCAMExcEditor.py:2109 msgid "[WARNING_NOTCL] Cancelled. There is no Tool/Drill selected" -msgstr "" +msgstr "[WARNING_NOTCL] Отмененный. Инструмент / сверло не выбран" #: flatcamEditors/FlatCAMExcEditor.py:2637 msgid "[success] Done. Drill(s) deleted." -msgstr "" +msgstr "[success] Сделанный. Дрель(ы) исключена." #: flatcamEditors/FlatCAMExcEditor.py:2705 -#: flatcamEditors/FlatCAMGrbEditor.py:4340 +#: flatcamEditors/FlatCAMGrbEditor.py:4350 msgid "Click on the circular array Center position" msgstr "Нажмите на центральную позицию кругового массива" @@ -1939,7 +2065,7 @@ msgstr "Буферное расстояние:" #: flatcamEditors/FlatCAMGeoEditor.py:81 #: flatcamEditors/FlatCAMGrbEditor.py:2417 msgid "Buffer corner:" -msgstr "" +msgstr "Буферный угол:" #: flatcamEditors/FlatCAMGeoEditor.py:83 msgid "" @@ -1971,20 +2097,20 @@ msgstr "Скошенный" #: flatcamEditors/FlatCAMGeoEditor.py:98 msgid "Buffer Interior" -msgstr "" +msgstr "Интерьер Буфера" #: flatcamEditors/FlatCAMGeoEditor.py:100 msgid "Buffer Exterior" -msgstr "" +msgstr "Внешний Вид Буфера" #: flatcamEditors/FlatCAMGeoEditor.py:106 msgid "Full Buffer" -msgstr "" +msgstr "Полный Буфер" #: flatcamEditors/FlatCAMGeoEditor.py:127 #: flatcamEditors/FlatCAMGeoEditor.py:2682 msgid "Buffer Tool" -msgstr "" +msgstr "Буферный Инструмент" #: flatcamEditors/FlatCAMGeoEditor.py:138 #: flatcamEditors/FlatCAMGeoEditor.py:155 @@ -1992,11 +2118,13 @@ msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:2700 #: flatcamEditors/FlatCAMGeoEditor.py:2726 #: flatcamEditors/FlatCAMGeoEditor.py:2752 -#: flatcamEditors/FlatCAMGrbEditor.py:4392 +#: flatcamEditors/FlatCAMGrbEditor.py:4402 msgid "" "[WARNING_NOTCL] Buffer distance value is missing or wrong format. Add it and " "retry." msgstr "" +"[WARNING_NOTCL] Отсутствует значение расстояния буфера или неправильный " +"формат. Добавьте его и повторите попытку." #: flatcamEditors/FlatCAMGeoEditor.py:343 msgid "Text Tool" @@ -2007,12 +2135,13 @@ msgid "Tool" msgstr "Инструменты" #: flatcamEditors/FlatCAMGeoEditor.py:432 flatcamGUI/FlatCAMGUI.py:4054 -#: flatcamGUI/FlatCAMGUI.py:5618 flatcamGUI/FlatCAMGUI.py:5895 -#: flatcamGUI/FlatCAMGUI.py:6035 flatcamGUI/ObjectUI.py:260 +#: flatcamGUI/FlatCAMGUI.py:5163 flatcamGUI/FlatCAMGUI.py:5597 +#: flatcamGUI/FlatCAMGUI.py:5874 flatcamGUI/FlatCAMGUI.py:6014 +#: flatcamGUI/ObjectUI.py:260 msgid "Tool dia:" msgstr "Диам. инструм.:" -#: flatcamEditors/FlatCAMGeoEditor.py:434 flatcamGUI/FlatCAMGUI.py:6037 +#: flatcamEditors/FlatCAMGeoEditor.py:434 flatcamGUI/FlatCAMGUI.py:6016 msgid "" "Diameter of the tool to\n" "be used in the operation." @@ -2020,8 +2149,8 @@ msgstr "" "Диаметр инструмента\n" "используемого в этой операции." -#: flatcamEditors/FlatCAMGeoEditor.py:443 flatcamGUI/FlatCAMGUI.py:5801 -#: flatcamGUI/FlatCAMGUI.py:6046 flatcamTools/ToolNonCopperClear.py:165 +#: flatcamEditors/FlatCAMGeoEditor.py:443 flatcamGUI/FlatCAMGUI.py:5780 +#: flatcamGUI/FlatCAMGUI.py:6025 flatcamTools/ToolNonCopperClear.py:165 #: flatcamTools/ToolPaint.py:160 msgid "Overlap Rate:" msgstr "Частота перекрытия:" @@ -2053,14 +2182,14 @@ msgstr "" "Более высокие значения = медленная обработка и медленное выполнение на ЧПУ\n" "из-за большого количества путей." -#: flatcamEditors/FlatCAMGeoEditor.py:461 flatcamGUI/FlatCAMGUI.py:5817 -#: flatcamGUI/FlatCAMGUI.py:5903 flatcamGUI/FlatCAMGUI.py:6056 +#: flatcamEditors/FlatCAMGeoEditor.py:461 flatcamGUI/FlatCAMGUI.py:5796 +#: flatcamGUI/FlatCAMGUI.py:5882 flatcamGUI/FlatCAMGUI.py:6035 #: flatcamTools/ToolCutOut.py:86 flatcamTools/ToolNonCopperClear.py:181 #: flatcamTools/ToolPaint.py:177 msgid "Margin:" msgstr "Отступ:" -#: flatcamEditors/FlatCAMGeoEditor.py:463 flatcamGUI/FlatCAMGUI.py:6058 +#: flatcamEditors/FlatCAMGeoEditor.py:463 flatcamGUI/FlatCAMGUI.py:6037 #: flatcamTools/ToolPaint.py:179 msgid "" "Distance by which to avoid\n" @@ -2068,13 +2197,13 @@ msgid "" "be painted." msgstr "Расстояние, которое не закрашивать до края полигона." -#: flatcamEditors/FlatCAMGeoEditor.py:472 flatcamGUI/FlatCAMGUI.py:5826 -#: flatcamGUI/FlatCAMGUI.py:6067 flatcamTools/ToolNonCopperClear.py:190 +#: flatcamEditors/FlatCAMGeoEditor.py:472 flatcamGUI/FlatCAMGUI.py:5805 +#: flatcamGUI/FlatCAMGUI.py:6046 flatcamTools/ToolNonCopperClear.py:190 #: flatcamTools/ToolPaint.py:188 msgid "Method:" msgstr "Метод:" -#: flatcamEditors/FlatCAMGeoEditor.py:474 flatcamGUI/FlatCAMGUI.py:6069 +#: flatcamEditors/FlatCAMGeoEditor.py:474 flatcamGUI/FlatCAMGUI.py:6048 msgid "" "Algorithm to paint the polygon:
Standard: Fixed step inwards." "
Seed-based: Outwards from seed." @@ -2082,14 +2211,14 @@ msgstr "" "Алгоритм отрисовки полигона:
Стандартный: Фиксированный шаг внутрь." "
По кругу: От центра наружу." -#: flatcamEditors/FlatCAMGeoEditor.py:487 flatcamGUI/FlatCAMGUI.py:5842 -#: flatcamGUI/FlatCAMGUI.py:6082 flatcamTools/ToolNonCopperClear.py:206 +#: flatcamEditors/FlatCAMGeoEditor.py:487 flatcamGUI/FlatCAMGUI.py:5821 +#: flatcamGUI/FlatCAMGUI.py:6061 flatcamTools/ToolNonCopperClear.py:206 #: flatcamTools/ToolPaint.py:204 msgid "Connect:" msgstr "Подключение:" -#: flatcamEditors/FlatCAMGeoEditor.py:489 flatcamGUI/FlatCAMGUI.py:5844 -#: flatcamGUI/FlatCAMGUI.py:6084 flatcamTools/ToolNonCopperClear.py:208 +#: flatcamEditors/FlatCAMGeoEditor.py:489 flatcamGUI/FlatCAMGUI.py:5823 +#: flatcamGUI/FlatCAMGUI.py:6063 flatcamTools/ToolNonCopperClear.py:208 #: flatcamTools/ToolPaint.py:206 msgid "" "Draw lines between resulting\n" @@ -2098,14 +2227,14 @@ msgstr "" "Рисовать линии между результирующей сегментами\n" " для минимизации подъёма инструмента." -#: flatcamEditors/FlatCAMGeoEditor.py:496 flatcamGUI/FlatCAMGUI.py:5851 -#: flatcamGUI/FlatCAMGUI.py:6092 flatcamTools/ToolNonCopperClear.py:215 +#: flatcamEditors/FlatCAMGeoEditor.py:496 flatcamGUI/FlatCAMGUI.py:5830 +#: flatcamGUI/FlatCAMGUI.py:6071 flatcamTools/ToolNonCopperClear.py:215 #: flatcamTools/ToolPaint.py:213 msgid "Contour:" msgstr "Контур:" -#: flatcamEditors/FlatCAMGeoEditor.py:498 flatcamGUI/FlatCAMGUI.py:5853 -#: flatcamGUI/FlatCAMGUI.py:6094 flatcamTools/ToolNonCopperClear.py:217 +#: flatcamEditors/FlatCAMGeoEditor.py:498 flatcamGUI/FlatCAMGUI.py:5832 +#: flatcamGUI/FlatCAMGUI.py:6073 flatcamTools/ToolNonCopperClear.py:217 #: flatcamTools/ToolPaint.py:215 msgid "" "Cut around the perimeter of the polygon\n" @@ -2126,7 +2255,7 @@ msgstr "Рисование" #: flatcamEditors/FlatCAMGeoEditor.py:563 msgid "[WARNING_NOTCL] Paint cancelled. No shape selected." -msgstr "" +msgstr "[WARNING_NOTCL] Краска отменена. Форма Не выбрана." #: flatcamEditors/FlatCAMGeoEditor.py:574 flatcamTools/ToolCutOut.py:355 #: flatcamTools/ToolCutOut.py:518 flatcamTools/ToolCutOut.py:657 @@ -2135,17 +2264,23 @@ msgid "" "[WARNING_NOTCL] Tool diameter value is missing or wrong format. Add it and " "retry." msgstr "" +"[WARNING_NOTCL] Отсутствует значение диаметра инструмента или неправильный " +"формат. Добавьте его и повторите попытку." #: flatcamEditors/FlatCAMGeoEditor.py:585 msgid "" "[WARNING_NOTCL] Overlap value is missing or wrong format. Add it and retry." msgstr "" +"[WARNING_NOTCL] Значение перекрытия отсутствует или неправильный формат. " +"Добавьте его и повторите попытку." #: flatcamEditors/FlatCAMGeoEditor.py:597 msgid "" "[WARNING_NOTCL] Margin distance value is missing or wrong format. Add it and " "retry." msgstr "" +"[WARNING_NOTCL] Значение расстояния поля отсутствует или имеет неправильный " +"формат. Добавьте его и повторите попытку." #: flatcamEditors/FlatCAMGeoEditor.py:606 #: flatcamEditors/FlatCAMGeoEditor.py:2707 @@ -2157,53 +2292,53 @@ msgstr "Инструменты" #: flatcamEditors/FlatCAMGeoEditor.py:617 #: flatcamEditors/FlatCAMGeoEditor.py:990 -#: flatcamEditors/FlatCAMGrbEditor.py:4531 -#: flatcamEditors/FlatCAMGrbEditor.py:4916 flatcamGUI/FlatCAMGUI.py:654 +#: flatcamEditors/FlatCAMGrbEditor.py:4539 +#: flatcamEditors/FlatCAMGrbEditor.py:4924 flatcamGUI/FlatCAMGUI.py:654 #: flatcamGUI/FlatCAMGUI.py:1879 flatcamTools/ToolTransform.py:398 msgid "Transform Tool" msgstr "Трансформация" #: flatcamEditors/FlatCAMGeoEditor.py:618 #: flatcamEditors/FlatCAMGeoEditor.py:679 -#: flatcamEditors/FlatCAMGrbEditor.py:4532 -#: flatcamEditors/FlatCAMGrbEditor.py:4594 flatcamTools/ToolTransform.py:24 +#: flatcamEditors/FlatCAMGrbEditor.py:4540 +#: flatcamEditors/FlatCAMGrbEditor.py:4602 flatcamTools/ToolTransform.py:24 #: flatcamTools/ToolTransform.py:82 msgid "Rotate" msgstr "Вращение" #: flatcamEditors/FlatCAMGeoEditor.py:619 -#: flatcamEditors/FlatCAMGrbEditor.py:4533 flatcamTools/ToolTransform.py:25 +#: flatcamEditors/FlatCAMGrbEditor.py:4541 flatcamTools/ToolTransform.py:25 msgid "Skew/Shear" msgstr "Наклон/Сдвиг" #: flatcamEditors/FlatCAMGeoEditor.py:620 #: flatcamEditors/FlatCAMGrbEditor.py:2471 -#: flatcamEditors/FlatCAMGrbEditor.py:4534 flatcamGUI/FlatCAMGUI.py:718 +#: flatcamEditors/FlatCAMGrbEditor.py:4542 flatcamGUI/FlatCAMGUI.py:718 #: flatcamGUI/FlatCAMGUI.py:1947 flatcamGUI/ObjectUI.py:100 #: flatcamTools/ToolTransform.py:26 msgid "Scale" msgstr "Масштаб" #: flatcamEditors/FlatCAMGeoEditor.py:621 -#: flatcamEditors/FlatCAMGrbEditor.py:4535 flatcamTools/ToolTransform.py:27 +#: flatcamEditors/FlatCAMGrbEditor.py:4543 flatcamTools/ToolTransform.py:27 msgid "Mirror (Flip)" msgstr "Зеркалирование (отражение)" #: flatcamEditors/FlatCAMGeoEditor.py:622 -#: flatcamEditors/FlatCAMGrbEditor.py:4536 flatcamGUI/ObjectUI.py:127 +#: flatcamEditors/FlatCAMGrbEditor.py:4544 flatcamGUI/ObjectUI.py:127 #: flatcamGUI/ObjectUI.py:891 flatcamGUI/ObjectUI.py:1465 #: flatcamTools/ToolTransform.py:28 msgid "Offset" msgstr "Смещение" #: flatcamEditors/FlatCAMGeoEditor.py:633 -#: flatcamEditors/FlatCAMGrbEditor.py:4548 +#: flatcamEditors/FlatCAMGrbEditor.py:4556 #, python-format msgid "Editor %s" msgstr "Редактор %s" #: flatcamEditors/FlatCAMGeoEditor.py:667 -#: flatcamEditors/FlatCAMGrbEditor.py:4582 flatcamTools/ToolTransform.py:70 +#: flatcamEditors/FlatCAMGrbEditor.py:4590 flatcamTools/ToolTransform.py:70 msgid "" "Angle for Rotation action, in degrees.\n" "Float number between -360 and 359.\n" @@ -2216,7 +2351,7 @@ msgstr "" "Отрицательные числа для движения против часовой стрелки." #: flatcamEditors/FlatCAMGeoEditor.py:681 -#: flatcamEditors/FlatCAMGrbEditor.py:4596 +#: flatcamEditors/FlatCAMGrbEditor.py:4604 msgid "" "Rotate the selected shape(s).\n" "The point of reference is the middle of\n" @@ -2227,14 +2362,14 @@ msgstr "" "ограничительной рамки для всех выбранных фигур." #: flatcamEditors/FlatCAMGeoEditor.py:704 -#: flatcamEditors/FlatCAMGrbEditor.py:4619 flatcamTools/ToolTransform.py:107 +#: flatcamEditors/FlatCAMGrbEditor.py:4627 flatcamTools/ToolTransform.py:107 msgid "Angle X:" msgstr "Угол X:" #: flatcamEditors/FlatCAMGeoEditor.py:706 #: flatcamEditors/FlatCAMGeoEditor.py:724 -#: flatcamEditors/FlatCAMGrbEditor.py:4621 -#: flatcamEditors/FlatCAMGrbEditor.py:4639 flatcamTools/ToolTransform.py:109 +#: flatcamEditors/FlatCAMGrbEditor.py:4629 +#: flatcamEditors/FlatCAMGrbEditor.py:4647 flatcamTools/ToolTransform.py:109 #: flatcamTools/ToolTransform.py:127 msgid "" "Angle for Skew action, in degrees.\n" @@ -2244,14 +2379,14 @@ msgstr "" "Число с плавающей запятой между -360 и 359." #: flatcamEditors/FlatCAMGeoEditor.py:715 -#: flatcamEditors/FlatCAMGrbEditor.py:4630 flatcamTools/ToolTransform.py:118 +#: flatcamEditors/FlatCAMGrbEditor.py:4638 flatcamTools/ToolTransform.py:118 msgid "Skew X" msgstr "Наклон X" #: flatcamEditors/FlatCAMGeoEditor.py:717 #: flatcamEditors/FlatCAMGeoEditor.py:735 -#: flatcamEditors/FlatCAMGrbEditor.py:4632 -#: flatcamEditors/FlatCAMGrbEditor.py:4650 +#: flatcamEditors/FlatCAMGrbEditor.py:4640 +#: flatcamEditors/FlatCAMGrbEditor.py:4658 msgid "" "Skew/shear the selected shape(s).\n" "The point of reference is the middle of\n" @@ -2262,34 +2397,34 @@ msgstr "" "ограничительной рамки для всех выбранных фигур." #: flatcamEditors/FlatCAMGeoEditor.py:722 -#: flatcamEditors/FlatCAMGrbEditor.py:4637 flatcamTools/ToolTransform.py:125 +#: flatcamEditors/FlatCAMGrbEditor.py:4645 flatcamTools/ToolTransform.py:125 msgid "Angle Y:" msgstr "Угол Y:" #: flatcamEditors/FlatCAMGeoEditor.py:733 -#: flatcamEditors/FlatCAMGrbEditor.py:4648 flatcamTools/ToolTransform.py:136 +#: flatcamEditors/FlatCAMGrbEditor.py:4656 flatcamTools/ToolTransform.py:136 msgid "Skew Y" msgstr "Наклон Y" #: flatcamEditors/FlatCAMGeoEditor.py:761 -#: flatcamEditors/FlatCAMGrbEditor.py:4676 flatcamTools/ToolTransform.py:164 +#: flatcamEditors/FlatCAMGrbEditor.py:4684 flatcamTools/ToolTransform.py:164 msgid "Factor X:" msgstr "Коэф. X:" #: flatcamEditors/FlatCAMGeoEditor.py:763 -#: flatcamEditors/FlatCAMGrbEditor.py:4678 flatcamTools/ToolTransform.py:166 +#: flatcamEditors/FlatCAMGrbEditor.py:4686 flatcamTools/ToolTransform.py:166 msgid "Factor for Scale action over X axis." msgstr "Коэффициент масштабирования по оси X." #: flatcamEditors/FlatCAMGeoEditor.py:771 -#: flatcamEditors/FlatCAMGrbEditor.py:4686 flatcamTools/ToolTransform.py:174 +#: flatcamEditors/FlatCAMGrbEditor.py:4694 flatcamTools/ToolTransform.py:174 msgid "Scale X" msgstr "Масштаб Х" #: flatcamEditors/FlatCAMGeoEditor.py:773 #: flatcamEditors/FlatCAMGeoEditor.py:790 -#: flatcamEditors/FlatCAMGrbEditor.py:4688 -#: flatcamEditors/FlatCAMGrbEditor.py:4705 +#: flatcamEditors/FlatCAMGrbEditor.py:4696 +#: flatcamEditors/FlatCAMGrbEditor.py:4713 msgid "" "Scale the selected shape(s).\n" "The point of reference depends on \n" @@ -2300,28 +2435,28 @@ msgstr "" "состояние флажка Scale Reference." #: flatcamEditors/FlatCAMGeoEditor.py:778 -#: flatcamEditors/FlatCAMGrbEditor.py:4693 flatcamTools/ToolTransform.py:181 +#: flatcamEditors/FlatCAMGrbEditor.py:4701 flatcamTools/ToolTransform.py:181 msgid "Factor Y:" msgstr "Коэф Y:" #: flatcamEditors/FlatCAMGeoEditor.py:780 -#: flatcamEditors/FlatCAMGrbEditor.py:4695 flatcamTools/ToolTransform.py:183 +#: flatcamEditors/FlatCAMGrbEditor.py:4703 flatcamTools/ToolTransform.py:183 msgid "Factor for Scale action over Y axis." msgstr "Коэффициент масштабирования по оси Y." #: flatcamEditors/FlatCAMGeoEditor.py:788 -#: flatcamEditors/FlatCAMGrbEditor.py:4703 flatcamTools/ToolTransform.py:191 +#: flatcamEditors/FlatCAMGrbEditor.py:4711 flatcamTools/ToolTransform.py:191 msgid "Scale Y" msgstr "Масштаб Y" #: flatcamEditors/FlatCAMGeoEditor.py:797 -#: flatcamEditors/FlatCAMGrbEditor.py:4712 flatcamGUI/FlatCAMGUI.py:6441 +#: flatcamEditors/FlatCAMGrbEditor.py:4720 flatcamGUI/FlatCAMGUI.py:6420 #: flatcamTools/ToolTransform.py:200 msgid "Link" msgstr "Ссылка" #: flatcamEditors/FlatCAMGeoEditor.py:799 -#: flatcamEditors/FlatCAMGrbEditor.py:4714 +#: flatcamEditors/FlatCAMGrbEditor.py:4722 msgid "" "Scale the selected shape(s)\n" "using the Scale Factor X for both axis." @@ -2330,39 +2465,43 @@ msgstr "" "используя коэффициент X для обеих осей." #: flatcamEditors/FlatCAMGeoEditor.py:805 -#: flatcamEditors/FlatCAMGrbEditor.py:4720 flatcamGUI/FlatCAMGUI.py:6449 +#: flatcamEditors/FlatCAMGrbEditor.py:4728 flatcamGUI/FlatCAMGUI.py:6428 #: flatcamTools/ToolTransform.py:208 msgid "Scale Reference" msgstr "Scale Reference" #: flatcamEditors/FlatCAMGeoEditor.py:807 -#: flatcamEditors/FlatCAMGrbEditor.py:4722 +#: flatcamEditors/FlatCAMGrbEditor.py:4730 msgid "" "Scale the selected shape(s)\n" "using the origin reference when checked,\n" "and the center of the biggest bounding box\n" "of the selected shapes when unchecked." msgstr "" +"Масштабировать выбранную форму(ы)\n" +"через начало координат при проверке,\n" +"а по центру большой прямоугольник \n" +"выбранных фигур, если флажок снят." #: flatcamEditors/FlatCAMGeoEditor.py:835 -#: flatcamEditors/FlatCAMGrbEditor.py:4751 flatcamTools/ToolTransform.py:238 +#: flatcamEditors/FlatCAMGrbEditor.py:4759 flatcamTools/ToolTransform.py:238 msgid "Value X:" msgstr "Значение X:" #: flatcamEditors/FlatCAMGeoEditor.py:837 -#: flatcamEditors/FlatCAMGrbEditor.py:4753 flatcamTools/ToolTransform.py:240 +#: flatcamEditors/FlatCAMGrbEditor.py:4761 flatcamTools/ToolTransform.py:240 msgid "Value for Offset action on X axis." msgstr "Значение для смещения по оси X." #: flatcamEditors/FlatCAMGeoEditor.py:845 -#: flatcamEditors/FlatCAMGrbEditor.py:4761 flatcamTools/ToolTransform.py:248 +#: flatcamEditors/FlatCAMGrbEditor.py:4769 flatcamTools/ToolTransform.py:248 msgid "Offset X" msgstr "Смещение Х" #: flatcamEditors/FlatCAMGeoEditor.py:847 #: flatcamEditors/FlatCAMGeoEditor.py:865 -#: flatcamEditors/FlatCAMGrbEditor.py:4763 -#: flatcamEditors/FlatCAMGrbEditor.py:4781 +#: flatcamEditors/FlatCAMGrbEditor.py:4771 +#: flatcamEditors/FlatCAMGrbEditor.py:4789 msgid "" "Offset the selected shape(s).\n" "The point of reference is the middle of\n" @@ -2373,29 +2512,29 @@ msgstr "" "ограничительной рамки для всех выбранных фигур.\n" #: flatcamEditors/FlatCAMGeoEditor.py:853 -#: flatcamEditors/FlatCAMGrbEditor.py:4769 flatcamTools/ToolTransform.py:255 +#: flatcamEditors/FlatCAMGrbEditor.py:4777 flatcamTools/ToolTransform.py:255 msgid "Value Y:" msgstr "Значение Y:" #: flatcamEditors/FlatCAMGeoEditor.py:855 -#: flatcamEditors/FlatCAMGrbEditor.py:4771 flatcamTools/ToolTransform.py:257 +#: flatcamEditors/FlatCAMGrbEditor.py:4779 flatcamTools/ToolTransform.py:257 msgid "Value for Offset action on Y axis." msgstr "Значение для смещения по оси Y." #: flatcamEditors/FlatCAMGeoEditor.py:863 -#: flatcamEditors/FlatCAMGrbEditor.py:4779 flatcamTools/ToolTransform.py:265 +#: flatcamEditors/FlatCAMGrbEditor.py:4787 flatcamTools/ToolTransform.py:265 msgid "Offset Y" msgstr "Смещение Y" #: flatcamEditors/FlatCAMGeoEditor.py:894 -#: flatcamEditors/FlatCAMGrbEditor.py:4810 flatcamTools/ToolTransform.py:295 +#: flatcamEditors/FlatCAMGrbEditor.py:4818 flatcamTools/ToolTransform.py:295 msgid "Flip on X" msgstr "Отразить по X" #: flatcamEditors/FlatCAMGeoEditor.py:896 #: flatcamEditors/FlatCAMGeoEditor.py:904 -#: flatcamEditors/FlatCAMGrbEditor.py:4812 #: flatcamEditors/FlatCAMGrbEditor.py:4820 +#: flatcamEditors/FlatCAMGrbEditor.py:4828 msgid "" "Flip the selected shape(s) over the X axis.\n" "Does not create a new shape." @@ -2404,17 +2543,17 @@ msgstr "" "Не создает новую фугуру." #: flatcamEditors/FlatCAMGeoEditor.py:902 -#: flatcamEditors/FlatCAMGrbEditor.py:4818 flatcamTools/ToolTransform.py:303 +#: flatcamEditors/FlatCAMGrbEditor.py:4826 flatcamTools/ToolTransform.py:303 msgid "Flip on Y" msgstr "Отразить по Y" #: flatcamEditors/FlatCAMGeoEditor.py:911 -#: flatcamEditors/FlatCAMGrbEditor.py:4827 flatcamTools/ToolTransform.py:312 +#: flatcamEditors/FlatCAMGrbEditor.py:4835 flatcamTools/ToolTransform.py:312 msgid "Ref Pt" -msgstr "" +msgstr "Точка отсчета" #: flatcamEditors/FlatCAMGeoEditor.py:913 -#: flatcamEditors/FlatCAMGrbEditor.py:4829 +#: flatcamEditors/FlatCAMGrbEditor.py:4837 msgid "" "Flip the selected shape(s)\n" "around the point in Point Entry Field.\n" @@ -2437,12 +2576,12 @@ msgstr "" "поле ввода и нажмите «Отразить по X (Y)»" #: flatcamEditors/FlatCAMGeoEditor.py:925 -#: flatcamEditors/FlatCAMGrbEditor.py:4841 flatcamTools/ToolTransform.py:325 +#: flatcamEditors/FlatCAMGrbEditor.py:4849 flatcamTools/ToolTransform.py:325 msgid "Point:" msgstr "Точка:" #: flatcamEditors/FlatCAMGeoEditor.py:927 -#: flatcamEditors/FlatCAMGrbEditor.py:4843 +#: flatcamEditors/FlatCAMGrbEditor.py:4851 msgid "" "Coordinates in format (x, y) used as reference for mirroring.\n" "The 'x' in (x, y) will be used when using Flip on X and\n" @@ -2454,7 +2593,7 @@ msgstr "" "'y' в (x, y) будет использоваться при отражении по Y." #: flatcamEditors/FlatCAMGeoEditor.py:939 -#: flatcamEditors/FlatCAMGrbEditor.py:4855 flatcamTools/ToolTransform.py:339 +#: flatcamEditors/FlatCAMGrbEditor.py:4863 flatcamTools/ToolTransform.py:339 msgid "" "The point coordinates can be captured by\n" "left click on canvas together with pressing\n" @@ -2465,237 +2604,259 @@ msgstr "" "клавиши SHIFT. Затем нажмите кнопку 'Добавить', чтобы вставить координаты." #: flatcamEditors/FlatCAMGeoEditor.py:1054 -#: flatcamEditors/FlatCAMGrbEditor.py:4980 +#: flatcamEditors/FlatCAMGrbEditor.py:4988 msgid "[WARNING_NOTCL] Transformation cancelled. No shape selected." -msgstr "" +msgstr "[WARNING_NOTCL] Трансформация отменяется. Форма Не выбрана." #: flatcamEditors/FlatCAMGeoEditor.py:1075 -#: flatcamEditors/FlatCAMGrbEditor.py:5000 flatcamTools/ToolTransform.py:468 +#: flatcamEditors/FlatCAMGrbEditor.py:5008 flatcamTools/ToolTransform.py:468 msgid "[ERROR_NOTCL] Wrong value format entered for Rotate, use a number." msgstr "" +"[ERROR_NOTCL] Неверный формат значения, введенный для поворота, используйте " +"число." #: flatcamEditors/FlatCAMGeoEditor.py:1112 -#: flatcamEditors/FlatCAMGrbEditor.py:5043 flatcamTools/ToolTransform.py:502 +#: flatcamEditors/FlatCAMGrbEditor.py:5051 flatcamTools/ToolTransform.py:502 msgid "[ERROR_NOTCL] Wrong value format entered for Skew X, use a number." msgstr "" +"[ERROR_NOTCL] Неверный формат значения, введенный для косого X, Используйте " +"число." #: flatcamEditors/FlatCAMGeoEditor.py:1133 -#: flatcamEditors/FlatCAMGrbEditor.py:5070 flatcamTools/ToolTransform.py:520 +#: flatcamEditors/FlatCAMGrbEditor.py:5078 flatcamTools/ToolTransform.py:520 msgid "[ERROR_NOTCL] Wrong value format entered for Skew Y, use a number." msgstr "" +"[ERROR_NOTCL] Неверный формат значения, введенный для косого Y, используйте " +"число." #: flatcamEditors/FlatCAMGeoEditor.py:1154 -#: flatcamEditors/FlatCAMGrbEditor.py:5097 flatcamTools/ToolTransform.py:538 +#: flatcamEditors/FlatCAMGrbEditor.py:5105 flatcamTools/ToolTransform.py:538 msgid "[ERROR_NOTCL] Wrong value format entered for Scale X, use a number." msgstr "" +"[ERROR_NOTCL] Неверный формат значения, введенный для шкалы X, Используйте " +"число." #: flatcamEditors/FlatCAMGeoEditor.py:1191 -#: flatcamEditors/FlatCAMGrbEditor.py:5138 flatcamTools/ToolTransform.py:572 +#: flatcamEditors/FlatCAMGrbEditor.py:5146 flatcamTools/ToolTransform.py:572 msgid "[ERROR_NOTCL] Wrong value format entered for Scale Y, use a number." msgstr "" +"[ERROR_NOTCL] Неверный формат значения, введенный для шкалы Y, используйте " +"число." #: flatcamEditors/FlatCAMGeoEditor.py:1223 -#: flatcamEditors/FlatCAMGrbEditor.py:5176 flatcamTools/ToolTransform.py:601 +#: flatcamEditors/FlatCAMGrbEditor.py:5184 flatcamTools/ToolTransform.py:601 msgid "[ERROR_NOTCL] Wrong value format entered for Offset X, use a number." msgstr "" +"[ERROR_NOTCL] Неверный формат значения, введенный для смещения X, " +"Используйте число." #: flatcamEditors/FlatCAMGeoEditor.py:1244 -#: flatcamEditors/FlatCAMGrbEditor.py:5202 flatcamTools/ToolTransform.py:619 +#: flatcamEditors/FlatCAMGrbEditor.py:5210 flatcamTools/ToolTransform.py:619 msgid "[ERROR_NOTCL] Wrong value format entered for Offset Y, use a number." msgstr "" +"[ERROR_NOTCL] Неверный формат значения, введенный для смещения Y, " +"используйте число." #: flatcamEditors/FlatCAMGeoEditor.py:1262 -#: flatcamEditors/FlatCAMGrbEditor.py:5225 +#: flatcamEditors/FlatCAMGrbEditor.py:5233 msgid "[WARNING_NOTCL] No shape selected. Please Select a shape to rotate!" msgstr "" +"[WARNING_NOTCL] Форма Не выбрана. Пожалуйста, выберите форму для поворота!" #: flatcamEditors/FlatCAMGeoEditor.py:1265 -#: flatcamEditors/FlatCAMGrbEditor.py:5228 flatcamTools/ToolTransform.py:640 +#: flatcamEditors/FlatCAMGrbEditor.py:5236 flatcamTools/ToolTransform.py:640 msgid "Appying Rotate" msgstr "Применение поворота" #: flatcamEditors/FlatCAMGeoEditor.py:1293 -#: flatcamEditors/FlatCAMGrbEditor.py:5259 +#: flatcamEditors/FlatCAMGrbEditor.py:5269 msgid "[success] Done. Rotate completed." msgstr "[success] Готово. Поворот выполнен." #: flatcamEditors/FlatCAMGeoEditor.py:1309 -#: flatcamEditors/FlatCAMGrbEditor.py:5278 +#: flatcamEditors/FlatCAMGrbEditor.py:5288 msgid "[WARNING_NOTCL] No shape selected. Please Select a shape to flip!" msgstr "" +"[WARNING_NOTCL] Форма Не выбрана. Пожалуйста, выберите форму, чтобы " +"перевернуть!" #: flatcamEditors/FlatCAMGeoEditor.py:1312 -#: flatcamEditors/FlatCAMGrbEditor.py:5281 flatcamTools/ToolTransform.py:691 +#: flatcamEditors/FlatCAMGrbEditor.py:5291 flatcamTools/ToolTransform.py:691 msgid "Applying Flip" msgstr "Применение отражения" #: flatcamEditors/FlatCAMGeoEditor.py:1342 -#: flatcamEditors/FlatCAMGrbEditor.py:5318 flatcamTools/ToolTransform.py:733 +#: flatcamEditors/FlatCAMGrbEditor.py:5330 flatcamTools/ToolTransform.py:733 msgid "[success] Flip on the Y axis done ..." msgstr "[success] Отражение по оси Y завершено ..." #: flatcamEditors/FlatCAMGeoEditor.py:1345 -#: flatcamEditors/FlatCAMGrbEditor.py:5326 flatcamTools/ToolTransform.py:742 +#: flatcamEditors/FlatCAMGrbEditor.py:5338 flatcamTools/ToolTransform.py:742 msgid "[success] Flip on the X axis done ..." msgstr "[success] Отражение по оси Х завершёно ..." #: flatcamEditors/FlatCAMGeoEditor.py:1364 -#: flatcamEditors/FlatCAMGrbEditor.py:5346 +#: flatcamEditors/FlatCAMGrbEditor.py:5358 msgid "[WARNING_NOTCL] No shape selected. Please Select a shape to shear/skew!" msgstr "" +"[WARNING_NOTCL] Форма Не выбрана. Пожалуйста, выберите форму для сдвига/" +"наклона!" #: flatcamEditors/FlatCAMGeoEditor.py:1367 -#: flatcamEditors/FlatCAMGrbEditor.py:5349 flatcamTools/ToolTransform.py:760 +#: flatcamEditors/FlatCAMGrbEditor.py:5361 flatcamTools/ToolTransform.py:760 msgid "Applying Skew" msgstr "Применение наклона" #: flatcamEditors/FlatCAMGeoEditor.py:1392 -#: flatcamEditors/FlatCAMGrbEditor.py:5382 flatcamTools/ToolTransform.py:791 +#: flatcamEditors/FlatCAMGrbEditor.py:5396 flatcamTools/ToolTransform.py:791 #, python-format msgid "[success] Skew on the %s axis done ..." -msgstr "" +msgstr "[success] Наклон оси %s выполнен ..." #: flatcamEditors/FlatCAMGeoEditor.py:1396 -#: flatcamEditors/FlatCAMGrbEditor.py:5386 flatcamTools/ToolTransform.py:795 +#: flatcamEditors/FlatCAMGrbEditor.py:5400 flatcamTools/ToolTransform.py:795 #, python-format msgid "[ERROR_NOTCL] Due of %s, Skew action was not executed." -msgstr "" +msgstr "[ERROR_NOTCL] Из-за %s не было выполнено действие Skew." #: flatcamEditors/FlatCAMGeoEditor.py:1407 -#: flatcamEditors/FlatCAMGrbEditor.py:5405 +#: flatcamEditors/FlatCAMGrbEditor.py:5419 msgid "[WARNING_NOTCL] No shape selected. Please Select a shape to scale!" msgstr "" +"[WARNING_NOTCL] Форма Не выбрана. Пожалуйста, выберите форму для " +"масштабирования!" #: flatcamEditors/FlatCAMGeoEditor.py:1410 -#: flatcamEditors/FlatCAMGrbEditor.py:5408 flatcamTools/ToolTransform.py:809 +#: flatcamEditors/FlatCAMGrbEditor.py:5422 flatcamTools/ToolTransform.py:809 msgid "Applying Scale" msgstr "Применение масштабирования" #: flatcamEditors/FlatCAMGeoEditor.py:1443 -#: flatcamEditors/FlatCAMGrbEditor.py:5444 flatcamTools/ToolTransform.py:848 +#: flatcamEditors/FlatCAMGrbEditor.py:5460 flatcamTools/ToolTransform.py:848 #, python-format msgid "[success] Scale on the %s axis done ..." -msgstr "" +msgstr "[success] Масштабирование по оси %s выполнено ..." #: flatcamEditors/FlatCAMGeoEditor.py:1446 -#: flatcamEditors/FlatCAMGrbEditor.py:5447 flatcamTools/ToolTransform.py:851 +#: flatcamEditors/FlatCAMGrbEditor.py:5463 flatcamTools/ToolTransform.py:851 #, python-format msgid "[ERROR_NOTCL] Due of %s, Scale action was not executed." -msgstr "" +msgstr "[ERROR_NOTCL] Из-за %s действие масштабирования не было выполнено." #: flatcamEditors/FlatCAMGeoEditor.py:1455 -#: flatcamEditors/FlatCAMGrbEditor.py:5460 +#: flatcamEditors/FlatCAMGrbEditor.py:5476 msgid "[WARNING_NOTCL] No shape selected. Please Select a shape to offset!" msgstr "" +"[WARNING_NOTCL] Форма Не выбрана. Пожалуйста, выберите форму для смещения!" #: flatcamEditors/FlatCAMGeoEditor.py:1458 -#: flatcamEditors/FlatCAMGrbEditor.py:5463 flatcamTools/ToolTransform.py:861 +#: flatcamEditors/FlatCAMGrbEditor.py:5479 flatcamTools/ToolTransform.py:861 msgid "Applying Offset" msgstr "Применение смещения" #: flatcamEditors/FlatCAMGeoEditor.py:1469 -#: flatcamEditors/FlatCAMGrbEditor.py:5484 flatcamTools/ToolTransform.py:880 +#: flatcamEditors/FlatCAMGrbEditor.py:5501 flatcamTools/ToolTransform.py:880 #, python-format msgid "[success] Offset on the %s axis done ..." -msgstr "" +msgstr "[success] Смещение по оси %s выполнено ..." #: flatcamEditors/FlatCAMGeoEditor.py:1473 -#: flatcamEditors/FlatCAMGrbEditor.py:5488 flatcamTools/ToolTransform.py:884 +#: flatcamEditors/FlatCAMGrbEditor.py:5505 flatcamTools/ToolTransform.py:884 #, python-format msgid "[ERROR_NOTCL] Due of %s, Offset action was not executed." -msgstr "" +msgstr "[ERROR_NOTCL] Из-за %s действие смещения не было выполнено." #: flatcamEditors/FlatCAMGeoEditor.py:1477 -#: flatcamEditors/FlatCAMGrbEditor.py:5492 +#: flatcamEditors/FlatCAMGrbEditor.py:5509 msgid "Rotate ..." msgstr "Поворот ..." #: flatcamEditors/FlatCAMGeoEditor.py:1478 #: flatcamEditors/FlatCAMGeoEditor.py:1535 #: flatcamEditors/FlatCAMGeoEditor.py:1552 -#: flatcamEditors/FlatCAMGrbEditor.py:5493 -#: flatcamEditors/FlatCAMGrbEditor.py:5550 +#: flatcamEditors/FlatCAMGrbEditor.py:5510 #: flatcamEditors/FlatCAMGrbEditor.py:5567 +#: flatcamEditors/FlatCAMGrbEditor.py:5584 msgid "Enter an Angle Value (degrees):" msgstr "Введите значение угла (градусы):" #: flatcamEditors/FlatCAMGeoEditor.py:1487 -#: flatcamEditors/FlatCAMGrbEditor.py:5502 +#: flatcamEditors/FlatCAMGrbEditor.py:5519 msgid "[success] Geometry shape rotate done..." -msgstr "" +msgstr "[success] Геометрия форма поворот сделано..." #: flatcamEditors/FlatCAMGeoEditor.py:1492 -#: flatcamEditors/FlatCAMGrbEditor.py:5507 +#: flatcamEditors/FlatCAMGrbEditor.py:5524 msgid "[WARNING_NOTCL] Geometry shape rotate cancelled..." -msgstr "" +msgstr "[WARNING_NOTCL] Геометрия фигуры поворот отменен..." #: flatcamEditors/FlatCAMGeoEditor.py:1498 -#: flatcamEditors/FlatCAMGrbEditor.py:5513 +#: flatcamEditors/FlatCAMGrbEditor.py:5530 msgid "Offset on X axis ..." msgstr "Смещение по оси X ..." #: flatcamEditors/FlatCAMGeoEditor.py:1499 #: flatcamEditors/FlatCAMGeoEditor.py:1518 -#: flatcamEditors/FlatCAMGrbEditor.py:5514 -#: flatcamEditors/FlatCAMGrbEditor.py:5533 +#: flatcamEditors/FlatCAMGrbEditor.py:5531 +#: flatcamEditors/FlatCAMGrbEditor.py:5550 #, python-format msgid "Enter a distance Value (%s):" msgstr "Введите значение расстояния (%s):" #: flatcamEditors/FlatCAMGeoEditor.py:1508 -#: flatcamEditors/FlatCAMGrbEditor.py:5523 +#: flatcamEditors/FlatCAMGrbEditor.py:5540 msgid "[success] Geometry shape offset on X axis done..." -msgstr "" +msgstr "[success] Смещение формы геометрии по оси X выполнено..." #: flatcamEditors/FlatCAMGeoEditor.py:1512 -#: flatcamEditors/FlatCAMGrbEditor.py:5527 +#: flatcamEditors/FlatCAMGrbEditor.py:5544 msgid "[WARNING_NOTCL] Geometry shape offset X cancelled..." -msgstr "" +msgstr "[WARNING_NOTCL] Смещение формы геометрии X отменено..." #: flatcamEditors/FlatCAMGeoEditor.py:1517 -#: flatcamEditors/FlatCAMGrbEditor.py:5532 +#: flatcamEditors/FlatCAMGrbEditor.py:5549 msgid "Offset on Y axis ..." msgstr "Смещение по оси Y ..." #: flatcamEditors/FlatCAMGeoEditor.py:1527 -#: flatcamEditors/FlatCAMGrbEditor.py:5542 +#: flatcamEditors/FlatCAMGrbEditor.py:5559 msgid "[success] Geometry shape offset on Y axis done..." -msgstr "" +msgstr "[success] Смещение формы геометрии по оси Y выполнено..." #: flatcamEditors/FlatCAMGeoEditor.py:1531 -#: flatcamEditors/FlatCAMGrbEditor.py:5546 +#: flatcamEditors/FlatCAMGrbEditor.py:5563 msgid "[WARNING_NOTCL] Geometry shape offset Y cancelled..." -msgstr "" +msgstr "[WARNING_NOTCL] Смещение формы геометрии Y отменено..." #: flatcamEditors/FlatCAMGeoEditor.py:1534 -#: flatcamEditors/FlatCAMGrbEditor.py:5549 +#: flatcamEditors/FlatCAMGrbEditor.py:5566 msgid "Skew on X axis ..." msgstr "Наклон по оси X ..." #: flatcamEditors/FlatCAMGeoEditor.py:1544 -#: flatcamEditors/FlatCAMGrbEditor.py:5559 +#: flatcamEditors/FlatCAMGrbEditor.py:5576 msgid "[success] Geometry shape skew on X axis done..." -msgstr "" +msgstr "[success] Геометрия форма перекос по оси X сделано..." #: flatcamEditors/FlatCAMGeoEditor.py:1548 -#: flatcamEditors/FlatCAMGrbEditor.py:5563 +#: flatcamEditors/FlatCAMGrbEditor.py:5580 msgid "[WARNING_NOTCL] Geometry shape skew X cancelled..." -msgstr "" +msgstr "[WARNING_NOTCL] Геометрия форма перекоса X отменена..." #: flatcamEditors/FlatCAMGeoEditor.py:1551 -#: flatcamEditors/FlatCAMGrbEditor.py:5566 +#: flatcamEditors/FlatCAMGrbEditor.py:5583 msgid "Skew on Y axis ..." msgstr "Наклон по оси Y ..." #: flatcamEditors/FlatCAMGeoEditor.py:1561 -#: flatcamEditors/FlatCAMGrbEditor.py:5576 +#: flatcamEditors/FlatCAMGrbEditor.py:5593 msgid "[success] Geometry shape skew on Y axis done..." -msgstr "" +msgstr "[success] Геометрия форма перекос по оси Y сделано..." #: flatcamEditors/FlatCAMGeoEditor.py:1565 -#: flatcamEditors/FlatCAMGrbEditor.py:5580 +#: flatcamEditors/FlatCAMGrbEditor.py:5597 msgid "[WARNING_NOTCL] Geometry shape skew Y cancelled..." -msgstr "" +msgstr "[WARNING_NOTCL] Геометрия форма перекоса Y отменена..." #: flatcamEditors/FlatCAMGeoEditor.py:1929 #: flatcamEditors/FlatCAMGeoEditor.py:1980 @@ -2711,7 +2872,7 @@ msgstr "Для завершения щелкните по периметру ... #: flatcamEditors/FlatCAMGeoEditor.py:1965 msgid "[success] Done. Adding Circle completed." -msgstr "" +msgstr "[success] Сделанный. Добавление круга завершено." #: flatcamEditors/FlatCAMGeoEditor.py:2000 #: flatcamEditors/FlatCAMGrbEditor.py:1462 @@ -2766,7 +2927,7 @@ msgstr "Режим: Центр -> Старт -> Стоп. Нажмите на ц #: flatcamEditors/FlatCAMGeoEditor.py:2179 msgid "[success] Done. Arc completed." -msgstr "" +msgstr "[success] Сделанный. Дуга завершена." #: flatcamEditors/FlatCAMGeoEditor.py:2198 #: flatcamEditors/FlatCAMGeoEditor.py:2251 @@ -2780,7 +2941,7 @@ msgstr "Нажмите на противоположном углу для за #: flatcamEditors/FlatCAMGeoEditor.py:2232 msgid "[success] Done. Rectangle completed." -msgstr "" +msgstr "[success] Сделанный. Прямоугольник завершен." #: flatcamEditors/FlatCAMGeoEditor.py:2258 msgid "Click on next Point or click right mouse button to complete ..." @@ -2790,22 +2951,24 @@ msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:2286 msgid "[success] Done. Polygon completed." -msgstr "" +msgstr "[success] Сделанный. Полигон завершен." #: flatcamEditors/FlatCAMGeoEditor.py:2296 #: flatcamEditors/FlatCAMGeoEditor.py:2342 #: flatcamEditors/FlatCAMGrbEditor.py:1058 #: flatcamEditors/FlatCAMGrbEditor.py:1252 msgid "Backtracked one point ..." -msgstr "" +msgstr "Отступил на одно очко ..." #: flatcamEditors/FlatCAMGeoEditor.py:2324 msgid "[success] Done. Path completed." -msgstr "" +msgstr "[success] Сделанный. Путь завершен." #: flatcamEditors/FlatCAMGeoEditor.py:2447 msgid "[WARNING_NOTCL] MOVE: No shape selected. Select a shape to move ..." msgstr "" +"[WARNING_NOTCL] Перемещение: фигура Не выбрана. Выберите фигуру для " +"перемещения ..." #: flatcamEditors/FlatCAMGeoEditor.py:2449 #: flatcamEditors/FlatCAMGeoEditor.py:2461 @@ -2818,11 +2981,11 @@ msgstr " Нажмите на конечную точку ..." #: flatcamEditors/FlatCAMGeoEditor.py:2486 msgid "[success] Done. Geometry(s) Move completed." -msgstr "" +msgstr "[success] Сделанный. Геометрия(ы) перемещать завершенные." #: flatcamEditors/FlatCAMGeoEditor.py:2606 msgid "[success] Done. Geometry(s) Copy completed." -msgstr "" +msgstr "[success] Сделанный. Геометрия(ы) копирование завершено." #: flatcamEditors/FlatCAMGeoEditor.py:2640 #, python-format @@ -2830,45 +2993,47 @@ msgid "" "[ERROR]Font not supported. Only Regular, Bold, Italic and BoldItalic are " "supported. Error: %s" msgstr "" +"[ERROR] Шрифт не поддерживается. Поддерживаются только обычный, полужирный, " +"курсив и полужирный курсив. Ошибка: %s" #: flatcamEditors/FlatCAMGeoEditor.py:2650 msgid "[success] Done. Adding Text completed." -msgstr "" +msgstr "[success] Сделанный. Добавление текста завершено." #: flatcamEditors/FlatCAMGeoEditor.py:2678 msgid "Create buffer geometry ..." -msgstr "" +msgstr "Создайте геометрию буфера ..." #: flatcamEditors/FlatCAMGeoEditor.py:2689 #: flatcamEditors/FlatCAMGeoEditor.py:2715 #: flatcamEditors/FlatCAMGeoEditor.py:2741 msgid "[WARNING_NOTCL] Buffer cancelled. No shape selected." -msgstr "" +msgstr "[WARNING_NOTCL] Буфер отменен. Форма Не выбрана." #: flatcamEditors/FlatCAMGeoEditor.py:2711 -#: flatcamEditors/FlatCAMGrbEditor.py:4442 +#: flatcamEditors/FlatCAMGrbEditor.py:4447 msgid "[success] Done. Buffer Tool completed." -msgstr "" +msgstr "[success] Сделанный. Буферный инструмент завершен." #: flatcamEditors/FlatCAMGeoEditor.py:2737 msgid "[success] Done. Buffer Int Tool completed." -msgstr "" +msgstr "[success] Сделанный. Инструмент Buffer Int завершен." #: flatcamEditors/FlatCAMGeoEditor.py:2763 msgid "[success] Done. Buffer Ext Tool completed." -msgstr "" +msgstr "[success] Сделанный. Инструмент Buffer Ext завершен." #: flatcamEditors/FlatCAMGeoEditor.py:2798 #: flatcamEditors/FlatCAMGrbEditor.py:1983 msgid "Select a shape to act as deletion area ..." -msgstr "" +msgstr "Выберите фигуру в качестве области удаления ..." #: flatcamEditors/FlatCAMGeoEditor.py:2800 #: flatcamEditors/FlatCAMGeoEditor.py:2819 #: flatcamEditors/FlatCAMGeoEditor.py:2825 #: flatcamEditors/FlatCAMGrbEditor.py:1985 msgid "Click to pick-up the erase shape..." -msgstr "" +msgstr "Нажмите, чтобы забрать форму стирания..." #: flatcamEditors/FlatCAMGeoEditor.py:2829 #: flatcamEditors/FlatCAMGrbEditor.py:2042 @@ -2878,119 +3043,135 @@ msgstr "Нажмите для очистки ..." #: flatcamEditors/FlatCAMGeoEditor.py:2858 #: flatcamEditors/FlatCAMGrbEditor.py:2075 msgid "[success] Done. Eraser tool action completed." -msgstr "" +msgstr "[success] Сделанный. Ластик действие завершено." #: flatcamEditors/FlatCAMGeoEditor.py:2901 msgid "Create Paint geometry ..." -msgstr "" +msgstr "Создайте геометрию краски ..." #: flatcamEditors/FlatCAMGeoEditor.py:2915 #: flatcamEditors/FlatCAMGrbEditor.py:2217 msgid "Shape transformations ..." -msgstr "" +msgstr "Преобразования формы ..." -#: flatcamEditors/FlatCAMGeoEditor.py:3416 +#: flatcamEditors/FlatCAMGeoEditor.py:3419 #, python-brace-format msgid "" "[WARNING_NOTCL] Editing MultiGeo Geometry, tool: {tool} with diameter: {dia}" msgstr "" +"[WARNING_NOTCL] Редактирование мульти Гео геометрии, инструмент: {tool} с " +"диаметром: {dia}" -#: flatcamEditors/FlatCAMGeoEditor.py:3793 +#: flatcamEditors/FlatCAMGeoEditor.py:3796 msgid "[WARNING_NOTCL] Copy cancelled. No shape selected." -msgstr "" +msgstr "[WARNING_NOTCL] Копия отменена. Форма Не выбрана." -#: flatcamEditors/FlatCAMGeoEditor.py:3800 flatcamGUI/FlatCAMGUI.py:2727 +#: flatcamEditors/FlatCAMGeoEditor.py:3803 flatcamGUI/FlatCAMGUI.py:2727 #: flatcamGUI/FlatCAMGUI.py:2773 flatcamGUI/FlatCAMGUI.py:2791 #: flatcamGUI/FlatCAMGUI.py:2922 flatcamGUI/FlatCAMGUI.py:2934 #: flatcamGUI/FlatCAMGUI.py:2968 msgid "Click on target point." msgstr "Нажмите на целевой точке." -#: flatcamEditors/FlatCAMGeoEditor.py:4044 -#: flatcamEditors/FlatCAMGeoEditor.py:4079 +#: flatcamEditors/FlatCAMGeoEditor.py:4047 +#: flatcamEditors/FlatCAMGeoEditor.py:4082 msgid "" "[WARNING_NOTCL] A selection of at least 2 geo items is required to do " "Intersection." msgstr "" +"[WARNING_NOTCL] Выбор по крайней мере 2 гео элементов требуется сделать " +"пересечение." -#: flatcamEditors/FlatCAMGeoEditor.py:4163 -#: flatcamEditors/FlatCAMGeoEditor.py:4201 -#: flatcamEditors/FlatCAMGeoEditor.py:4277 +#: flatcamEditors/FlatCAMGeoEditor.py:4166 +#: flatcamEditors/FlatCAMGeoEditor.py:4204 +#: flatcamEditors/FlatCAMGeoEditor.py:4280 msgid "" "[ERROR_NOTCL] Negative buffer value is not accepted. Use Buffer interior to " "generate an 'inside' shape" msgstr "" +"[ERROR_NOTCL] Отрицательное значение буфера не принимается. Используйте " +"буфер интерьер для создания \"внутри\" формы" -#: flatcamEditors/FlatCAMGeoEditor.py:4172 -#: flatcamEditors/FlatCAMGeoEditor.py:4210 -#: flatcamEditors/FlatCAMGeoEditor.py:4285 +#: flatcamEditors/FlatCAMGeoEditor.py:4175 +#: flatcamEditors/FlatCAMGeoEditor.py:4213 +#: flatcamEditors/FlatCAMGeoEditor.py:4288 msgid "[WARNING_NOTCL] Nothing selected for buffering." -msgstr "" +msgstr "[WARNING_NOTCL] Ничего не выбрано для буферизации." -#: flatcamEditors/FlatCAMGeoEditor.py:4176 -#: flatcamEditors/FlatCAMGeoEditor.py:4214 -#: flatcamEditors/FlatCAMGeoEditor.py:4289 +#: flatcamEditors/FlatCAMGeoEditor.py:4179 +#: flatcamEditors/FlatCAMGeoEditor.py:4217 +#: flatcamEditors/FlatCAMGeoEditor.py:4292 msgid "[WARNING_NOTCL] Invalid distance for buffering." -msgstr "" +msgstr "[WARNING_NOTCL] Недопустимое расстояние для буферизации." -#: flatcamEditors/FlatCAMGeoEditor.py:4186 -#: flatcamEditors/FlatCAMGeoEditor.py:4298 +#: flatcamEditors/FlatCAMGeoEditor.py:4189 +#: flatcamEditors/FlatCAMGeoEditor.py:4301 msgid "" "[ERROR_NOTCL] Failed, the result is empty. Choose a different buffer value." msgstr "" +"[ERROR_NOTCL] Не удалось, результат пуст. Выберите другое значение буфера." -#: flatcamEditors/FlatCAMGeoEditor.py:4194 +#: flatcamEditors/FlatCAMGeoEditor.py:4197 msgid "[success] Full buffer geometry created." -msgstr "" +msgstr "[success] Создана полная геометрия буфера." -#: flatcamEditors/FlatCAMGeoEditor.py:4224 +#: flatcamEditors/FlatCAMGeoEditor.py:4227 msgid "" "[ERROR_NOTCL] Failed, the result is empty. Choose a smaller buffer value." msgstr "" +"[ERROR_NOTCL] Не удалось, результат пуст. Выберите меньшее значение буфера." -#: flatcamEditors/FlatCAMGeoEditor.py:4239 +#: flatcamEditors/FlatCAMGeoEditor.py:4242 msgid "[success] Interior buffer geometry created." -msgstr "" +msgstr "[success] Создана геометрия внутреннего буфера." -#: flatcamEditors/FlatCAMGeoEditor.py:4310 +#: flatcamEditors/FlatCAMGeoEditor.py:4313 msgid "[success] Exterior buffer geometry created." -msgstr "" +msgstr "[success] Создана геометрия внешнего буфера." -#: flatcamEditors/FlatCAMGeoEditor.py:4374 +#: flatcamEditors/FlatCAMGeoEditor.py:4377 msgid "[WARNING_NOTCL] Nothing selected for painting." -msgstr "" +msgstr "[WARNING_NOTCL] Ничего не выбрано для рисования." -#: flatcamEditors/FlatCAMGeoEditor.py:4380 +#: flatcamEditors/FlatCAMGeoEditor.py:4383 msgid "[WARNING] Invalid value for {}" msgstr "[WARNING] Неверное значение для {}" -#: flatcamEditors/FlatCAMGeoEditor.py:4386 +#: flatcamEditors/FlatCAMGeoEditor.py:4389 msgid "" "[ERROR_NOTCL] Could not do Paint. Overlap value has to be less than 1.00 " "(100%)." msgstr "" +"[ERROR_NOTCL] Не мог сделать краску. Значение перекрытия должно быть меньше " +"1,00 (100%)." -#: flatcamEditors/FlatCAMGeoEditor.py:4445 +#: flatcamEditors/FlatCAMGeoEditor.py:4448 #, python-format msgid "" "[ERROR] Could not do Paint. Try a different combination of parameters. Or a " "different method of Paint\n" "%s" msgstr "" +"[ERROR] Не мог сделать краску. Попробуйте другую комбинацию параметров. Или " +"другой метод краски\n" +"%s" -#: flatcamEditors/FlatCAMGeoEditor.py:4456 +#: flatcamEditors/FlatCAMGeoEditor.py:4459 msgid "[success] Paint done." -msgstr "" +msgstr "[success] Краска готова." #: flatcamEditors/FlatCAMGrbEditor.py:200 msgid "[WARNING_NOTCL] To add an Pad first select a aperture in Aperture Table" msgstr "" +"[WARNING_NOTCL] Чтобы добавить Ipad, сначала выберите диафрагму в таблице " +"диафрагмы" #: flatcamEditors/FlatCAMGrbEditor.py:206 #: flatcamEditors/FlatCAMGrbEditor.py:398 msgid "" "[WARNING_NOTCL] Aperture size is zero. It needs to be greater than zero." msgstr "" +"[WARNING_NOTCL] Размер диафрагмы равен нулю. Она должна быть больше нуля." #: flatcamEditors/FlatCAMGrbEditor.py:357 #: flatcamEditors/FlatCAMGrbEditor.py:662 @@ -3001,28 +3182,30 @@ msgstr "" #: flatcamEditors/FlatCAMGrbEditor.py:369 msgid "[success] Done. Adding Pad completed." -msgstr "" +msgstr "[success] Сделанный. Добавление площадки завершено." #: flatcamEditors/FlatCAMGrbEditor.py:391 msgid "" "[WARNING_NOTCL] To add an Pad Array first select a aperture in Aperture Table" msgstr "" +"[WARNING_NOTCL] Чтобы добавить массив Pad, сначала выберите диафрагму в " +"таблице диафрагм" #: flatcamEditors/FlatCAMGrbEditor.py:468 msgid "Click on the Pad Circular Array Start position" -msgstr "" +msgstr "Нажмите на пусковую позицию кругового массива пусковой площадки" #: flatcamEditors/FlatCAMGrbEditor.py:497 msgid "[ERROR_NOTCL] The value is mistyped. Check the value." -msgstr "" +msgstr "[ERROR_NOTCL] Значение вводится с ошибкой. Проверьте значение." #: flatcamEditors/FlatCAMGrbEditor.py:687 msgid "[WARNING_NOTCL] Too many Pads for the selected spacing angle." -msgstr "" +msgstr "[WARNING_NOTCL] Слишком много прокладок для выбранного угла интервала." #: flatcamEditors/FlatCAMGrbEditor.py:709 msgid "[success] Done. Pad Array added." -msgstr "" +msgstr "[success] Сделанный. Такие площадки добавил." #: flatcamEditors/FlatCAMGrbEditor.py:730 msgid "Select shape(s) and then click ..." @@ -3030,17 +3213,19 @@ msgstr "Выберите фигуры, а затем нажмите ..." #: flatcamEditors/FlatCAMGrbEditor.py:741 msgid "[ERROR_NOTCL] Failed. Nothing selected." -msgstr "" +msgstr "[ERROR_NOTCL] Неудачный. Ничего не выбрано." #: flatcamEditors/FlatCAMGrbEditor.py:756 msgid "" "[WARNING_NOTCL] Failed. Poligonize works only on geometries belonging to the " "same aperture." msgstr "" +"[WARNING_NOTCL] Неудачный. Polygonize работает только с геометриями, " +"принадлежащими к одной апертуре." #: flatcamEditors/FlatCAMGrbEditor.py:809 msgid "[success] Done. Poligonize completed." -msgstr "" +msgstr "[success] Сделанный. Полигонизация завершена." #: flatcamEditors/FlatCAMGrbEditor.py:860 #: flatcamEditors/FlatCAMGrbEditor.py:1075 @@ -3083,27 +3268,27 @@ msgstr "Угловой режим 5: свободный угол ..." #: flatcamEditors/FlatCAMGrbEditor.py:1284 #: flatcamEditors/FlatCAMGrbEditor.py:1323 msgid "Track Mode 1: 45 degrees ..." -msgstr "" +msgstr "Режим дорожки 1: 45 градусов ..." #: flatcamEditors/FlatCAMGrbEditor.py:1264 #: flatcamEditors/FlatCAMGrbEditor.py:1318 msgid "Track Mode 2: Reverse 45 degrees ..." -msgstr "" +msgstr "Режим дорожки 2: обратный 45 градусов ..." #: flatcamEditors/FlatCAMGrbEditor.py:1269 #: flatcamEditors/FlatCAMGrbEditor.py:1313 msgid "Track Mode 3: 90 degrees ..." -msgstr "" +msgstr "Режим трека 3: 90 градусов ..." #: flatcamEditors/FlatCAMGrbEditor.py:1274 #: flatcamEditors/FlatCAMGrbEditor.py:1308 msgid "Track Mode 4: Reverse 90 degrees ..." -msgstr "" +msgstr "Режим дорожки 4: обратный 90 градусов ..." #: flatcamEditors/FlatCAMGrbEditor.py:1279 #: flatcamEditors/FlatCAMGrbEditor.py:1303 msgid "Track Mode 5: Free angle ..." -msgstr "" +msgstr "Режим дорожки 5: свободный угол ..." #: flatcamEditors/FlatCAMGrbEditor.py:1683 msgid "Scale the selected Gerber apertures ..." @@ -3111,19 +3296,19 @@ msgstr "Масштабирование выбранных отверстий Ger #: flatcamEditors/FlatCAMGrbEditor.py:1725 msgid "Buffer the selected apertures ..." -msgstr "" +msgstr "Буфер некоторые отверстия ..." #: flatcamEditors/FlatCAMGrbEditor.py:1769 msgid "[WARNING_NOTCL] Nothing selected to move ..." -msgstr "" +msgstr "[WARNING_NOTCL] Ничего не выбрано для перемещения ..." #: flatcamEditors/FlatCAMGrbEditor.py:1892 msgid "[success] Done. Apertures Move completed." -msgstr "" +msgstr "[success] Сделанный. Отверстия перемещать завершенные." #: flatcamEditors/FlatCAMGrbEditor.py:1968 msgid "[success] Done. Apertures copied." -msgstr "" +msgstr "[success] Сделанный. Отверстия скопированы." #: flatcamEditors/FlatCAMGrbEditor.py:2259 flatcamGUI/FlatCAMGUI.py:1604 #: flatcamGUI/FlatCAMGUI.py:4323 @@ -3139,23 +3324,23 @@ msgid "Apertures Table for the Gerber Object." msgstr "Таблица отверстий для объекта Gerber." #: flatcamEditors/FlatCAMGrbEditor.py:2291 -#: flatcamEditors/FlatCAMGrbEditor.py:3602 flatcamGUI/ObjectUI.py:228 +#: flatcamEditors/FlatCAMGrbEditor.py:3601 flatcamGUI/ObjectUI.py:228 msgid "Code" msgstr "Код" #: flatcamEditors/FlatCAMGrbEditor.py:2291 -#: flatcamEditors/FlatCAMGrbEditor.py:3602 flatcamGUI/ObjectUI.py:228 +#: flatcamEditors/FlatCAMGrbEditor.py:3601 flatcamGUI/ObjectUI.py:228 #: flatcamGUI/ObjectUI.py:891 flatcamGUI/ObjectUI.py:1465 msgid "Type" msgstr "Тип" #: flatcamEditors/FlatCAMGrbEditor.py:2291 -#: flatcamEditors/FlatCAMGrbEditor.py:3602 flatcamGUI/ObjectUI.py:228 +#: flatcamEditors/FlatCAMGrbEditor.py:3601 flatcamGUI/ObjectUI.py:228 msgid "Size" msgstr "Размер" #: flatcamEditors/FlatCAMGrbEditor.py:2291 -#: flatcamEditors/FlatCAMGrbEditor.py:3602 flatcamGUI/ObjectUI.py:228 +#: flatcamEditors/FlatCAMGrbEditor.py:3601 flatcamGUI/ObjectUI.py:228 msgid "Dim" msgstr "Размер" @@ -3169,7 +3354,7 @@ msgstr "Код отверстия" #: flatcamEditors/FlatCAMGrbEditor.py:2299 flatcamGUI/ObjectUI.py:236 msgid "Type of aperture: circular, rectangle, macros etc" -msgstr "" +msgstr "Тип апертуры: круговой, прямоугольник, макросы etc" #: flatcamEditors/FlatCAMGrbEditor.py:2301 #: flatcamEditors/FlatCAMGrbEditor.py:2334 flatcamGUI/ObjectUI.py:238 @@ -3256,11 +3441,11 @@ msgstr "Удаляет отверстие в таблице отверстий" #: flatcamEditors/FlatCAMGrbEditor.py:2404 msgid "Buffer Aperture:" -msgstr "" +msgstr "Буфер, Диафрагму:" #: flatcamEditors/FlatCAMGrbEditor.py:2406 msgid "Buffer a aperture in the aperture list" -msgstr "" +msgstr "Буфер диафрагмы в списке диафрагм" #: flatcamEditors/FlatCAMGrbEditor.py:2419 msgid "" @@ -3270,6 +3455,11 @@ msgid "" " - 'Beveled:' the corner is a line that directly connects the features " "meeting in the corner" msgstr "" +"Существует 3 вида углов:\n" +" - 'Вокруг': угол закруглен.\n" +" - 'Квадрат': угол встречается под острым углом.\n" +" - 'Скошенный:' угол-это линия, которая непосредственно соединяет элементы, " +"встречающиеся в углу" #: flatcamEditors/FlatCAMGrbEditor.py:2434 flatcamGUI/FlatCAMGUI.py:717 #: flatcamGUI/FlatCAMGUI.py:1946 @@ -3278,44 +3468,48 @@ msgstr "Буффер" #: flatcamEditors/FlatCAMGrbEditor.py:2448 msgid "Scale Aperture:" -msgstr "" +msgstr "Шкала Диафрагмы:" #: flatcamEditors/FlatCAMGrbEditor.py:2450 msgid "Scale a aperture in the aperture list" -msgstr "" +msgstr "Масштабирование диафрагмы в списке диафрагм" #: flatcamEditors/FlatCAMGrbEditor.py:2458 msgid "Scale factor:" -msgstr "" +msgstr "Масштабный коэффициент:" #: flatcamEditors/FlatCAMGrbEditor.py:2460 msgid "" "The factor by which to scale the selected aperture.\n" "Values can be between 0.0000 and 999.9999" msgstr "" +"Коэффициент масштабирования выбранной диафрагмы.\n" +"Значения могут быть между 0.0000 и 999.9999" #: flatcamEditors/FlatCAMGrbEditor.py:2488 flatcamGUI/FlatCAMGUI.py:707 #: flatcamGUI/FlatCAMGUI.py:1936 msgid "Add Pad Array" -msgstr "" +msgstr "Добавить Массив Коврик " #: flatcamEditors/FlatCAMGrbEditor.py:2490 msgid "Add an array of pads (linear or circular array)" -msgstr "" +msgstr "Добавьте массив пэдов (линейный или круговой массив)" #: flatcamEditors/FlatCAMGrbEditor.py:2496 msgid "" "Select the type of pads array to create.\n" "It can be Linear X(Y) or Circular" msgstr "" +"Выберите тип массива pads для создания.\n" +"Он может быть Linear X (Y) или круговым" #: flatcamEditors/FlatCAMGrbEditor.py:2507 msgid "Nr of pads:" -msgstr "" +msgstr "ВН колодки:" #: flatcamEditors/FlatCAMGrbEditor.py:2509 msgid "Specify how many pads to be in the array." -msgstr "" +msgstr "Укажите, сколько пэдов должно быть в массиве." #: flatcamEditors/FlatCAMGrbEditor.py:2986 #: flatcamEditors/FlatCAMGrbEditor.py:2990 @@ -3323,56 +3517,63 @@ msgid "" "[WARNING_NOTCL] Aperture code value is missing or wrong format. Add it and " "retry." msgstr "" +"[WARNING_NOTCL] Отсутствует значение кода диафрагмы или неправильный формат. " +"Добавьте его и повторите попытку." #: flatcamEditors/FlatCAMGrbEditor.py:3026 msgid "" "[WARNING_NOTCL] Aperture dimensions value is missing or wrong format. Add it " "in format (width, height) and retry." msgstr "" +"[WARNING_NOTCL] Отсутствует значение размеров диафрагмы или неправильный " +"формат. Добавьте его в формате (ширина, высота) и повторите." #: flatcamEditors/FlatCAMGrbEditor.py:3038 msgid "" "[WARNING_NOTCL] Aperture size value is missing or wrong format. Add it and " "retry." msgstr "" +"[WARNING_NOTCL] Отсутствует значение размера диафрагмы или неправильный " +"формат. Добавьте его и повторите попытку." #: flatcamEditors/FlatCAMGrbEditor.py:3049 msgid "[WARNING_NOTCL] Aperture already in the aperture table." -msgstr "" +msgstr "[WARNING_NOTCL] Диафрагма уже в таблице диафрагм." #: flatcamEditors/FlatCAMGrbEditor.py:3056 #, python-brace-format msgid "[success] Added new aperture with code: {apid}" -msgstr "" +msgstr "[success] Добавлена новая диафрагма с кодом: {apid}" #: flatcamEditors/FlatCAMGrbEditor.py:3084 msgid "[WARNING_NOTCL] Select an aperture in Aperture Table" -msgstr "" +msgstr "[WARNING_NOTCL] Установить значение диафрагмы в таблице диафрагмы " #: flatcamEditors/FlatCAMGrbEditor.py:3090 #, python-format msgid "[WARNING_NOTCL] Select an aperture in Aperture Table --> %s" -msgstr "" +msgstr "[WARNING_NOTCL] Выберите диафрагму в таблице диафрагм --> %s" #: flatcamEditors/FlatCAMGrbEditor.py:3113 #, python-brace-format msgid "[success] Deleted aperture with code: {del_dia}" -msgstr "" +msgstr "[success] Удаленная апертура с кодом: {del_dia}" #: flatcamEditors/FlatCAMGrbEditor.py:3533 #, python-format msgid "Adding aperture: %s geo ..." -msgstr "" +msgstr "Добавление диафрагмы: %s geo ..." #: flatcamEditors/FlatCAMGrbEditor.py:3718 msgid "" "[ERROR_NOTCL] There are no Aperture definitions in the file. Aborting Gerber " "creation." msgstr "" +"[ERROR_NOTCL] В файле нет определений диафрагмы. Прерывание творения Gerber." #: flatcamEditors/FlatCAMGrbEditor.py:3721 msgid "[ERROR] An internal error has occurred. See shell.\n" -msgstr "" +msgstr "[ERROR] Произошла внутренняя ошибка. Вижу оболочки.\n" #: flatcamEditors/FlatCAMGrbEditor.py:3726 msgid "Creating Gerber." @@ -3380,41 +3581,57 @@ msgstr "Создание Gerber." #: flatcamEditors/FlatCAMGrbEditor.py:3734 msgid "[success] Gerber editing finished." -msgstr "" +msgstr "[success] Редактирование Gerber закончено." #: flatcamEditors/FlatCAMGrbEditor.py:3750 msgid "[WARNING_NOTCL] Cancelled. No aperture is selected" -msgstr "" +msgstr "[WARNING_NOTCL] Отмененный. Диафрагма не выбрана" -#: flatcamEditors/FlatCAMGrbEditor.py:4270 +#: flatcamEditors/FlatCAMGrbEditor.py:4280 msgid "[ERROR_NOTCL] Failed. No aperture geometry is selected." -msgstr "" +msgstr "[ERROR_NOTCL] Неудачный. Геометрия апертуры Не выбрана." -#: flatcamEditors/FlatCAMGrbEditor.py:4278 +#: flatcamEditors/FlatCAMGrbEditor.py:4288 msgid "[success] Done. Apertures geometry deleted." -msgstr "" +msgstr "[success] Сделанный. Геометрия апертур удалена." -#: flatcamEditors/FlatCAMGrbEditor.py:4427 +#: flatcamEditors/FlatCAMGrbEditor.py:4431 msgid "" "[WARNING_NOTCL] No aperture to buffer. Select at least one aperture and try " "again." msgstr "" +"[WARNING_NOTCL] Нет диафрагмы для буферизации. Выберите хотя бы одну " +"диафрагму и повторите попытку." -#: flatcamEditors/FlatCAMGrbEditor.py:4456 +#: flatcamEditors/FlatCAMGrbEditor.py:4444 +#, python-format +#| msgid "[ERROR_NOTCL] Failed to parse defaults file." +msgid "" +"[ERROR_NOTCL] Failed.\n" +"%s" +msgstr "" +"[ERROR_NOTCL] Неудачный.\n" +"%s" + +#: flatcamEditors/FlatCAMGrbEditor.py:4461 msgid "" "[WARNING_NOTCL] Scale factor value is missing or wrong format. Add it and " "retry." msgstr "" +"[WARNING_NOTCL] Отсутствует значение масштабного коэффициента или " +"неправильный формат. Добавьте его и повторите попытку." -#: flatcamEditors/FlatCAMGrbEditor.py:4486 +#: flatcamEditors/FlatCAMGrbEditor.py:4494 msgid "" "[WARNING_NOTCL] No aperture to scale. Select at least one aperture and try " "again." msgstr "" +"[WARNING_NOTCL] Нет диафрагмы для масштабирования. Выберите хотя бы одну " +"диафрагму и повторите попытку." -#: flatcamEditors/FlatCAMGrbEditor.py:4502 +#: flatcamEditors/FlatCAMGrbEditor.py:4510 msgid "[success] Done. Scale Tool completed." -msgstr "" +msgstr "[success] Сделанный. Масштабирование инструмента завершено." #: flatcamGUI/FlatCAMGUI.py:50 msgid "&File" @@ -3507,6 +3724,9 @@ msgid "" "enabling the automation of certain\n" "functions of FlatCAM." msgstr "" +"Запустим открытый TCL скрипт таким образом\n" +"включение автоматизации некоторых\n" +"функции плоского FlatCAM." #: flatcamGUI/FlatCAMGUI.py:138 msgid "Import" @@ -3564,6 +3784,9 @@ msgid "" "the coordinates format, the file units and zeros\n" "are set in Preferences -> Excellon Export." msgstr "" +"Экспортирует Excellon объект в виде файла Excellon,\n" +"формат координат, единицы измерения и нули\n" +"устанавливаются в настройках - > Excellon экспорт." #: flatcamGUI/FlatCAMGUI.py:186 msgid "Export &Gerber ..." @@ -3575,6 +3798,9 @@ msgid "" "the coordinates format, the file units and zeros\n" "are set in Preferences -> Gerber Export." msgstr "" +"Будем экспортировать объект как Гербер Gerber файл ,\n" +"формат координат, единицы измерения и нули\n" +"устанавливаются в настройках - > Gerber Export." #: flatcamGUI/FlatCAMGUI.py:199 msgid "Save &Defaults" @@ -3618,7 +3844,7 @@ msgstr "Конвертация" #: flatcamGUI/FlatCAMGUI.py:245 msgid "&Join Geo/Gerber/Exc -> Geo" -msgstr "" +msgstr "&И Присоединиться К Гео/Gerber/Exc - > Гео" #: flatcamGUI/FlatCAMGUI.py:247 msgid "" @@ -3628,50 +3854,61 @@ msgid "" "- Geometry\n" "into a new combo Geometry object." msgstr "" +"Объединить выборку объектов, которые могут иметь тип:\n" +"- Gerber\n" +"- Excellon\n" +"- Геометрия\n" +"в новый комбинированный объект геометрии." #: flatcamGUI/FlatCAMGUI.py:254 msgid "Join Excellon(s) -> Excellon" -msgstr "" +msgstr "Регистрация Excellon (s) - > Excellon" #: flatcamGUI/FlatCAMGUI.py:256 msgid "Merge a selection of Excellon objects into a new combo Excellon object." msgstr "" +"Объедините выборку объектов Excellon в новый комбинированный объект Excellon." #: flatcamGUI/FlatCAMGUI.py:259 msgid "Join Gerber(s) -> Gerber" -msgstr "" +msgstr "Присоединиться к Gerber(s) - > Gerber" #: flatcamGUI/FlatCAMGUI.py:261 msgid "Merge a selection of Gerber objects into a new combo Gerber object." msgstr "" +"Объединить выделение объектов Gerber в новый комбинированный объект Gerber." #: flatcamGUI/FlatCAMGUI.py:266 msgid "Convert Single to MultiGeo" -msgstr "" +msgstr "Преобразование одного в несколько Гео" #: flatcamGUI/FlatCAMGUI.py:268 msgid "" "Will convert a Geometry object from single_geometry type\n" "to a multi_geometry type." msgstr "" +"Преобразует объект геометрии из типа single_geometry\n" +"тип multi_geometry." #: flatcamGUI/FlatCAMGUI.py:272 msgid "Convert Multi to SingleGeo" -msgstr "" +msgstr "Преобразование нескольких В один Гео" #: flatcamGUI/FlatCAMGUI.py:274 msgid "" "Will convert a Geometry object from multi_geometry type\n" "to a single_geometry type." msgstr "" +"Преобразует объект геометрии из типа multi_geometry\n" +"тип single_geometry." #: flatcamGUI/FlatCAMGUI.py:280 msgid "Convert Any to Geo" -msgstr "" +msgstr "Конвертировать любой Гео" #: flatcamGUI/FlatCAMGUI.py:282 msgid "Convert Any to Gerber" -msgstr "" +msgstr "Конвертировать любой к Gerber" #: flatcamGUI/FlatCAMGUI.py:287 msgid "&Copy\tCTRL+C" @@ -3683,7 +3920,7 @@ msgstr "&Удалить\tDEL" #: flatcamGUI/FlatCAMGUI.py:295 msgid "Se&t Origin\tO" -msgstr "" +msgstr "Начало Координат\tO" #: flatcamGUI/FlatCAMGUI.py:296 msgid "Jump to Location\tJ" @@ -3843,7 +4080,7 @@ msgstr "Добавить текст\tT" #: flatcamGUI/FlatCAMGUI.py:416 msgid "Polygon Union\tU" -msgstr "" +msgstr "Объединение Полигонов\tU" #: flatcamGUI/FlatCAMGUI.py:418 msgid "Polygon Intersection\tE" @@ -5596,7 +5833,7 @@ msgid "Gerber General" msgstr "Gerber основные" #: flatcamGUI/FlatCAMGUI.py:3995 flatcamGUI/FlatCAMGUI.py:4361 -#: flatcamGUI/FlatCAMGUI.py:5153 flatcamGUI/FlatCAMGUI.py:5525 +#: flatcamGUI/FlatCAMGUI.py:5135 flatcamGUI/FlatCAMGUI.py:5504 #: flatcamGUI/ObjectUI.py:150 flatcamGUI/ObjectUI.py:505 #: flatcamGUI/ObjectUI.py:833 flatcamGUI/ObjectUI.py:1350 msgid "Plot Options:" @@ -5620,18 +5857,18 @@ msgid "Draw polygons in different colors." msgstr "Окрашивать полигоны разными цветами." #: flatcamGUI/FlatCAMGUI.py:4016 flatcamGUI/FlatCAMGUI.py:4367 -#: flatcamGUI/FlatCAMGUI.py:5157 flatcamGUI/ObjectUI.py:172 +#: flatcamGUI/FlatCAMGUI.py:5139 flatcamGUI/ObjectUI.py:172 msgid "Plot" msgstr "Чертёж" -#: flatcamGUI/FlatCAMGUI.py:4018 flatcamGUI/FlatCAMGUI.py:5159 +#: flatcamGUI/FlatCAMGUI.py:4018 flatcamGUI/FlatCAMGUI.py:5141 #: flatcamGUI/ObjectUI.py:174 flatcamGUI/ObjectUI.py:546 #: flatcamGUI/ObjectUI.py:879 flatcamGUI/ObjectUI.py:1450 msgid "Plot (show) this object." msgstr "Начертить (отобразить) этот объект." -#: flatcamGUI/FlatCAMGUI.py:4023 flatcamGUI/FlatCAMGUI.py:5166 -#: flatcamGUI/FlatCAMGUI.py:5608 +#: flatcamGUI/FlatCAMGUI.py:4023 flatcamGUI/FlatCAMGUI.py:5149 +#: flatcamGUI/FlatCAMGUI.py:5587 msgid "Circle Steps:" msgstr "Круговые шаги:" @@ -5658,8 +5895,8 @@ msgstr "" "с траекториям обрезки за\n" "пределами полигонов." -#: flatcamGUI/FlatCAMGUI.py:4056 flatcamGUI/FlatCAMGUI.py:4753 -#: flatcamGUI/FlatCAMGUI.py:5897 flatcamGUI/ObjectUI.py:788 +#: flatcamGUI/FlatCAMGUI.py:4056 flatcamGUI/FlatCAMGUI.py:4735 +#: flatcamGUI/FlatCAMGUI.py:5876 flatcamGUI/ObjectUI.py:788 #: flatcamGUI/ObjectUI.py:804 msgid "Diameter of the cutting tool." msgstr "Диаметр режущего инструмента." @@ -5716,7 +5953,7 @@ msgstr "Объединить все проходы в один объект" msgid "Clear non-copper:" msgstr "Очистка меди:" -#: flatcamGUI/FlatCAMGUI.py:4104 flatcamGUI/FlatCAMGUI.py:5785 +#: flatcamGUI/FlatCAMGUI.py:4104 flatcamGUI/FlatCAMGUI.py:5764 #: flatcamGUI/ObjectUI.py:386 msgid "" "Create a Geometry object with\n" @@ -5823,7 +6060,7 @@ msgstr "" msgid "Gerber Export" msgstr "Экспорт Gerber" -#: flatcamGUI/FlatCAMGUI.py:4232 flatcamGUI/FlatCAMGUI.py:4902 +#: flatcamGUI/FlatCAMGUI.py:4232 flatcamGUI/FlatCAMGUI.py:4884 msgid "Export Options:" msgstr "Параметры экспорта:" @@ -5833,7 +6070,7 @@ msgid "" "when using the File -> Export -> Export Gerber menu entry." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4243 flatcamGUI/FlatCAMGUI.py:4913 +#: flatcamGUI/FlatCAMGUI.py:4243 flatcamGUI/FlatCAMGUI.py:4895 msgid "Units:" msgstr "Единицы:" @@ -5841,7 +6078,7 @@ msgstr "Единицы:" msgid "The units used in the Gerber file." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4257 flatcamGUI/FlatCAMGUI.py:4927 +#: flatcamGUI/FlatCAMGUI.py:4257 flatcamGUI/FlatCAMGUI.py:4909 msgid "Int/Decimals:" msgstr "Int/Decimals:" @@ -5863,7 +6100,7 @@ msgid "" "the decimal part of Gerber coordinates." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4293 flatcamGUI/FlatCAMGUI.py:4988 +#: flatcamGUI/FlatCAMGUI.py:4293 flatcamGUI/FlatCAMGUI.py:4970 msgid "Zeros:" msgstr "Нули:" @@ -5876,12 +6113,12 @@ msgid "" "and Leading Zeros are kept." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4326 flatcamGUI/FlatCAMGUI.py:5029 -#: flatcamGUI/FlatCAMGUI.py:5491 flatcamGUI/FlatCAMGUI.py:5783 -#: flatcamGUI/FlatCAMGUI.py:5884 flatcamGUI/FlatCAMGUI.py:5963 -#: flatcamGUI/FlatCAMGUI.py:6022 flatcamGUI/FlatCAMGUI.py:6125 -#: flatcamGUI/FlatCAMGUI.py:6186 flatcamGUI/FlatCAMGUI.py:6385 -#: flatcamGUI/FlatCAMGUI.py:6512 +#: flatcamGUI/FlatCAMGUI.py:4326 flatcamGUI/FlatCAMGUI.py:5011 +#: flatcamGUI/FlatCAMGUI.py:5470 flatcamGUI/FlatCAMGUI.py:5762 +#: flatcamGUI/FlatCAMGUI.py:5863 flatcamGUI/FlatCAMGUI.py:5942 +#: flatcamGUI/FlatCAMGUI.py:6001 flatcamGUI/FlatCAMGUI.py:6104 +#: flatcamGUI/FlatCAMGUI.py:6165 flatcamGUI/FlatCAMGUI.py:6364 +#: flatcamGUI/FlatCAMGUI.py:6491 msgid "Parameters:" msgstr "Параметры:" @@ -5889,8 +6126,8 @@ msgstr "Параметры:" msgid "A list of Gerber Editor parameters." msgstr "Список параметров редактора Gerber." -#: flatcamGUI/FlatCAMGUI.py:4336 flatcamGUI/FlatCAMGUI.py:5039 -#: flatcamGUI/FlatCAMGUI.py:5501 +#: flatcamGUI/FlatCAMGUI.py:4336 flatcamGUI/FlatCAMGUI.py:5021 +#: flatcamGUI/FlatCAMGUI.py:5480 msgid "Selection limit:" msgstr "" @@ -5943,14 +6180,14 @@ msgid "Default values for INCH are 2:4" msgstr "Значения по умолчанию для ДЮЙМОВОЙ 2:4" #: flatcamGUI/FlatCAMGUI.py:4418 flatcamGUI/FlatCAMGUI.py:4451 -#: flatcamGUI/FlatCAMGUI.py:4942 +#: flatcamGUI/FlatCAMGUI.py:4924 msgid "" "This numbers signify the number of digits in\n" "the whole part of Excellon coordinates." msgstr "" #: flatcamGUI/FlatCAMGUI.py:4432 flatcamGUI/FlatCAMGUI.py:4465 -#: flatcamGUI/FlatCAMGUI.py:4956 +#: flatcamGUI/FlatCAMGUI.py:4938 msgid "" "This numbers signify the number of digits in\n" "the decimal part of Excellon coordinates." @@ -5968,7 +6205,7 @@ msgstr "Значения по умолчанию для МЕТРИЧЕСКОЙ 3 msgid "Default Zeros:" msgstr "Умолчания Нули:" -#: flatcamGUI/FlatCAMGUI.py:4477 flatcamGUI/FlatCAMGUI.py:4991 +#: flatcamGUI/FlatCAMGUI.py:4477 flatcamGUI/FlatCAMGUI.py:4973 msgid "" "This sets the type of Excellon zeros.\n" "If LZ then Leading Zeros are kept and\n" @@ -5987,11 +6224,11 @@ msgid "" "and Leading Zeros are removed." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4502 +#: flatcamGUI/FlatCAMGUI.py:4498 msgid "Default Units:" msgstr "Умолчания Единицы:" -#: flatcamGUI/FlatCAMGUI.py:4505 +#: flatcamGUI/FlatCAMGUI.py:4501 msgid "" "This sets the default units of Excellon files.\n" "If it is not detected in the parsed file the value here\n" @@ -5999,22 +6236,22 @@ msgid "" "therefore this parameter will be used." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4516 +#: flatcamGUI/FlatCAMGUI.py:4512 msgid "" "This sets the units of Excellon files.\n" "Some Excellon files don't have an header\n" "therefore this parameter will be used." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4532 +#: flatcamGUI/FlatCAMGUI.py:4520 msgid "Excellon Optimization:" msgstr "Оптимизация Excellon:" -#: flatcamGUI/FlatCAMGUI.py:4539 +#: flatcamGUI/FlatCAMGUI.py:4523 msgid "Algorithm: " msgstr "Алгоритм: " -#: flatcamGUI/FlatCAMGUI.py:4542 flatcamGUI/FlatCAMGUI.py:4555 +#: flatcamGUI/FlatCAMGUI.py:4525 flatcamGUI/FlatCAMGUI.py:4539 msgid "" "This sets the optimization type for the Excellon drill path.\n" "If MH is checked then Google OR-Tools algorithm with MetaHeuristic\n" @@ -6026,11 +6263,11 @@ msgid "" "Travelling Salesman algorithm for path optimization." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4567 +#: flatcamGUI/FlatCAMGUI.py:4550 msgid "Optimization Time: " msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4570 +#: flatcamGUI/FlatCAMGUI.py:4553 msgid "" "When OR-Tools Metaheuristic (MH) is enabled there is a\n" "maximum threshold for how much time is spent doing the\n" @@ -6038,27 +6275,27 @@ msgid "" "In seconds." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4612 +#: flatcamGUI/FlatCAMGUI.py:4596 msgid "Excellon Options" msgstr "Параметры Excellon" -#: flatcamGUI/FlatCAMGUI.py:4615 flatcamGUI/ObjectUI.py:584 +#: flatcamGUI/FlatCAMGUI.py:4599 flatcamGUI/ObjectUI.py:584 msgid "Create CNC Job" msgstr "Создание программы для ЧПУ" -#: flatcamGUI/FlatCAMGUI.py:4617 +#: flatcamGUI/FlatCAMGUI.py:4601 msgid "" "Parameters used to create a CNC Job object\n" "for this drill object." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4625 flatcamGUI/FlatCAMGUI.py:5217 -#: flatcamGUI/FlatCAMGUI.py:6321 flatcamGUI/ObjectUI.py:595 +#: flatcamGUI/FlatCAMGUI.py:4609 flatcamGUI/FlatCAMGUI.py:5196 +#: flatcamGUI/FlatCAMGUI.py:6300 flatcamGUI/ObjectUI.py:595 #: flatcamGUI/ObjectUI.py:1062 flatcamTools/ToolCalculators.py:108 msgid "Cut Z:" msgstr "Глубина резания:" -#: flatcamGUI/FlatCAMGUI.py:4627 flatcamGUI/ObjectUI.py:597 +#: flatcamGUI/FlatCAMGUI.py:4611 flatcamGUI/ObjectUI.py:597 msgid "" "Drill depth (negative)\n" "below the copper surface." @@ -6066,12 +6303,12 @@ msgstr "" "Глубина сверления (отрицательная) \n" "ниже слоя меди." -#: flatcamGUI/FlatCAMGUI.py:4634 flatcamGUI/FlatCAMGUI.py:5250 +#: flatcamGUI/FlatCAMGUI.py:4618 flatcamGUI/FlatCAMGUI.py:5229 #: flatcamGUI/ObjectUI.py:605 flatcamGUI/ObjectUI.py:1098 msgid "Travel Z:" msgstr "Отвод по Z:" -#: flatcamGUI/FlatCAMGUI.py:4636 flatcamGUI/ObjectUI.py:607 +#: flatcamGUI/FlatCAMGUI.py:4620 flatcamGUI/ObjectUI.py:607 msgid "" "Tool height when travelling\n" "across the XY plane." @@ -6079,11 +6316,11 @@ msgstr "" "Отвод инструмента при холостом ходе\n" "по плоскости XY." -#: flatcamGUI/FlatCAMGUI.py:4644 flatcamGUI/FlatCAMGUI.py:5260 +#: flatcamGUI/FlatCAMGUI.py:4628 flatcamGUI/FlatCAMGUI.py:5239 msgid "Tool change:" msgstr "Смена инструмента:" -#: flatcamGUI/FlatCAMGUI.py:4646 flatcamGUI/FlatCAMGUI.py:5262 +#: flatcamGUI/FlatCAMGUI.py:4630 flatcamGUI/FlatCAMGUI.py:5241 #: flatcamGUI/ObjectUI.py:617 msgid "" "Include tool-change sequence\n" @@ -6092,19 +6329,19 @@ msgstr "" "Включает последовательность смены инструмента\n" "в G-Code (Пауза для смены инструмента)." -#: flatcamGUI/FlatCAMGUI.py:4653 flatcamGUI/FlatCAMGUI.py:5270 +#: flatcamGUI/FlatCAMGUI.py:4637 flatcamGUI/FlatCAMGUI.py:5249 msgid "Toolchange Z:" msgstr "Смена инструмента Z :" -#: flatcamGUI/FlatCAMGUI.py:4655 flatcamGUI/FlatCAMGUI.py:5272 +#: flatcamGUI/FlatCAMGUI.py:4639 flatcamGUI/FlatCAMGUI.py:5251 msgid "Toolchange Z position." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4661 +#: flatcamGUI/FlatCAMGUI.py:4645 msgid "Feedrate:" msgstr "Скорость подачи:" -#: flatcamGUI/FlatCAMGUI.py:4663 +#: flatcamGUI/FlatCAMGUI.py:4647 msgid "" "Tool speed while drilling\n" "(in units per minute)." @@ -6112,11 +6349,11 @@ msgstr "" "Настройка скорости подачи при сверлении \n" "(в единицах в минуту)." -#: flatcamGUI/FlatCAMGUI.py:4671 +#: flatcamGUI/FlatCAMGUI.py:4655 msgid "Spindle Speed:" msgstr "Скорость вр. шпинделя:" -#: flatcamGUI/FlatCAMGUI.py:4673 flatcamGUI/FlatCAMGUI.py:5302 +#: flatcamGUI/FlatCAMGUI.py:4657 flatcamGUI/FlatCAMGUI.py:5281 #: flatcamGUI/ObjectUI.py:684 msgid "" "Speed of the spindle\n" @@ -6125,11 +6362,11 @@ msgstr "" "Скорость шпинделя\n" "в оборотах в минуту(опционально) ." -#: flatcamGUI/FlatCAMGUI.py:4681 flatcamGUI/FlatCAMGUI.py:5310 +#: flatcamGUI/FlatCAMGUI.py:4665 flatcamGUI/FlatCAMGUI.py:5289 msgid "Spindle dir.:" msgstr "Напр. вращения:" -#: flatcamGUI/FlatCAMGUI.py:4683 flatcamGUI/FlatCAMGUI.py:5312 +#: flatcamGUI/FlatCAMGUI.py:4667 flatcamGUI/FlatCAMGUI.py:5291 msgid "" "This sets the direction that the spindle is rotating.\n" "It can be either:\n" @@ -6141,12 +6378,12 @@ msgstr "" "- CW = по часовой стрелке или\n" "- CCW = против часовой стрелки" -#: flatcamGUI/FlatCAMGUI.py:4695 flatcamGUI/FlatCAMGUI.py:5324 +#: flatcamGUI/FlatCAMGUI.py:4679 flatcamGUI/FlatCAMGUI.py:5303 #: flatcamGUI/ObjectUI.py:692 flatcamGUI/ObjectUI.py:1224 msgid "Dwell:" msgstr "Задержка:" -#: flatcamGUI/FlatCAMGUI.py:4697 flatcamGUI/FlatCAMGUI.py:5326 +#: flatcamGUI/FlatCAMGUI.py:4681 flatcamGUI/FlatCAMGUI.py:5305 #: flatcamGUI/ObjectUI.py:694 flatcamGUI/ObjectUI.py:1227 msgid "" "Pause to allow the spindle to reach its\n" @@ -6155,31 +6392,31 @@ msgstr "" "Задержка для набора оборотов шпинделя\n" "перед началом обработки." -#: flatcamGUI/FlatCAMGUI.py:4700 flatcamGUI/FlatCAMGUI.py:5329 +#: flatcamGUI/FlatCAMGUI.py:4684 flatcamGUI/FlatCAMGUI.py:5308 msgid "Duration:" msgstr "Продолжительность:" -#: flatcamGUI/FlatCAMGUI.py:4702 flatcamGUI/FlatCAMGUI.py:5331 +#: flatcamGUI/FlatCAMGUI.py:4686 flatcamGUI/FlatCAMGUI.py:5310 #: flatcamGUI/ObjectUI.py:699 flatcamGUI/ObjectUI.py:1234 msgid "Number of milliseconds for spindle to dwell." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4714 flatcamGUI/FlatCAMGUI.py:5341 +#: flatcamGUI/FlatCAMGUI.py:4698 flatcamGUI/FlatCAMGUI.py:5320 #: flatcamGUI/ObjectUI.py:707 msgid "Postprocessor:" msgstr "Постпроцессор:" -#: flatcamGUI/FlatCAMGUI.py:4716 +#: flatcamGUI/FlatCAMGUI.py:4700 msgid "" "The postprocessor file that dictates\n" "gcode output." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4725 +#: flatcamGUI/FlatCAMGUI.py:4709 msgid "Gcode: " msgstr "Gcode: " -#: flatcamGUI/FlatCAMGUI.py:4727 +#: flatcamGUI/FlatCAMGUI.py:4711 msgid "" "Choose what to use for GCode generation:\n" "'Drills', 'Slots' or 'Both'.\n" @@ -6187,82 +6424,82 @@ msgid "" "converted to drills." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4743 flatcamGUI/ObjectUI.py:772 +#: flatcamGUI/FlatCAMGUI.py:4727 flatcamGUI/ObjectUI.py:772 msgid "Mill Holes" msgstr "Фрезеровка отверстий" -#: flatcamGUI/FlatCAMGUI.py:4745 flatcamGUI/ObjectUI.py:774 +#: flatcamGUI/FlatCAMGUI.py:4729 flatcamGUI/ObjectUI.py:774 msgid "Create Geometry for milling holes." msgstr "Создание объекта геометрии для фрезерования отверстий." -#: flatcamGUI/FlatCAMGUI.py:4751 +#: flatcamGUI/FlatCAMGUI.py:4733 msgid "Drill Tool dia:" msgstr "Диам. сверла:" -#: flatcamGUI/FlatCAMGUI.py:4758 +#: flatcamGUI/FlatCAMGUI.py:4740 msgid "Slot Tool dia:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4760 +#: flatcamGUI/FlatCAMGUI.py:4742 msgid "" "Diameter of the cutting tool\n" "when milling slots." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4772 +#: flatcamGUI/FlatCAMGUI.py:4754 msgid "Defaults" msgstr "Значения по умолчанию" -#: flatcamGUI/FlatCAMGUI.py:4785 +#: flatcamGUI/FlatCAMGUI.py:4767 msgid "Excellon Adv. Options" msgstr "Excellon дополн." -#: flatcamGUI/FlatCAMGUI.py:4791 flatcamGUI/FlatCAMGUI.py:5364 +#: flatcamGUI/FlatCAMGUI.py:4773 flatcamGUI/FlatCAMGUI.py:5343 msgid "Advanced Options:" msgstr "Дополнительные настройки:" -#: flatcamGUI/FlatCAMGUI.py:4793 +#: flatcamGUI/FlatCAMGUI.py:4775 msgid "" "Parameters used to create a CNC Job object\n" "for this drill object that are shown when App Level is Advanced." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4801 +#: flatcamGUI/FlatCAMGUI.py:4783 msgid "Offset Z:" msgstr "Смещение Z:" -#: flatcamGUI/FlatCAMGUI.py:4803 flatcamGUI/ObjectUI.py:574 +#: flatcamGUI/FlatCAMGUI.py:4785 flatcamGUI/ObjectUI.py:574 msgid "" "Some drill bits (the larger ones) need to drill deeper\n" "to create the desired exit hole diameter due of the tip shape.\n" "The value here can compensate the Cut Z parameter." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4810 flatcamGUI/FlatCAMGUI.py:5375 +#: flatcamGUI/FlatCAMGUI.py:4792 flatcamGUI/FlatCAMGUI.py:5354 msgid "Toolchange X,Y:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4812 flatcamGUI/FlatCAMGUI.py:5377 +#: flatcamGUI/FlatCAMGUI.py:4794 flatcamGUI/FlatCAMGUI.py:5356 msgid "Toolchange X,Y position." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4818 flatcamGUI/FlatCAMGUI.py:5384 +#: flatcamGUI/FlatCAMGUI.py:4800 flatcamGUI/FlatCAMGUI.py:5363 #: flatcamGUI/ObjectUI.py:634 msgid "Start move Z:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4820 +#: flatcamGUI/FlatCAMGUI.py:4802 msgid "" "Height of the tool just after start.\n" "Delete the value if you don't need this feature." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4827 flatcamGUI/FlatCAMGUI.py:5394 +#: flatcamGUI/FlatCAMGUI.py:4809 flatcamGUI/FlatCAMGUI.py:5373 #: flatcamGUI/ObjectUI.py:644 flatcamGUI/ObjectUI.py:1144 msgid "End move Z:" msgstr "Высота отвода Z:" -#: flatcamGUI/FlatCAMGUI.py:4829 flatcamGUI/FlatCAMGUI.py:5396 +#: flatcamGUI/FlatCAMGUI.py:4811 flatcamGUI/FlatCAMGUI.py:5375 msgid "" "Height of the tool after\n" "the last move at the end of the job." @@ -6270,12 +6507,12 @@ msgstr "" "Высота инструмента после\n" "последнего прохода в конце задания." -#: flatcamGUI/FlatCAMGUI.py:4836 flatcamGUI/FlatCAMGUI.py:5404 +#: flatcamGUI/FlatCAMGUI.py:4818 flatcamGUI/FlatCAMGUI.py:5383 #: flatcamGUI/ObjectUI.py:665 msgid "Feedrate Rapids:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4838 flatcamGUI/ObjectUI.py:667 +#: flatcamGUI/FlatCAMGUI.py:4820 flatcamGUI/ObjectUI.py:667 msgid "" "Tool speed while drilling\n" "(in units per minute).\n" @@ -6284,33 +6521,33 @@ msgid "" "ignore for any other cases." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4849 flatcamGUI/FlatCAMGUI.py:5428 +#: flatcamGUI/FlatCAMGUI.py:4831 flatcamGUI/FlatCAMGUI.py:5407 #: flatcamGUI/ObjectUI.py:718 flatcamGUI/ObjectUI.py:1256 msgid "Probe Z depth:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4851 flatcamGUI/FlatCAMGUI.py:5430 +#: flatcamGUI/FlatCAMGUI.py:4833 flatcamGUI/FlatCAMGUI.py:5409 #: flatcamGUI/ObjectUI.py:720 flatcamGUI/ObjectUI.py:1259 msgid "" "The maximum depth that the probe is allowed\n" "to probe. Negative value, in current units." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4859 flatcamGUI/FlatCAMGUI.py:5438 +#: flatcamGUI/FlatCAMGUI.py:4841 flatcamGUI/FlatCAMGUI.py:5417 #: flatcamGUI/ObjectUI.py:730 flatcamGUI/ObjectUI.py:1270 msgid "Feedrate Probe:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4861 flatcamGUI/FlatCAMGUI.py:5440 +#: flatcamGUI/FlatCAMGUI.py:4843 flatcamGUI/FlatCAMGUI.py:5419 #: flatcamGUI/ObjectUI.py:732 flatcamGUI/ObjectUI.py:1273 msgid "The feedrate used while the probe is probing." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4867 flatcamGUI/FlatCAMGUI.py:5447 +#: flatcamGUI/FlatCAMGUI.py:4849 flatcamGUI/FlatCAMGUI.py:5426 msgid "Fast Plunge:" msgstr "Быстрый подвод:" -#: flatcamGUI/FlatCAMGUI.py:4869 flatcamGUI/FlatCAMGUI.py:5449 +#: flatcamGUI/FlatCAMGUI.py:4851 flatcamGUI/FlatCAMGUI.py:5428 msgid "" "By checking this, the vertical move from\n" "Z_Toolchange to Z_move is done with G0,\n" @@ -6318,11 +6555,11 @@ msgid "" "WARNING: the move is done at Toolchange X,Y coords." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4878 +#: flatcamGUI/FlatCAMGUI.py:4860 msgid "Fast Retract:" msgstr "Быстрый отвод:" -#: flatcamGUI/FlatCAMGUI.py:4880 +#: flatcamGUI/FlatCAMGUI.py:4862 msgid "" "Exit hole strategy.\n" " - When uncheked, while exiting the drilled hole the drill bit\n" @@ -6332,21 +6569,21 @@ msgid "" "(travel height) is done as fast as possible (G0) in one move." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4899 +#: flatcamGUI/FlatCAMGUI.py:4881 msgid "Excellon Export" msgstr "Экспорт Excellon" -#: flatcamGUI/FlatCAMGUI.py:4904 +#: flatcamGUI/FlatCAMGUI.py:4886 msgid "" "The parameters set here are used in the file exported\n" "when using the File -> Export -> Export Excellon menu entry." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4915 flatcamGUI/FlatCAMGUI.py:4921 +#: flatcamGUI/FlatCAMGUI.py:4897 flatcamGUI/FlatCAMGUI.py:4903 msgid "The units used in the Excellon file." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4929 +#: flatcamGUI/FlatCAMGUI.py:4911 msgid "" "The NC drill files, usually named Excellon files\n" "are files that can be found in different formats.\n" @@ -6354,11 +6591,11 @@ msgid "" "coordinates are not using period." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4965 +#: flatcamGUI/FlatCAMGUI.py:4947 msgid "Format:" msgstr "Формат:" -#: flatcamGUI/FlatCAMGUI.py:4967 flatcamGUI/FlatCAMGUI.py:4977 +#: flatcamGUI/FlatCAMGUI.py:4949 flatcamGUI/FlatCAMGUI.py:4959 msgid "" "Select the kind of coordinates format used.\n" "Coordinates can be saved with decimal point or without.\n" @@ -6368,7 +6605,7 @@ msgid "" "or TZ = trailing zeros are kept." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5001 +#: flatcamGUI/FlatCAMGUI.py:4983 msgid "" "This sets the default type of Excellon zeros.\n" "If LZ then Leading Zeros are kept and\n" @@ -6377,11 +6614,11 @@ msgid "" "and Leading Zeros are removed." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5031 +#: flatcamGUI/FlatCAMGUI.py:5013 msgid "A list of Excellon Editor parameters." msgstr "Список параметров редактора Excellon." -#: flatcamGUI/FlatCAMGUI.py:5041 +#: flatcamGUI/FlatCAMGUI.py:5023 msgid "" "Set the number of selected Excellon geometry\n" "items above which the utility geometry\n" @@ -6390,27 +6627,27 @@ msgid "" "large number of geometric elements." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5053 +#: flatcamGUI/FlatCAMGUI.py:5035 msgid "New Tool Dia:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5076 +#: flatcamGUI/FlatCAMGUI.py:5058 msgid "Linear Drill Array:" msgstr "Линейный массив:" -#: flatcamGUI/FlatCAMGUI.py:5080 +#: flatcamGUI/FlatCAMGUI.py:5062 msgid "Linear Dir.:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5116 +#: flatcamGUI/FlatCAMGUI.py:5098 msgid "Circular Drill Array:" msgstr "Круговой массив:" -#: flatcamGUI/FlatCAMGUI.py:5120 +#: flatcamGUI/FlatCAMGUI.py:5102 msgid "Circular Dir.:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5122 +#: flatcamGUI/FlatCAMGUI.py:5104 msgid "" "Direction for circular array.\n" "Can be CW = clockwise or CCW = counter clockwise." @@ -6418,45 +6655,39 @@ msgstr "" "Направление для кругового массива.\n" "Может быть CW = по часовой стрелке или CCW = против часовой стрелки." -#: flatcamGUI/FlatCAMGUI.py:5133 +#: flatcamGUI/FlatCAMGUI.py:5115 msgid "Circ. Angle:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5150 +#: flatcamGUI/FlatCAMGUI.py:5132 msgid "Geometry General" msgstr "Geometry основные" -#: flatcamGUI/FlatCAMGUI.py:5168 +#: flatcamGUI/FlatCAMGUI.py:5151 msgid "" "The number of circle steps for Geometry \n" "circle and arc shapes linear approximation." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5176 -msgid "Tools" +#: flatcamGUI/FlatCAMGUI.py:5159 +#, fuzzy +#| msgid "Tools" +msgid "Tools:" msgstr "Инструменты" -#: flatcamGUI/FlatCAMGUI.py:5183 -msgid "Tool dia: " -msgstr "Диам. инстр.: " - -#: flatcamGUI/FlatCAMGUI.py:5185 -msgid "" -"The diameter of the cutting\n" -"tool.." +#: flatcamGUI/FlatCAMGUI.py:5165 flatcamGUI/FlatCAMGUI.py:5774 +msgid "Diameters of the cutting tools, separated by ','" msgstr "" -"Диаметр режущего\n" -"инструмента.." -#: flatcamGUI/FlatCAMGUI.py:5200 +#: flatcamGUI/FlatCAMGUI.py:5179 msgid "Geometry Options" msgstr "Параметры Geometry" -#: flatcamGUI/FlatCAMGUI.py:5205 +#: flatcamGUI/FlatCAMGUI.py:5184 msgid "Create CNC Job:" msgstr "Создание программы для ЧПУ:" -#: flatcamGUI/FlatCAMGUI.py:5207 +#: flatcamGUI/FlatCAMGUI.py:5186 msgid "" "Create a CNC Job object\n" "tracing the contours of this\n" @@ -6466,7 +6697,7 @@ msgstr "" "контуров данного объекта геометрии\n" "для программы ЧПУ." -#: flatcamGUI/FlatCAMGUI.py:5219 flatcamGUI/ObjectUI.py:1065 +#: flatcamGUI/FlatCAMGUI.py:5198 flatcamGUI/ObjectUI.py:1065 msgid "" "Cutting depth (negative)\n" "below the copper surface." @@ -6474,19 +6705,19 @@ msgstr "" "Глубина резания (отрицательная)\n" "ниже слоя меди." -#: flatcamGUI/FlatCAMGUI.py:5227 +#: flatcamGUI/FlatCAMGUI.py:5206 msgid "Multidepth" msgstr "Мультипроход" -#: flatcamGUI/FlatCAMGUI.py:5229 +#: flatcamGUI/FlatCAMGUI.py:5208 msgid "Multidepth usage: True or False." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5234 +#: flatcamGUI/FlatCAMGUI.py:5213 msgid "Depth/Pass:" msgstr "Шаг за проход:" -#: flatcamGUI/FlatCAMGUI.py:5236 +#: flatcamGUI/FlatCAMGUI.py:5215 msgid "" "The depth to cut on each pass,\n" "when multidepth is enabled.\n" @@ -6495,17 +6726,17 @@ msgid "" "which has negative value." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5252 flatcamGUI/ObjectUI.py:1101 +#: flatcamGUI/FlatCAMGUI.py:5231 flatcamGUI/ObjectUI.py:1101 msgid "" "Height of the tool when\n" "moving without cutting." msgstr "Высота отвода инструмента при холостом ходе." -#: flatcamGUI/FlatCAMGUI.py:5279 flatcamGUI/ObjectUI.py:1156 +#: flatcamGUI/FlatCAMGUI.py:5258 flatcamGUI/ObjectUI.py:1156 msgid "Feed Rate X-Y:" msgstr "Скорость подачи X-Y:" -#: flatcamGUI/FlatCAMGUI.py:5281 flatcamGUI/ObjectUI.py:1159 +#: flatcamGUI/FlatCAMGUI.py:5260 flatcamGUI/ObjectUI.py:1159 msgid "" "Cutting speed in the XY\n" "plane in units per minute" @@ -6513,45 +6744,45 @@ msgstr "" "Скорость резания в плоскости XY\n" "в единицах в минуту" -#: flatcamGUI/FlatCAMGUI.py:5289 +#: flatcamGUI/FlatCAMGUI.py:5268 msgid "Feed Rate Z:" msgstr "Скорость подачи Z:" -#: flatcamGUI/FlatCAMGUI.py:5291 +#: flatcamGUI/FlatCAMGUI.py:5270 msgid "" "Cutting speed in the XY\n" "plane in units per minute.\n" "It is called also Plunge." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5300 flatcamGUI/ObjectUI.py:682 +#: flatcamGUI/FlatCAMGUI.py:5279 flatcamGUI/ObjectUI.py:682 #: flatcamGUI/ObjectUI.py:1211 msgid "Spindle speed:" msgstr "Скорость вр. шпинделя:" -#: flatcamGUI/FlatCAMGUI.py:5343 +#: flatcamGUI/FlatCAMGUI.py:5322 msgid "" "The postprocessor file that dictates\n" "Machine Code output." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5359 +#: flatcamGUI/FlatCAMGUI.py:5338 msgid "Geometry Adv. Options" msgstr "Geometry дополн." -#: flatcamGUI/FlatCAMGUI.py:5366 +#: flatcamGUI/FlatCAMGUI.py:5345 msgid "" "Parameters to create a CNC Job object\n" "tracing the contours of a Geometry object." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5386 +#: flatcamGUI/FlatCAMGUI.py:5365 msgid "" "Height of the tool just after starting the work.\n" "Delete the value if you don't need this feature." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5406 +#: flatcamGUI/FlatCAMGUI.py:5385 msgid "" "Cutting speed in the XY plane\n" "(in units per minute).\n" @@ -6560,11 +6791,11 @@ msgid "" "ignore for any other cases." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5418 +#: flatcamGUI/FlatCAMGUI.py:5397 msgid "Re-cut 1st pt." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5420 flatcamGUI/ObjectUI.py:1202 +#: flatcamGUI/FlatCAMGUI.py:5399 flatcamGUI/ObjectUI.py:1202 msgid "" "In order to remove possible\n" "copper leftovers where first cut\n" @@ -6572,37 +6803,37 @@ msgid "" "extended cut over the first cut section." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5459 +#: flatcamGUI/FlatCAMGUI.py:5438 msgid "Seg. X size:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5461 +#: flatcamGUI/FlatCAMGUI.py:5440 msgid "" "The size of the trace segment on the X axis.\n" "Useful for auto-leveling.\n" "A value of 0 means no segmentation on the X axis." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5470 +#: flatcamGUI/FlatCAMGUI.py:5449 msgid "Seg. Y size:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5472 +#: flatcamGUI/FlatCAMGUI.py:5451 msgid "" "The size of the trace segment on the Y axis.\n" "Useful for auto-leveling.\n" "A value of 0 means no segmentation on the Y axis." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5488 +#: flatcamGUI/FlatCAMGUI.py:5467 msgid "Geometry Editor" msgstr "Редактор Geometry" -#: flatcamGUI/FlatCAMGUI.py:5493 +#: flatcamGUI/FlatCAMGUI.py:5472 msgid "A list of Geometry Editor parameters." msgstr "Список параметров редактора Geometry." -#: flatcamGUI/FlatCAMGUI.py:5503 +#: flatcamGUI/FlatCAMGUI.py:5482 msgid "" "Set the number of selected geometry\n" "items above which the utility geometry\n" @@ -6611,20 +6842,20 @@ msgid "" "large number of geometric elements." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5522 +#: flatcamGUI/FlatCAMGUI.py:5501 msgid "CNC Job General" msgstr "CNC Job основные" -#: flatcamGUI/FlatCAMGUI.py:5535 flatcamGUI/ObjectUI.py:544 +#: flatcamGUI/FlatCAMGUI.py:5514 flatcamGUI/ObjectUI.py:544 #: flatcamGUI/ObjectUI.py:877 flatcamGUI/ObjectUI.py:1447 msgid "Plot Object" msgstr "Рисовать объекты" -#: flatcamGUI/FlatCAMGUI.py:5542 +#: flatcamGUI/FlatCAMGUI.py:5521 msgid "Plot kind:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5544 flatcamGUI/ObjectUI.py:1356 +#: flatcamGUI/FlatCAMGUI.py:5523 flatcamGUI/ObjectUI.py:1356 msgid "" "This selects the kind of geometries on the canvas to plot.\n" "Those can be either of type 'Travel' which means the moves\n" @@ -6632,40 +6863,40 @@ msgid "" "which means the moves that cut into the material." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5561 +#: flatcamGUI/FlatCAMGUI.py:5540 msgid "Display Annotation:" msgstr "Показывать подписи:" -#: flatcamGUI/FlatCAMGUI.py:5563 flatcamGUI/ObjectUI.py:1372 +#: flatcamGUI/FlatCAMGUI.py:5542 flatcamGUI/ObjectUI.py:1372 msgid "" "This selects if to display text annotation on the plot.\n" "When checked it will display numbers in order for each end\n" "of a travel line." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5575 +#: flatcamGUI/FlatCAMGUI.py:5554 msgid "Annotation Size:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5577 +#: flatcamGUI/FlatCAMGUI.py:5556 msgid "The font size of the annotation text. In pixels." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5585 +#: flatcamGUI/FlatCAMGUI.py:5564 msgid "Annotation Color:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5587 +#: flatcamGUI/FlatCAMGUI.py:5566 msgid "Set the font color for the annotation texts." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5610 +#: flatcamGUI/FlatCAMGUI.py:5589 msgid "" "The number of circle steps for GCode \n" "circle and arc shapes linear approximation." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5620 +#: flatcamGUI/FlatCAMGUI.py:5599 msgid "" "Diameter of the tool to be\n" "rendered in the plot." @@ -6673,35 +6904,35 @@ msgstr "" "Диаметр инструмента\n" " для черчения контуров." -#: flatcamGUI/FlatCAMGUI.py:5628 +#: flatcamGUI/FlatCAMGUI.py:5607 msgid "Coords dec.:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5630 +#: flatcamGUI/FlatCAMGUI.py:5609 msgid "" "The number of decimals to be used for \n" "the X, Y, Z coordinates in CNC code (GCODE, etc.)" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5638 +#: flatcamGUI/FlatCAMGUI.py:5617 msgid "Feedrate dec.:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5640 +#: flatcamGUI/FlatCAMGUI.py:5619 msgid "" "The number of decimals to be used for \n" "the Feedrate parameter in CNC code (GCODE, etc.)" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5655 +#: flatcamGUI/FlatCAMGUI.py:5634 msgid "CNC Job Options" msgstr "Параметры CNC Job" -#: flatcamGUI/FlatCAMGUI.py:5658 flatcamGUI/FlatCAMGUI.py:5699 +#: flatcamGUI/FlatCAMGUI.py:5637 flatcamGUI/FlatCAMGUI.py:5678 msgid "Export G-Code:" msgstr "Экспорт G-Code:" -#: flatcamGUI/FlatCAMGUI.py:5660 flatcamGUI/FlatCAMGUI.py:5701 +#: flatcamGUI/FlatCAMGUI.py:5639 flatcamGUI/FlatCAMGUI.py:5680 #: flatcamGUI/ObjectUI.py:1483 msgid "" "Export and save G-Code to\n" @@ -6711,11 +6942,11 @@ msgstr "" "для сохранения\n" "этого объекта в файл." -#: flatcamGUI/FlatCAMGUI.py:5666 +#: flatcamGUI/FlatCAMGUI.py:5645 msgid "Prepend to G-Code:" msgstr "Коды предобработки для G-Code:" -#: flatcamGUI/FlatCAMGUI.py:5668 +#: flatcamGUI/FlatCAMGUI.py:5647 msgid "" "Type here any G-Code commands you would\n" "like to add at the beginning of the G-Code file." @@ -6723,11 +6954,11 @@ msgstr "" "Введите здесь любые команды G-Code, которые вам\n" "хотелось бы добавить в начале файла G-Code." -#: flatcamGUI/FlatCAMGUI.py:5677 +#: flatcamGUI/FlatCAMGUI.py:5656 msgid "Append to G-Code:" msgstr "Коды постобработки для G-Code:" -#: flatcamGUI/FlatCAMGUI.py:5679 flatcamGUI/ObjectUI.py:1505 +#: flatcamGUI/FlatCAMGUI.py:5658 flatcamGUI/ObjectUI.py:1505 msgid "" "Type here any G-Code commands you would\n" "like to append to the generated file.\n" @@ -6737,15 +6968,15 @@ msgstr "" "хотелось бы добавить к созданному файлу.\n" "например: M2 (конец программы)" -#: flatcamGUI/FlatCAMGUI.py:5696 +#: flatcamGUI/FlatCAMGUI.py:5675 msgid "CNC Job Adv. Options" msgstr "CNC Job дополн." -#: flatcamGUI/FlatCAMGUI.py:5707 flatcamGUI/ObjectUI.py:1523 +#: flatcamGUI/FlatCAMGUI.py:5686 flatcamGUI/ObjectUI.py:1523 msgid "Toolchange G-Code:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5709 +#: flatcamGUI/FlatCAMGUI.py:5688 msgid "" "Type here any G-Code commands you would\n" "like to be executed when Toolchange event is encountered.\n" @@ -6753,17 +6984,17 @@ msgid "" "or a Toolchange Macro." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5723 flatcamGUI/ObjectUI.py:1545 +#: flatcamGUI/FlatCAMGUI.py:5702 flatcamGUI/ObjectUI.py:1545 msgid "Use Toolchange Macro" msgstr "Использовать макросы смены инструмента" -#: flatcamGUI/FlatCAMGUI.py:5725 flatcamGUI/ObjectUI.py:1548 +#: flatcamGUI/FlatCAMGUI.py:5704 flatcamGUI/ObjectUI.py:1548 msgid "" "Check this box if you want to use\n" "a Custom Toolchange GCode (macro)." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5737 flatcamGUI/ObjectUI.py:1557 +#: flatcamGUI/FlatCAMGUI.py:5716 flatcamGUI/ObjectUI.py:1557 msgid "" "A list of the FlatCAM variables that can be used\n" "in the Toolchange event.\n" @@ -6773,71 +7004,67 @@ msgstr "" "при смене инструмента.\n" "Они должны быть окружены '%' символом" -#: flatcamGUI/FlatCAMGUI.py:5744 flatcamGUI/ObjectUI.py:1564 +#: flatcamGUI/FlatCAMGUI.py:5723 flatcamGUI/ObjectUI.py:1564 msgid "Parameters" msgstr "Параметры" -#: flatcamGUI/FlatCAMGUI.py:5747 flatcamGUI/ObjectUI.py:1567 +#: flatcamGUI/FlatCAMGUI.py:5726 flatcamGUI/ObjectUI.py:1567 msgid "FlatCAM CNC parameters" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5748 flatcamGUI/ObjectUI.py:1568 +#: flatcamGUI/FlatCAMGUI.py:5727 flatcamGUI/ObjectUI.py:1568 msgid "tool = tool number" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5749 flatcamGUI/ObjectUI.py:1569 +#: flatcamGUI/FlatCAMGUI.py:5728 flatcamGUI/ObjectUI.py:1569 msgid "tooldia = tool diameter" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5750 flatcamGUI/ObjectUI.py:1570 +#: flatcamGUI/FlatCAMGUI.py:5729 flatcamGUI/ObjectUI.py:1570 msgid "t_drills = for Excellon, total number of drills" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5751 flatcamGUI/ObjectUI.py:1571 +#: flatcamGUI/FlatCAMGUI.py:5730 flatcamGUI/ObjectUI.py:1571 msgid "x_toolchange = X coord for Toolchange" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5752 flatcamGUI/ObjectUI.py:1572 +#: flatcamGUI/FlatCAMGUI.py:5731 flatcamGUI/ObjectUI.py:1572 msgid "y_toolchange = Y coord for Toolchange" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5753 flatcamGUI/ObjectUI.py:1573 +#: flatcamGUI/FlatCAMGUI.py:5732 flatcamGUI/ObjectUI.py:1573 msgid "z_toolchange = Z coord for Toolchange" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5754 +#: flatcamGUI/FlatCAMGUI.py:5733 msgid "z_cut = Z depth for the cut" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5755 +#: flatcamGUI/FlatCAMGUI.py:5734 msgid "z_move = Z height for travel" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5756 flatcamGUI/ObjectUI.py:1576 +#: flatcamGUI/FlatCAMGUI.py:5735 flatcamGUI/ObjectUI.py:1576 msgid "z_depthpercut = the step value for multidepth cut" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5757 flatcamGUI/ObjectUI.py:1577 +#: flatcamGUI/FlatCAMGUI.py:5736 flatcamGUI/ObjectUI.py:1577 msgid "spindlesspeed = the value for the spindle speed" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5759 flatcamGUI/ObjectUI.py:1578 +#: flatcamGUI/FlatCAMGUI.py:5738 flatcamGUI/ObjectUI.py:1578 msgid "dwelltime = time to dwell to allow the spindle to reach it's set RPM" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5780 +#: flatcamGUI/FlatCAMGUI.py:5759 msgid "NCC Tool Options" msgstr "Очистка меди" -#: flatcamGUI/FlatCAMGUI.py:5793 flatcamGUI/FlatCAMGUI.py:6523 +#: flatcamGUI/FlatCAMGUI.py:5772 flatcamGUI/FlatCAMGUI.py:6502 msgid "Tools dia:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5795 -msgid "Diameters of the cutting tools, separated by ','" -msgstr "" - -#: flatcamGUI/FlatCAMGUI.py:5803 flatcamTools/ToolNonCopperClear.py:167 +#: flatcamGUI/FlatCAMGUI.py:5782 flatcamTools/ToolNonCopperClear.py:167 #, python-format msgid "" "How much (fraction) of the tool width to overlap each tool pass.\n" @@ -6852,11 +7079,11 @@ msgid "" "due of too many paths." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5819 flatcamTools/ToolNonCopperClear.py:183 +#: flatcamGUI/FlatCAMGUI.py:5798 flatcamTools/ToolNonCopperClear.py:183 msgid "Bounding box margin." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5828 flatcamTools/ToolNonCopperClear.py:192 +#: flatcamGUI/FlatCAMGUI.py:5807 flatcamTools/ToolNonCopperClear.py:192 #: flatcamTools/ToolPaint.py:190 msgid "" "Algorithm for non-copper clearing:
Standard: Fixed step inwards." @@ -6867,12 +7094,12 @@ msgstr "" "контурами, повторяющими контур полигона.
По кругу: Обработка " "правильными окружностями.
Линейный: Паралельными линиями." -#: flatcamGUI/FlatCAMGUI.py:5860 flatcamTools/ToolNonCopperClear.py:224 +#: flatcamGUI/FlatCAMGUI.py:5839 flatcamTools/ToolNonCopperClear.py:224 #: flatcamTools/ToolPaint.py:222 msgid "Rest M.:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5862 +#: flatcamGUI/FlatCAMGUI.py:5841 msgid "" "If checked, use 'rest machining'.\n" "Basically it will clear copper outside PCB features,\n" @@ -6882,11 +7109,11 @@ msgid "" "If not checked, use the standard algorithm." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5881 +#: flatcamGUI/FlatCAMGUI.py:5860 msgid "Cutout Tool Options" msgstr "Обрезка платы" -#: flatcamGUI/FlatCAMGUI.py:5886 flatcamGUI/ObjectUI.py:402 +#: flatcamGUI/FlatCAMGUI.py:5865 flatcamGUI/ObjectUI.py:402 msgid "" "Create toolpaths to cut around\n" "the PCB and separate it from\n" @@ -6895,7 +7122,7 @@ msgstr "" "Создание траектории обрезки печатной платы и отделения её от\n" "заготовки." -#: flatcamGUI/FlatCAMGUI.py:5905 +#: flatcamGUI/FlatCAMGUI.py:5884 msgid "" "Distance from objects at which\n" "to draw the cutout." @@ -6903,11 +7130,11 @@ msgstr "" "Расстояние от объектов вокруг которых\n" "будет нарисовано очертание." -#: flatcamGUI/FlatCAMGUI.py:5912 flatcamTools/ToolCutOut.py:96 +#: flatcamGUI/FlatCAMGUI.py:5891 flatcamTools/ToolCutOut.py:96 msgid "Gap size:" msgstr "Размер перемычки:" -#: flatcamGUI/FlatCAMGUI.py:5914 +#: flatcamGUI/FlatCAMGUI.py:5893 msgid "" "Size of the gaps in the toolpath\n" "that will remain to hold the\n" @@ -6916,11 +7143,11 @@ msgstr "" "Размер перемычек для удержания\n" "печатной платы в заготовке." -#: flatcamGUI/FlatCAMGUI.py:5922 flatcamTools/ToolCutOut.py:134 +#: flatcamGUI/FlatCAMGUI.py:5901 flatcamTools/ToolCutOut.py:134 msgid "Gaps:" msgstr "Вариант:" -#: flatcamGUI/FlatCAMGUI.py:5924 +#: flatcamGUI/FlatCAMGUI.py:5903 msgid "" "Number of bridge gaps used for the cutout.\n" "There can be maximum 8 bridges/gaps.\n" @@ -6942,19 +7169,19 @@ msgstr "" "- 2tb - 2*сверху + 2*снизу \n" "- 8 - 2*слева + 2*справа + 2*сверху + 2*снизу" -#: flatcamGUI/FlatCAMGUI.py:5945 flatcamTools/ToolCutOut.py:115 +#: flatcamGUI/FlatCAMGUI.py:5924 flatcamTools/ToolCutOut.py:115 msgid "Convex Sh.:" msgstr "Закруглять углы:" -#: flatcamGUI/FlatCAMGUI.py:5947 +#: flatcamGUI/FlatCAMGUI.py:5926 msgid "Create a convex shape surrounding the entire PCB." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5960 +#: flatcamGUI/FlatCAMGUI.py:5939 msgid "2Sided Tool Options" msgstr " 2-х сторонняя плата" -#: flatcamGUI/FlatCAMGUI.py:5965 +#: flatcamGUI/FlatCAMGUI.py:5944 msgid "" "A tool to help in creating a double sided\n" "PCB using alignment holes." @@ -6962,28 +7189,28 @@ msgstr "" "Инструмент, помогающий создать двухстороннюю\n" "печатную плату с использованием центрирующих отверстий." -#: flatcamGUI/FlatCAMGUI.py:5975 flatcamTools/ToolDblSided.py:235 +#: flatcamGUI/FlatCAMGUI.py:5954 flatcamTools/ToolDblSided.py:235 msgid "Drill diam.:" msgstr "Диам. сверла.:" -#: flatcamGUI/FlatCAMGUI.py:5977 flatcamTools/ToolDblSided.py:226 +#: flatcamGUI/FlatCAMGUI.py:5956 flatcamTools/ToolDblSided.py:226 #: flatcamTools/ToolDblSided.py:237 msgid "Diameter of the drill for the alignment holes." msgstr "Диаметр сверла для контрольных отверстий." -#: flatcamGUI/FlatCAMGUI.py:5986 flatcamTools/ToolDblSided.py:120 +#: flatcamGUI/FlatCAMGUI.py:5965 flatcamTools/ToolDblSided.py:120 msgid "Mirror Axis:" msgstr "Зеркальное отражение:" -#: flatcamGUI/FlatCAMGUI.py:5988 flatcamTools/ToolDblSided.py:122 +#: flatcamGUI/FlatCAMGUI.py:5967 flatcamTools/ToolDblSided.py:122 msgid "Mirror vertically (X) or horizontally (Y)." msgstr "Отразить по вертикали (X) или горизонтали (Y)." -#: flatcamGUI/FlatCAMGUI.py:5999 flatcamTools/ToolDblSided.py:133 +#: flatcamGUI/FlatCAMGUI.py:5978 flatcamTools/ToolDblSided.py:133 msgid "Axis Ref:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6001 +#: flatcamGUI/FlatCAMGUI.py:5980 msgid "" "The axis should pass through a point or cut\n" " a specified box (in a Geometry object) in \n" @@ -6993,11 +7220,11 @@ msgstr "" " указанное поле (в Geometry объект) в\n" "середине." -#: flatcamGUI/FlatCAMGUI.py:6017 +#: flatcamGUI/FlatCAMGUI.py:5996 msgid "Paint Tool Options" msgstr "Рисование" -#: flatcamGUI/FlatCAMGUI.py:6024 flatcamGUI/ObjectUI.py:1305 +#: flatcamGUI/FlatCAMGUI.py:6003 flatcamGUI/ObjectUI.py:1305 msgid "" "Creates tool paths to cover the\n" "whole area of a polygon (remove\n" @@ -7008,7 +7235,7 @@ msgstr "" "всей площади полигона(удаляется вся медь).\n" "Будет предложено нажать на нужный полигон." -#: flatcamGUI/FlatCAMGUI.py:6048 +#: flatcamGUI/FlatCAMGUI.py:6027 msgid "" "How much (fraction) of the tool\n" "width to overlap each tool pass." @@ -7016,30 +7243,30 @@ msgstr "" "Размер части ширины инструмента \n" "который будет перекрываться за каждый проход." -#: flatcamGUI/FlatCAMGUI.py:6102 flatcamTools/ToolPaint.py:237 +#: flatcamGUI/FlatCAMGUI.py:6081 flatcamTools/ToolPaint.py:237 msgid "Selection:" msgstr "Выбор:" -#: flatcamGUI/FlatCAMGUI.py:6104 +#: flatcamGUI/FlatCAMGUI.py:6083 msgid "How to select the polygons to paint." msgstr "Как выбирать полигоны для рисования." -#: flatcamGUI/FlatCAMGUI.py:6122 +#: flatcamGUI/FlatCAMGUI.py:6101 msgid "Film Tool Options" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6127 +#: flatcamGUI/FlatCAMGUI.py:6106 msgid "" "Create a PCB film from a Gerber or Geometry\n" "FlatCAM object.\n" "The file is saved in SVG format." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6138 flatcamTools/ToolFilm.py:116 +#: flatcamGUI/FlatCAMGUI.py:6117 flatcamTools/ToolFilm.py:116 msgid "Film Type:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6140 flatcamTools/ToolFilm.py:118 +#: flatcamGUI/FlatCAMGUI.py:6119 flatcamTools/ToolFilm.py:118 msgid "" "Generate a Positive black film or a Negative film.\n" "Positive means that it will print the features\n" @@ -7049,11 +7276,11 @@ msgid "" "The Film format is SVG." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6151 flatcamTools/ToolFilm.py:130 +#: flatcamGUI/FlatCAMGUI.py:6130 flatcamTools/ToolFilm.py:130 msgid "Border:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6153 flatcamTools/ToolFilm.py:132 +#: flatcamGUI/FlatCAMGUI.py:6132 flatcamTools/ToolFilm.py:132 msgid "" "Specify a border around the object.\n" "Only for negative film.\n" @@ -7065,11 +7292,11 @@ msgid "" "surroundings if not for this border." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6166 flatcamTools/ToolFilm.py:144 +#: flatcamGUI/FlatCAMGUI.py:6145 flatcamTools/ToolFilm.py:144 msgid "Scale Stroke:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6168 flatcamTools/ToolFilm.py:146 +#: flatcamGUI/FlatCAMGUI.py:6147 flatcamTools/ToolFilm.py:146 msgid "" "Scale the line stroke thickness of each feature in the SVG file.\n" "It means that the line that envelope each SVG feature will be thicker or " @@ -7077,69 +7304,69 @@ msgid "" "therefore the fine features may be more affected by this parameter." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6183 +#: flatcamGUI/FlatCAMGUI.py:6162 msgid "Panelize Tool Options" msgstr "Панелизация" -#: flatcamGUI/FlatCAMGUI.py:6188 +#: flatcamGUI/FlatCAMGUI.py:6167 msgid "" "Create an object that contains an array of (x, y) elements,\n" "each element is a copy of the source object spaced\n" "at a X distance, Y distance of each other." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6199 flatcamTools/ToolPanelize.py:147 +#: flatcamGUI/FlatCAMGUI.py:6178 flatcamTools/ToolPanelize.py:147 msgid "Spacing cols:" msgstr "Интервал столбцов:" -#: flatcamGUI/FlatCAMGUI.py:6201 flatcamTools/ToolPanelize.py:149 +#: flatcamGUI/FlatCAMGUI.py:6180 flatcamTools/ToolPanelize.py:149 msgid "" "Spacing between columns of the desired panel.\n" "In current units." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6209 flatcamTools/ToolPanelize.py:156 +#: flatcamGUI/FlatCAMGUI.py:6188 flatcamTools/ToolPanelize.py:156 msgid "Spacing rows:" msgstr "Интервал строк:" -#: flatcamGUI/FlatCAMGUI.py:6211 flatcamTools/ToolPanelize.py:158 +#: flatcamGUI/FlatCAMGUI.py:6190 flatcamTools/ToolPanelize.py:158 msgid "" "Spacing between rows of the desired panel.\n" "In current units." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6219 flatcamTools/ToolPanelize.py:165 +#: flatcamGUI/FlatCAMGUI.py:6198 flatcamTools/ToolPanelize.py:165 msgid "Columns:" msgstr "Столбцы:" -#: flatcamGUI/FlatCAMGUI.py:6221 flatcamTools/ToolPanelize.py:167 +#: flatcamGUI/FlatCAMGUI.py:6200 flatcamTools/ToolPanelize.py:167 msgid "Number of columns of the desired panel" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6228 flatcamTools/ToolPanelize.py:173 +#: flatcamGUI/FlatCAMGUI.py:6207 flatcamTools/ToolPanelize.py:173 msgid "Rows:" msgstr "Строки:" -#: flatcamGUI/FlatCAMGUI.py:6230 flatcamTools/ToolPanelize.py:175 +#: flatcamGUI/FlatCAMGUI.py:6209 flatcamTools/ToolPanelize.py:175 msgid "Number of rows of the desired panel" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6238 +#: flatcamGUI/FlatCAMGUI.py:6217 msgid "Panel Type:" msgstr "Тип панели:" -#: flatcamGUI/FlatCAMGUI.py:6240 +#: flatcamGUI/FlatCAMGUI.py:6219 msgid "" "Choose the type of object for the panel object:\n" "- Gerber\n" "- Geometry" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6249 +#: flatcamGUI/FlatCAMGUI.py:6228 msgid "Constrain within:" msgstr "Ограничить в пределах:" -#: flatcamGUI/FlatCAMGUI.py:6251 flatcamTools/ToolPanelize.py:195 +#: flatcamGUI/FlatCAMGUI.py:6230 flatcamTools/ToolPanelize.py:195 msgid "" "Area define by DX and DY within to constrain the panel.\n" "DX and DY values are in current units.\n" @@ -7148,171 +7375,171 @@ msgid "" "they fit completely within selected area." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6260 flatcamTools/ToolPanelize.py:204 +#: flatcamGUI/FlatCAMGUI.py:6239 flatcamTools/ToolPanelize.py:204 msgid "Width (DX):" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6262 flatcamTools/ToolPanelize.py:206 +#: flatcamGUI/FlatCAMGUI.py:6241 flatcamTools/ToolPanelize.py:206 msgid "" "The width (DX) within which the panel must fit.\n" "In current units." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6269 flatcamTools/ToolPanelize.py:212 +#: flatcamGUI/FlatCAMGUI.py:6248 flatcamTools/ToolPanelize.py:212 msgid "Height (DY):" msgstr "Высота (DY):" -#: flatcamGUI/FlatCAMGUI.py:6271 flatcamTools/ToolPanelize.py:214 +#: flatcamGUI/FlatCAMGUI.py:6250 flatcamTools/ToolPanelize.py:214 msgid "" "The height (DY)within which the panel must fit.\n" "In current units." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6285 +#: flatcamGUI/FlatCAMGUI.py:6264 msgid "Calculators Tool Options" msgstr "Калькулятор" -#: flatcamGUI/FlatCAMGUI.py:6288 +#: flatcamGUI/FlatCAMGUI.py:6267 msgid "V-Shape Tool Calculator:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6290 +#: flatcamGUI/FlatCAMGUI.py:6269 msgid "" "Calculate the tool diameter for a given V-shape tool,\n" "having the tip diameter, tip angle and\n" "depth-of-cut as parameters." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6301 flatcamTools/ToolCalculators.py:94 +#: flatcamGUI/FlatCAMGUI.py:6280 flatcamTools/ToolCalculators.py:94 msgid "Tip Diameter:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6303 +#: flatcamGUI/FlatCAMGUI.py:6282 msgid "" "This is the tool tip diameter.\n" "It is specified by manufacturer." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6311 +#: flatcamGUI/FlatCAMGUI.py:6290 msgid "Tip angle:" msgstr "Угол наклона:" -#: flatcamGUI/FlatCAMGUI.py:6313 +#: flatcamGUI/FlatCAMGUI.py:6292 msgid "" "This is the angle on the tip of the tool.\n" "It is specified by manufacturer." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6323 +#: flatcamGUI/FlatCAMGUI.py:6302 msgid "" "This is depth to cut into material.\n" "In the CNCJob object it is the CutZ parameter." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6330 +#: flatcamGUI/FlatCAMGUI.py:6309 msgid "ElectroPlating Calculator:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6332 flatcamTools/ToolCalculators.py:152 +#: flatcamGUI/FlatCAMGUI.py:6311 flatcamTools/ToolCalculators.py:152 msgid "" "This calculator is useful for those who plate the via/pad/drill holes,\n" "using a method like grahite ink or calcium hypophosphite ink or palladium " "chloride." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6342 flatcamTools/ToolCalculators.py:161 +#: flatcamGUI/FlatCAMGUI.py:6321 flatcamTools/ToolCalculators.py:161 msgid "Board Length:" msgstr "Длина платы:" -#: flatcamGUI/FlatCAMGUI.py:6344 flatcamTools/ToolCalculators.py:165 +#: flatcamGUI/FlatCAMGUI.py:6323 flatcamTools/ToolCalculators.py:165 msgid "This is the board length. In centimeters." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6350 flatcamTools/ToolCalculators.py:167 +#: flatcamGUI/FlatCAMGUI.py:6329 flatcamTools/ToolCalculators.py:167 msgid "Board Width:" msgstr "Ширина платы:" -#: flatcamGUI/FlatCAMGUI.py:6352 flatcamTools/ToolCalculators.py:171 +#: flatcamGUI/FlatCAMGUI.py:6331 flatcamTools/ToolCalculators.py:171 msgid "This is the board width.In centimeters." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6357 flatcamTools/ToolCalculators.py:173 +#: flatcamGUI/FlatCAMGUI.py:6336 flatcamTools/ToolCalculators.py:173 msgid "Current Density:" msgstr "Текущая плотность:" -#: flatcamGUI/FlatCAMGUI.py:6360 flatcamTools/ToolCalculators.py:177 +#: flatcamGUI/FlatCAMGUI.py:6339 flatcamTools/ToolCalculators.py:177 msgid "" "Current density to pass through the board. \n" "In Amps per Square Feet ASF." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6366 flatcamTools/ToolCalculators.py:181 +#: flatcamGUI/FlatCAMGUI.py:6345 flatcamTools/ToolCalculators.py:181 msgid "Copper Growth:" msgstr "Медный слой:" -#: flatcamGUI/FlatCAMGUI.py:6369 flatcamTools/ToolCalculators.py:185 +#: flatcamGUI/FlatCAMGUI.py:6348 flatcamTools/ToolCalculators.py:185 msgid "" "How thick the copper growth is intended to be.\n" "In microns." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6382 +#: flatcamGUI/FlatCAMGUI.py:6361 msgid "Transform Tool Options" msgstr "Трансформация" -#: flatcamGUI/FlatCAMGUI.py:6387 +#: flatcamGUI/FlatCAMGUI.py:6366 msgid "" "Various transformations that can be applied\n" "on a FlatCAM object." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6397 +#: flatcamGUI/FlatCAMGUI.py:6376 msgid "Rotate Angle:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6399 +#: flatcamGUI/FlatCAMGUI.py:6378 msgid "Angle for rotation. In degrees." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6406 +#: flatcamGUI/FlatCAMGUI.py:6385 msgid "Skew_X angle:" msgstr "Угол наклона_X:" -#: flatcamGUI/FlatCAMGUI.py:6408 +#: flatcamGUI/FlatCAMGUI.py:6387 msgid "Angle for Skew/Shear on X axis. In degrees." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6415 +#: flatcamGUI/FlatCAMGUI.py:6394 msgid "Skew_Y angle:" msgstr "Угол наклона_Y:" -#: flatcamGUI/FlatCAMGUI.py:6417 +#: flatcamGUI/FlatCAMGUI.py:6396 msgid "Angle for Skew/Shear on Y axis. In degrees." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6424 +#: flatcamGUI/FlatCAMGUI.py:6403 msgid "Scale_X factor:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6426 +#: flatcamGUI/FlatCAMGUI.py:6405 msgid "Factor for scaling on X axis." msgstr "Коэффициент масштабирования по оси X." -#: flatcamGUI/FlatCAMGUI.py:6433 +#: flatcamGUI/FlatCAMGUI.py:6412 msgid "Scale_Y factor:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6435 +#: flatcamGUI/FlatCAMGUI.py:6414 msgid "Factor for scaling on Y axis." msgstr "Коэффициент масштабирования по оси Y." -#: flatcamGUI/FlatCAMGUI.py:6443 +#: flatcamGUI/FlatCAMGUI.py:6422 msgid "" "Scale the selected object(s)\n" "using the Scale_X factor for both axis." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6451 flatcamTools/ToolTransform.py:210 +#: flatcamGUI/FlatCAMGUI.py:6430 flatcamTools/ToolTransform.py:210 msgid "" "Scale the selected object(s)\n" "using the origin reference when checked,\n" @@ -7320,27 +7547,27 @@ msgid "" "of the selected objects when unchecked." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6460 +#: flatcamGUI/FlatCAMGUI.py:6439 msgid "Offset_X val:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6462 +#: flatcamGUI/FlatCAMGUI.py:6441 msgid "Distance to offset on X axis. In current units." msgstr "Расстояние смещения по оси X. В текущих единицах." -#: flatcamGUI/FlatCAMGUI.py:6469 +#: flatcamGUI/FlatCAMGUI.py:6448 msgid "Offset_Y val:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6471 +#: flatcamGUI/FlatCAMGUI.py:6450 msgid "Distance to offset on Y axis. In current units." msgstr "Расстояние смещения по оси Y. В текущих единицах." -#: flatcamGUI/FlatCAMGUI.py:6477 +#: flatcamGUI/FlatCAMGUI.py:6456 msgid "Mirror Reference" msgstr "Точка зеркалтрования" -#: flatcamGUI/FlatCAMGUI.py:6479 flatcamTools/ToolTransform.py:314 +#: flatcamGUI/FlatCAMGUI.py:6458 flatcamTools/ToolTransform.py:314 msgid "" "Flip the selected object(s)\n" "around the point in Point Entry Field.\n" @@ -7353,11 +7580,11 @@ msgid "" "Point Entry field and click Flip on X(Y)" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6490 +#: flatcamGUI/FlatCAMGUI.py:6469 msgid " Mirror Ref. Point:" msgstr " Точка зеркалирования:" -#: flatcamGUI/FlatCAMGUI.py:6492 flatcamTools/ToolTransform.py:327 +#: flatcamGUI/FlatCAMGUI.py:6471 flatcamTools/ToolTransform.py:327 msgid "" "Coordinates in format (x, y) used as reference for mirroring.\n" "The 'x' in (x, y) will be used when using Flip on X and\n" @@ -7368,11 +7595,11 @@ msgstr "" "'x' в (x, y) будет использоваться при отражении по X и\n" "'y' в (x, y) будет использоваться при отражении по Y" -#: flatcamGUI/FlatCAMGUI.py:6509 +#: flatcamGUI/FlatCAMGUI.py:6488 msgid "SolderPaste Tool Options" msgstr "Паяльная паста" -#: flatcamGUI/FlatCAMGUI.py:6514 +#: flatcamGUI/FlatCAMGUI.py:6493 msgid "" "A tool to create GCode for dispensing\n" "solder paste onto a PCB." @@ -7380,153 +7607,153 @@ msgstr "" "Инструмент для создания GCode для дозирования\n" "нанесения паяльной пасты на печатную плату." -#: flatcamGUI/FlatCAMGUI.py:6525 +#: flatcamGUI/FlatCAMGUI.py:6504 msgid "Diameters of nozzle tools, separated by ','" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6532 +#: flatcamGUI/FlatCAMGUI.py:6511 msgid "New Nozzle Dia:" msgstr "Новый диам. насадки:" -#: flatcamGUI/FlatCAMGUI.py:6534 flatcamTools/ToolSolderPaste.py:103 +#: flatcamGUI/FlatCAMGUI.py:6513 flatcamTools/ToolSolderPaste.py:103 msgid "Diameter for the new Nozzle tool to add in the Tool Table" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6542 flatcamTools/ToolSolderPaste.py:166 +#: flatcamGUI/FlatCAMGUI.py:6521 flatcamTools/ToolSolderPaste.py:166 msgid "Z Dispense Start:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6544 flatcamTools/ToolSolderPaste.py:168 +#: flatcamGUI/FlatCAMGUI.py:6523 flatcamTools/ToolSolderPaste.py:168 msgid "The height (Z) when solder paste dispensing starts." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6551 flatcamTools/ToolSolderPaste.py:174 +#: flatcamGUI/FlatCAMGUI.py:6530 flatcamTools/ToolSolderPaste.py:174 msgid "Z Dispense:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6553 flatcamTools/ToolSolderPaste.py:176 +#: flatcamGUI/FlatCAMGUI.py:6532 flatcamTools/ToolSolderPaste.py:176 msgid "The height (Z) when doing solder paste dispensing." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6560 flatcamTools/ToolSolderPaste.py:183 +#: flatcamGUI/FlatCAMGUI.py:6539 flatcamTools/ToolSolderPaste.py:183 msgid "Z Dispense Stop:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6562 flatcamTools/ToolSolderPaste.py:185 +#: flatcamGUI/FlatCAMGUI.py:6541 flatcamTools/ToolSolderPaste.py:185 msgid "The height (Z) when solder paste dispensing stops." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6569 flatcamTools/ToolSolderPaste.py:191 +#: flatcamGUI/FlatCAMGUI.py:6548 flatcamTools/ToolSolderPaste.py:191 msgid "Z Travel:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6571 flatcamTools/ToolSolderPaste.py:193 +#: flatcamGUI/FlatCAMGUI.py:6550 flatcamTools/ToolSolderPaste.py:193 msgid "" "The height (Z) for travel between pads\n" "(without dispensing solder paste)." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6579 flatcamTools/ToolSolderPaste.py:200 +#: flatcamGUI/FlatCAMGUI.py:6558 flatcamTools/ToolSolderPaste.py:200 msgid "Z Toolchange:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6581 flatcamTools/ToolSolderPaste.py:202 +#: flatcamGUI/FlatCAMGUI.py:6560 flatcamTools/ToolSolderPaste.py:202 msgid "The height (Z) for tool (nozzle) change." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6588 flatcamTools/ToolSolderPaste.py:208 +#: flatcamGUI/FlatCAMGUI.py:6567 flatcamTools/ToolSolderPaste.py:208 msgid "XY Toolchange:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6590 flatcamTools/ToolSolderPaste.py:210 +#: flatcamGUI/FlatCAMGUI.py:6569 flatcamTools/ToolSolderPaste.py:210 msgid "" "The X,Y location for tool (nozzle) change.\n" "The format is (x, y) where x and y are real numbers." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6598 flatcamTools/ToolSolderPaste.py:217 +#: flatcamGUI/FlatCAMGUI.py:6577 flatcamTools/ToolSolderPaste.py:217 msgid "Feedrate X-Y:" msgstr "Скорость подачи X-Y:" -#: flatcamGUI/FlatCAMGUI.py:6600 flatcamTools/ToolSolderPaste.py:219 +#: flatcamGUI/FlatCAMGUI.py:6579 flatcamTools/ToolSolderPaste.py:219 msgid "Feedrate (speed) while moving on the X-Y plane." msgstr "Скорость подачи при движении по плоскости X-Y." -#: flatcamGUI/FlatCAMGUI.py:6607 flatcamTools/ToolSolderPaste.py:225 +#: flatcamGUI/FlatCAMGUI.py:6586 flatcamTools/ToolSolderPaste.py:225 msgid "Feedrate Z:" msgstr "Скорость подачи Z:" -#: flatcamGUI/FlatCAMGUI.py:6609 flatcamTools/ToolSolderPaste.py:227 +#: flatcamGUI/FlatCAMGUI.py:6588 flatcamTools/ToolSolderPaste.py:227 msgid "" "Feedrate (speed) while moving vertically\n" "(on Z plane)." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6617 flatcamTools/ToolSolderPaste.py:234 +#: flatcamGUI/FlatCAMGUI.py:6596 flatcamTools/ToolSolderPaste.py:234 msgid "Feedrate Z Dispense:" msgstr "Скорость подачи Z Диспенсер:" -#: flatcamGUI/FlatCAMGUI.py:6619 +#: flatcamGUI/FlatCAMGUI.py:6598 msgid "" "Feedrate (speed) while moving up vertically\n" "to Dispense position (on Z plane)." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6627 flatcamTools/ToolSolderPaste.py:243 +#: flatcamGUI/FlatCAMGUI.py:6606 flatcamTools/ToolSolderPaste.py:243 msgid "Spindle Speed FWD:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6629 flatcamTools/ToolSolderPaste.py:245 +#: flatcamGUI/FlatCAMGUI.py:6608 flatcamTools/ToolSolderPaste.py:245 msgid "" "The dispenser speed while pushing solder paste\n" "through the dispenser nozzle." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6637 flatcamTools/ToolSolderPaste.py:252 +#: flatcamGUI/FlatCAMGUI.py:6616 flatcamTools/ToolSolderPaste.py:252 msgid "Dwell FWD:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6639 flatcamTools/ToolSolderPaste.py:254 +#: flatcamGUI/FlatCAMGUI.py:6618 flatcamTools/ToolSolderPaste.py:254 msgid "Pause after solder dispensing." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6646 flatcamTools/ToolSolderPaste.py:260 +#: flatcamGUI/FlatCAMGUI.py:6625 flatcamTools/ToolSolderPaste.py:260 msgid "Spindle Speed REV:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6648 flatcamTools/ToolSolderPaste.py:262 +#: flatcamGUI/FlatCAMGUI.py:6627 flatcamTools/ToolSolderPaste.py:262 msgid "" "The dispenser speed while retracting solder paste\n" "through the dispenser nozzle." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6656 flatcamTools/ToolSolderPaste.py:269 +#: flatcamGUI/FlatCAMGUI.py:6635 flatcamTools/ToolSolderPaste.py:269 msgid "Dwell REV:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6658 flatcamTools/ToolSolderPaste.py:271 +#: flatcamGUI/FlatCAMGUI.py:6637 flatcamTools/ToolSolderPaste.py:271 msgid "" "Pause after solder paste dispenser retracted,\n" "to allow pressure equilibrium." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6665 flatcamTools/ToolSolderPaste.py:277 +#: flatcamGUI/FlatCAMGUI.py:6644 flatcamTools/ToolSolderPaste.py:277 msgid "PostProcessors:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6667 flatcamTools/ToolSolderPaste.py:279 +#: flatcamGUI/FlatCAMGUI.py:6646 flatcamTools/ToolSolderPaste.py:279 msgid "Files that control the GCode generation." msgstr "Файлы контролирующие генерацию GCode." -#: flatcamGUI/FlatCAMGUI.py:6697 flatcamGUI/FlatCAMGUI.py:6703 +#: flatcamGUI/FlatCAMGUI.py:6676 flatcamGUI/FlatCAMGUI.py:6682 msgid "Idle." msgstr "Нет заданий." -#: flatcamGUI/FlatCAMGUI.py:6727 +#: flatcamGUI/FlatCAMGUI.py:6706 msgid "Application started ..." msgstr "Приложение запущено ..." -#: flatcamGUI/FlatCAMGUI.py:6728 +#: flatcamGUI/FlatCAMGUI.py:6707 msgid "Hello!" msgstr "Привет!" @@ -9064,22 +9291,22 @@ msgstr "" msgid "Stop" msgstr "Конечн." -#: flatcamTools/ToolMeasurement.py:55 -msgid "Dx:" -msgstr "Дистанция по X:" - -#: flatcamTools/ToolMeasurement.py:58 -msgid "Dy:" -msgstr "Дистанция по Y:" - #: flatcamTools/ToolMeasurement.py:53 flatcamTools/ToolMeasurement.py:70 msgid "This is the measuring Stop point coordinates." msgstr "" +#: flatcamTools/ToolMeasurement.py:55 +msgid "Dx:" +msgstr "Дистанция по X:" + #: flatcamTools/ToolMeasurement.py:56 flatcamTools/ToolMeasurement.py:74 msgid "This is the distance measured over the X axis." msgstr "" +#: flatcamTools/ToolMeasurement.py:58 +msgid "Dy:" +msgstr "Дистанция по Y:" + #: flatcamTools/ToolMeasurement.py:59 flatcamTools/ToolMeasurement.py:79 msgid "This is the distance measured over the Y axis." msgstr "" @@ -10245,6 +10472,16 @@ msgstr "" msgid "CNCJob objects can't be offseted." msgstr "Объекты CNCJob не могут быть смещены." +#~ msgid "Tool dia: " +#~ msgstr "Диам. инстр.: " + +#~ msgid "" +#~ "The diameter of the cutting\n" +#~ "tool.." +#~ msgstr "" +#~ "Диаметр режущего\n" +#~ "инструмента.." + #, fuzzy #~| msgid "" #~| "How much (fraction) of the tool width to overlap each tool pass.\n" diff --git a/locale_template/strings.pot b/locale_template/strings.pot index 975f0020..3e221532 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-06-20 19:31+0300\n" +"POT-Creation-Date: 2019-06-22 16:40+0300\n" "PO-Revision-Date: 2019-03-25 15:08+0200\n" "Last-Translator: \n" "Language-Team: \n" @@ -63,17 +63,17 @@ msgstr "" msgid "Close Editor" msgstr "" -#: FlatCAMApp.py:2311 FlatCAMApp.py:3403 FlatCAMApp.py:5887 +#: FlatCAMApp.py:2311 FlatCAMApp.py:3403 FlatCAMApp.py:5908 #: FlatCAMTranslation.py:89 flatcamGUI/FlatCAMGUI.py:3730 msgid "Yes" msgstr "" -#: FlatCAMApp.py:2312 FlatCAMApp.py:3404 FlatCAMApp.py:5888 +#: FlatCAMApp.py:2312 FlatCAMApp.py:3404 FlatCAMApp.py:5909 #: FlatCAMTranslation.py:90 flatcamGUI/FlatCAMGUI.py:3731 msgid "No" msgstr "" -#: FlatCAMApp.py:2313 FlatCAMApp.py:3405 FlatCAMApp.py:3737 FlatCAMApp.py:5889 +#: FlatCAMApp.py:2313 FlatCAMApp.py:3405 FlatCAMApp.py:3754 FlatCAMApp.py:5910 msgid "Cancel" msgstr "" @@ -201,7 +201,7 @@ msgid "" "Do you want to Save the project?" msgstr "" -#: FlatCAMApp.py:3401 FlatCAMApp.py:5885 +#: FlatCAMApp.py:3401 FlatCAMApp.py:5906 msgid "Save changes" msgstr "" @@ -240,91 +240,91 @@ msgstr "" msgid "[success] A Geometry object was converted to SingleGeo type." msgstr "" -#: FlatCAMApp.py:3736 FlatCAMApp.py:4572 FlatCAMApp.py:6160 FlatCAMApp.py:6171 -#: FlatCAMApp.py:6411 FlatCAMApp.py:6421 +#: FlatCAMApp.py:3753 FlatCAMApp.py:4593 FlatCAMApp.py:6181 FlatCAMApp.py:6192 +#: FlatCAMApp.py:6432 FlatCAMApp.py:6442 msgid "Ok" msgstr "" -#: FlatCAMApp.py:3778 +#: FlatCAMApp.py:3799 #, python-format msgid "[success] Converted units to %s" msgstr "" -#: FlatCAMApp.py:3789 +#: FlatCAMApp.py:3810 msgid "[WARNING_NOTCL] Units conversion cancelled." msgstr "" -#: FlatCAMApp.py:4441 +#: FlatCAMApp.py:4462 msgid "Open file" msgstr "" -#: FlatCAMApp.py:4472 FlatCAMApp.py:4477 +#: FlatCAMApp.py:4493 FlatCAMApp.py:4498 msgid "Export G-Code ..." msgstr "" -#: FlatCAMApp.py:4480 +#: FlatCAMApp.py:4501 msgid "[WARNING_NOTCL] Export Code cancelled." msgstr "" -#: FlatCAMApp.py:4490 +#: FlatCAMApp.py:4511 msgid "[WARNING] No such file or directory" msgstr "" -#: FlatCAMApp.py:4497 +#: FlatCAMApp.py:4518 #, python-format msgid "Saved to: %s" msgstr "" -#: FlatCAMApp.py:4560 FlatCAMApp.py:4593 FlatCAMApp.py:4604 FlatCAMApp.py:4615 +#: FlatCAMApp.py:4581 FlatCAMApp.py:4614 FlatCAMApp.py:4625 FlatCAMApp.py:4636 #: flatcamTools/ToolNonCopperClear.py:489 flatcamTools/ToolSolderPaste.py:765 msgid "" "[WARNING_NOTCL] Please enter a tool diameter with non-zero value, in Float " "format." msgstr "" -#: FlatCAMApp.py:4565 FlatCAMApp.py:4598 FlatCAMApp.py:4609 FlatCAMApp.py:4620 +#: FlatCAMApp.py:4586 FlatCAMApp.py:4619 FlatCAMApp.py:4630 FlatCAMApp.py:4641 #: flatcamGUI/FlatCAMGUI.py:3001 msgid "[WARNING_NOTCL] Adding Tool cancelled ..." msgstr "" -#: FlatCAMApp.py:4568 +#: FlatCAMApp.py:4589 msgid "" "Adding Tool works only when Advanced is checked.\n" "Go to Preferences -> General - Show Advanced Options." msgstr "" -#: FlatCAMApp.py:4681 +#: FlatCAMApp.py:4702 msgid "Object(s) deleted ..." msgstr "" -#: FlatCAMApp.py:4685 +#: FlatCAMApp.py:4706 msgid "Failed. No object(s) selected..." msgstr "" -#: FlatCAMApp.py:4687 +#: FlatCAMApp.py:4708 msgid "Save the work in Editor and try again ..." msgstr "" -#: FlatCAMApp.py:4700 +#: FlatCAMApp.py:4721 msgid "Click to set the origin ..." msgstr "" -#: FlatCAMApp.py:4712 +#: FlatCAMApp.py:4733 msgid "Jump to ..." msgstr "" -#: FlatCAMApp.py:4713 +#: FlatCAMApp.py:4734 msgid "Enter the coordinates in format X,Y:" msgstr "" -#: FlatCAMApp.py:4720 +#: FlatCAMApp.py:4741 msgid "Wrong coordinates. Enter coordinates in format: X,Y" msgstr "" -#: FlatCAMApp.py:4738 flatcamEditors/FlatCAMExcEditor.py:2320 +#: FlatCAMApp.py:4759 flatcamEditors/FlatCAMExcEditor.py:2320 #: flatcamEditors/FlatCAMExcEditor.py:2327 -#: flatcamEditors/FlatCAMGeoEditor.py:3645 -#: flatcamEditors/FlatCAMGeoEditor.py:3659 +#: flatcamEditors/FlatCAMGeoEditor.py:3648 +#: flatcamEditors/FlatCAMGeoEditor.py:3662 #: flatcamEditors/FlatCAMGrbEditor.py:1040 #: flatcamEditors/FlatCAMGrbEditor.py:1141 #: flatcamEditors/FlatCAMGrbEditor.py:1409 @@ -335,84 +335,84 @@ msgstr "" msgid "[success] Done." msgstr "" -#: FlatCAMApp.py:4870 FlatCAMApp.py:4937 +#: FlatCAMApp.py:4891 FlatCAMApp.py:4958 msgid "[WARNING_NOTCL] No object is selected. Select an object and try again." msgstr "" -#: FlatCAMApp.py:4978 +#: FlatCAMApp.py:4999 msgid "[success] Origin set ..." msgstr "" -#: FlatCAMApp.py:4998 +#: FlatCAMApp.py:5019 msgid "Preferences" msgstr "" -#: FlatCAMApp.py:5018 +#: FlatCAMApp.py:5039 msgid "[WARNING_NOTCL] No object selected to Flip on Y axis." msgstr "" -#: FlatCAMApp.py:5043 +#: FlatCAMApp.py:5064 msgid "[success] Flip on Y axis done." msgstr "" -#: FlatCAMApp.py:5045 FlatCAMApp.py:5085 +#: FlatCAMApp.py:5066 FlatCAMApp.py:5106 #: flatcamEditors/FlatCAMGeoEditor.py:1355 #: flatcamEditors/FlatCAMGrbEditor.py:5343 flatcamTools/ToolTransform.py:748 #, python-format msgid "[ERROR_NOTCL] Due of %s, Flip action was not executed." msgstr "" -#: FlatCAMApp.py:5058 +#: FlatCAMApp.py:5079 msgid "[WARNING_NOTCL] No object selected to Flip on X axis." msgstr "" -#: FlatCAMApp.py:5083 +#: FlatCAMApp.py:5104 msgid "[success] Flip on X axis done." msgstr "" -#: FlatCAMApp.py:5098 +#: FlatCAMApp.py:5119 msgid "[WARNING_NOTCL] No object selected to Rotate." msgstr "" -#: FlatCAMApp.py:5101 FlatCAMApp.py:5146 FlatCAMApp.py:5177 +#: FlatCAMApp.py:5122 FlatCAMApp.py:5167 FlatCAMApp.py:5198 msgid "Transform" msgstr "" -#: FlatCAMApp.py:5101 FlatCAMApp.py:5146 FlatCAMApp.py:5177 +#: FlatCAMApp.py:5122 FlatCAMApp.py:5167 FlatCAMApp.py:5198 msgid "Enter the Angle value:" msgstr "" -#: FlatCAMApp.py:5131 +#: FlatCAMApp.py:5152 msgid "[success] Rotation done." msgstr "" -#: FlatCAMApp.py:5133 flatcamEditors/FlatCAMGeoEditor.py:1298 +#: FlatCAMApp.py:5154 flatcamEditors/FlatCAMGeoEditor.py:1298 #: flatcamEditors/FlatCAMGrbEditor.py:5272 flatcamTools/ToolTransform.py:677 #, python-format msgid "[ERROR_NOTCL] Due of %s, rotation movement was not executed." msgstr "" -#: FlatCAMApp.py:5144 +#: FlatCAMApp.py:5165 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on X axis." msgstr "" -#: FlatCAMApp.py:5165 +#: FlatCAMApp.py:5186 msgid "[success] Skew on X axis done." msgstr "" -#: FlatCAMApp.py:5175 +#: FlatCAMApp.py:5196 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on Y axis." msgstr "" -#: FlatCAMApp.py:5196 +#: FlatCAMApp.py:5217 msgid "[success] Skew on Y axis done." msgstr "" -#: FlatCAMApp.py:5266 +#: FlatCAMApp.py:5287 msgid "Grid On/Off" msgstr "" -#: FlatCAMApp.py:5279 flatcamEditors/FlatCAMGeoEditor.py:937 +#: FlatCAMApp.py:5300 flatcamEditors/FlatCAMGeoEditor.py:937 #: flatcamEditors/FlatCAMGrbEditor.py:2381 #: flatcamEditors/FlatCAMGrbEditor.py:4861 flatcamGUI/ObjectUI.py:991 #: flatcamTools/ToolDblSided.py:160 flatcamTools/ToolDblSided.py:208 @@ -422,7 +422,7 @@ msgstr "" msgid "Add" msgstr "" -#: FlatCAMApp.py:5280 FlatCAMObj.py:3276 +#: FlatCAMApp.py:5301 FlatCAMObj.py:3296 #: flatcamEditors/FlatCAMGrbEditor.py:2386 flatcamGUI/FlatCAMGUI.py:527 #: flatcamGUI/FlatCAMGUI.py:724 flatcamGUI/FlatCAMGUI.py:1616 #: flatcamGUI/FlatCAMGUI.py:1953 flatcamGUI/ObjectUI.py:1007 @@ -431,278 +431,278 @@ msgstr "" msgid "Delete" msgstr "" -#: FlatCAMApp.py:5293 +#: FlatCAMApp.py:5314 msgid "New Grid ..." msgstr "" -#: FlatCAMApp.py:5294 +#: FlatCAMApp.py:5315 msgid "Enter a Grid Value:" msgstr "" -#: FlatCAMApp.py:5302 FlatCAMApp.py:5329 +#: FlatCAMApp.py:5323 FlatCAMApp.py:5350 msgid "" "[WARNING_NOTCL] Please enter a grid value with non-zero value, in Float " "format." msgstr "" -#: FlatCAMApp.py:5308 +#: FlatCAMApp.py:5329 msgid "[success] New Grid added ..." msgstr "" -#: FlatCAMApp.py:5311 +#: FlatCAMApp.py:5332 msgid "[WARNING_NOTCL] Grid already exists ..." msgstr "" -#: FlatCAMApp.py:5314 +#: FlatCAMApp.py:5335 msgid "[WARNING_NOTCL] Adding New Grid cancelled ..." msgstr "" -#: FlatCAMApp.py:5336 +#: FlatCAMApp.py:5357 msgid "[ERROR_NOTCL] Grid Value does not exist ..." msgstr "" -#: FlatCAMApp.py:5339 +#: FlatCAMApp.py:5360 msgid "[success] Grid Value deleted ..." msgstr "" -#: FlatCAMApp.py:5342 +#: FlatCAMApp.py:5363 msgid "[WARNING_NOTCL] Delete Grid value cancelled ..." msgstr "" -#: FlatCAMApp.py:5381 +#: FlatCAMApp.py:5402 msgid "[WARNING_NOTCL] No object selected to copy it's name" msgstr "" -#: FlatCAMApp.py:5385 +#: FlatCAMApp.py:5406 msgid "Name copied on clipboard ..." msgstr "" -#: FlatCAMApp.py:5427 flatcamEditors/FlatCAMGrbEditor.py:3901 +#: FlatCAMApp.py:5448 flatcamEditors/FlatCAMGrbEditor.py:3901 msgid "[success] Coordinates copied to clipboard." msgstr "" -#: FlatCAMApp.py:5683 FlatCAMApp.py:5686 FlatCAMApp.py:5689 FlatCAMApp.py:5692 -#: FlatCAMApp.py:5707 FlatCAMApp.py:5710 FlatCAMApp.py:5713 FlatCAMApp.py:5716 -#: FlatCAMApp.py:5756 FlatCAMApp.py:5759 FlatCAMApp.py:5762 FlatCAMApp.py:5765 +#: FlatCAMApp.py:5704 FlatCAMApp.py:5707 FlatCAMApp.py:5710 FlatCAMApp.py:5713 +#: FlatCAMApp.py:5728 FlatCAMApp.py:5731 FlatCAMApp.py:5734 FlatCAMApp.py:5737 +#: FlatCAMApp.py:5777 FlatCAMApp.py:5780 FlatCAMApp.py:5783 FlatCAMApp.py:5786 #: ObjectCollection.py:719 ObjectCollection.py:722 ObjectCollection.py:725 #: ObjectCollection.py:728 #, python-brace-format msgid "[selected]{name} selected" msgstr "" -#: FlatCAMApp.py:5882 +#: FlatCAMApp.py:5903 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:5903 +#: FlatCAMApp.py:5924 msgid "[success] New Project created..." msgstr "" -#: FlatCAMApp.py:6019 FlatCAMApp.py:6022 flatcamGUI/FlatCAMGUI.py:608 +#: FlatCAMApp.py:6040 FlatCAMApp.py:6043 flatcamGUI/FlatCAMGUI.py:608 #: flatcamGUI/FlatCAMGUI.py:1832 msgid "Open Gerber" msgstr "" -#: FlatCAMApp.py:6027 +#: FlatCAMApp.py:6048 msgid "[WARNING_NOTCL] Open Gerber cancelled." msgstr "" -#: FlatCAMApp.py:6048 FlatCAMApp.py:6051 flatcamGUI/FlatCAMGUI.py:609 +#: FlatCAMApp.py:6069 FlatCAMApp.py:6072 flatcamGUI/FlatCAMGUI.py:609 #: flatcamGUI/FlatCAMGUI.py:1833 msgid "Open Excellon" msgstr "" -#: FlatCAMApp.py:6056 +#: FlatCAMApp.py:6077 msgid "[WARNING_NOTCL] Open Excellon cancelled." msgstr "" -#: FlatCAMApp.py:6078 FlatCAMApp.py:6081 +#: FlatCAMApp.py:6099 FlatCAMApp.py:6102 msgid "Open G-Code" msgstr "" -#: FlatCAMApp.py:6086 +#: FlatCAMApp.py:6107 msgid "[WARNING_NOTCL] Open G-Code cancelled." msgstr "" -#: FlatCAMApp.py:6104 FlatCAMApp.py:6107 +#: FlatCAMApp.py:6125 FlatCAMApp.py:6128 msgid "Open Project" msgstr "" -#: FlatCAMApp.py:6115 +#: FlatCAMApp.py:6136 msgid "[WARNING_NOTCL] Open Project cancelled." msgstr "" -#: FlatCAMApp.py:6134 FlatCAMApp.py:6137 +#: FlatCAMApp.py:6155 FlatCAMApp.py:6158 msgid "Open Configuration File" msgstr "" -#: FlatCAMApp.py:6141 +#: FlatCAMApp.py:6162 msgid "[WARNING_NOTCL] Open Config cancelled." msgstr "" -#: FlatCAMApp.py:6156 FlatCAMApp.py:6407 FlatCAMApp.py:8560 FlatCAMApp.py:8580 -#: FlatCAMApp.py:8601 FlatCAMApp.py:8623 +#: FlatCAMApp.py:6177 FlatCAMApp.py:6428 FlatCAMApp.py:8581 FlatCAMApp.py:8601 +#: FlatCAMApp.py:8622 FlatCAMApp.py:8644 msgid "[WARNING_NOTCL] No object selected." msgstr "" -#: FlatCAMApp.py:6157 FlatCAMApp.py:6408 +#: FlatCAMApp.py:6178 FlatCAMApp.py:6429 msgid "Please Select a Geometry object to export" msgstr "" -#: FlatCAMApp.py:6168 +#: FlatCAMApp.py:6189 msgid "[ERROR_NOTCL] Only Geometry, Gerber and CNCJob objects can be used." msgstr "" -#: FlatCAMApp.py:6181 FlatCAMApp.py:6185 +#: FlatCAMApp.py:6202 FlatCAMApp.py:6206 msgid "Export SVG" msgstr "" -#: FlatCAMApp.py:6190 +#: FlatCAMApp.py:6211 msgid "[WARNING_NOTCL] Export SVG cancelled." msgstr "" -#: FlatCAMApp.py:6209 +#: FlatCAMApp.py:6230 msgid "[[WARNING_NOTCL]] Data must be a 3D array with last dimension 3 or 4" msgstr "" -#: FlatCAMApp.py:6215 FlatCAMApp.py:6219 +#: FlatCAMApp.py:6236 FlatCAMApp.py:6240 msgid "Export PNG Image" msgstr "" -#: FlatCAMApp.py:6224 +#: FlatCAMApp.py:6245 msgid "Export PNG cancelled." msgstr "" -#: FlatCAMApp.py:6243 +#: FlatCAMApp.py:6264 msgid "" "[WARNING_NOTCL] No object selected. Please select an Gerber object to export." msgstr "" -#: FlatCAMApp.py:6248 FlatCAMApp.py:6371 +#: FlatCAMApp.py:6269 FlatCAMApp.py:6392 msgid "" "[ERROR_NOTCL] Failed. Only Gerber objects can be saved as Gerber files..." msgstr "" -#: FlatCAMApp.py:6260 +#: FlatCAMApp.py:6281 msgid "Save Gerber source file" msgstr "" -#: FlatCAMApp.py:6265 +#: FlatCAMApp.py:6286 msgid "[WARNING_NOTCL] Save Gerber source file cancelled." msgstr "" -#: FlatCAMApp.py:6284 +#: FlatCAMApp.py:6305 msgid "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." msgstr "" -#: FlatCAMApp.py:6289 FlatCAMApp.py:6330 +#: FlatCAMApp.py:6310 FlatCAMApp.py:6351 msgid "" "[ERROR_NOTCL] Failed. Only Excellon objects can be saved as Excellon files..." msgstr "" -#: FlatCAMApp.py:6297 FlatCAMApp.py:6301 +#: FlatCAMApp.py:6318 FlatCAMApp.py:6322 msgid "Save Excellon source file" msgstr "" -#: FlatCAMApp.py:6306 +#: FlatCAMApp.py:6327 msgid "[WARNING_NOTCL] Saving Excellon source file cancelled." msgstr "" -#: FlatCAMApp.py:6325 +#: FlatCAMApp.py:6346 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." msgstr "" -#: FlatCAMApp.py:6338 FlatCAMApp.py:6342 +#: FlatCAMApp.py:6359 FlatCAMApp.py:6363 msgid "Export Excellon" msgstr "" -#: FlatCAMApp.py:6347 +#: FlatCAMApp.py:6368 msgid "[WARNING_NOTCL] Export Excellon cancelled." msgstr "" -#: FlatCAMApp.py:6366 +#: FlatCAMApp.py:6387 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Gerber object to export." msgstr "" -#: FlatCAMApp.py:6379 FlatCAMApp.py:6383 +#: FlatCAMApp.py:6400 FlatCAMApp.py:6404 msgid "Export Gerber" msgstr "" -#: FlatCAMApp.py:6388 +#: FlatCAMApp.py:6409 msgid "[WARNING_NOTCL] Export Gerber cancelled." msgstr "" -#: FlatCAMApp.py:6418 +#: FlatCAMApp.py:6439 msgid "[ERROR_NOTCL] Only Geometry objects can be used." msgstr "" -#: FlatCAMApp.py:6432 FlatCAMApp.py:6436 +#: FlatCAMApp.py:6453 FlatCAMApp.py:6457 msgid "Export DXF" msgstr "" -#: FlatCAMApp.py:6442 +#: FlatCAMApp.py:6463 msgid "[WARNING_NOTCL] Export DXF cancelled." msgstr "" -#: FlatCAMApp.py:6462 FlatCAMApp.py:6465 +#: FlatCAMApp.py:6483 FlatCAMApp.py:6486 msgid "Import SVG" msgstr "" -#: FlatCAMApp.py:6474 +#: FlatCAMApp.py:6495 msgid "[WARNING_NOTCL] Open SVG cancelled." msgstr "" -#: FlatCAMApp.py:6493 FlatCAMApp.py:6497 +#: FlatCAMApp.py:6514 FlatCAMApp.py:6518 msgid "Import DXF" msgstr "" -#: FlatCAMApp.py:6506 +#: FlatCAMApp.py:6527 msgid "[WARNING_NOTCL] Open DXF cancelled." msgstr "" -#: FlatCAMApp.py:6524 +#: FlatCAMApp.py:6545 #, python-format msgid "%s" msgstr "" -#: FlatCAMApp.py:6544 +#: FlatCAMApp.py:6565 msgid "" "[WARNING_NOTCL] Select an Gerber or Excellon file to view it's source file." msgstr "" -#: FlatCAMApp.py:6551 +#: FlatCAMApp.py:6572 msgid "" "[WARNING_NOTCL] There is no selected object for which to see it's source " "file code." msgstr "" -#: FlatCAMApp.py:6559 +#: FlatCAMApp.py:6580 msgid "Source Editor" msgstr "" -#: FlatCAMApp.py:6569 +#: FlatCAMApp.py:6590 #, python-format msgid "[ERROR]App.on_view_source() -->%s" msgstr "" -#: FlatCAMApp.py:6581 FlatCAMApp.py:7723 FlatCAMObj.py:5560 +#: FlatCAMApp.py:6602 FlatCAMApp.py:7744 FlatCAMObj.py:5581 #: flatcamTools/ToolSolderPaste.py:1278 msgid "Code Editor" msgstr "" -#: FlatCAMApp.py:6593 +#: FlatCAMApp.py:6614 msgid "Script Editor" msgstr "" -#: FlatCAMApp.py:6596 +#: FlatCAMApp.py:6617 msgid "" "#\n" "# CREATE A NEW FLATCAM TCL SCRIPT\n" @@ -726,216 +726,216 @@ msgid "" "\n" msgstr "" -#: FlatCAMApp.py:6619 FlatCAMApp.py:6622 +#: FlatCAMApp.py:6640 FlatCAMApp.py:6643 msgid "Open TCL script" msgstr "" -#: FlatCAMApp.py:6630 +#: FlatCAMApp.py:6651 msgid "[WARNING_NOTCL] Open TCL script cancelled." msgstr "" -#: FlatCAMApp.py:6642 +#: FlatCAMApp.py:6663 #, python-format msgid "[ERROR]App.on_fileopenscript() -->%s" msgstr "" -#: FlatCAMApp.py:6668 FlatCAMApp.py:6671 +#: FlatCAMApp.py:6689 FlatCAMApp.py:6692 msgid "Run TCL script" msgstr "" -#: FlatCAMApp.py:6679 +#: FlatCAMApp.py:6700 msgid "[WARNING_NOTCL] Run TCL script cancelled." msgstr "" -#: FlatCAMApp.py:6729 FlatCAMApp.py:6733 +#: FlatCAMApp.py:6750 FlatCAMApp.py:6754 msgid "Save Project As ..." msgstr "" -#: FlatCAMApp.py:6730 +#: FlatCAMApp.py:6751 #, python-brace-format msgid "{l_save}/Project_{date}" msgstr "" -#: FlatCAMApp.py:6738 +#: FlatCAMApp.py:6759 msgid "[WARNING_NOTCL] Save Project cancelled." msgstr "" -#: FlatCAMApp.py:6782 +#: FlatCAMApp.py:6803 msgid "Exporting SVG" msgstr "" -#: FlatCAMApp.py:6816 FlatCAMApp.py:6922 FlatCAMApp.py:7037 +#: FlatCAMApp.py:6837 FlatCAMApp.py:6943 FlatCAMApp.py:7058 #, python-format msgid "[success] SVG file exported to %s" msgstr "" -#: FlatCAMApp.py:6847 FlatCAMApp.py:6968 +#: FlatCAMApp.py:6868 FlatCAMApp.py:6989 #, python-format msgid "[WARNING_NOTCL] No object Box. Using instead %s" msgstr "" -#: FlatCAMApp.py:6925 FlatCAMApp.py:7040 +#: FlatCAMApp.py:6946 FlatCAMApp.py:7061 msgid "Generating Film ... Please wait." msgstr "" -#: FlatCAMApp.py:7188 +#: FlatCAMApp.py:7209 #, python-format msgid "[success] Excellon file exported to %s" msgstr "" -#: FlatCAMApp.py:7195 +#: FlatCAMApp.py:7216 msgid "Exporting Excellon" msgstr "" -#: FlatCAMApp.py:7200 FlatCAMApp.py:7207 +#: FlatCAMApp.py:7221 FlatCAMApp.py:7228 msgid "[ERROR_NOTCL] Could not export Excellon file." msgstr "" -#: FlatCAMApp.py:7305 +#: FlatCAMApp.py:7326 #, python-format msgid "[success] Gerber file exported to %s" msgstr "" -#: FlatCAMApp.py:7312 +#: FlatCAMApp.py:7333 msgid "Exporting Gerber" msgstr "" -#: FlatCAMApp.py:7317 FlatCAMApp.py:7324 +#: FlatCAMApp.py:7338 FlatCAMApp.py:7345 msgid "[ERROR_NOTCL] Could not export Gerber file." msgstr "" -#: FlatCAMApp.py:7364 +#: FlatCAMApp.py:7385 #, python-format msgid "[success] DXF file exported to %s" msgstr "" -#: FlatCAMApp.py:7370 +#: FlatCAMApp.py:7391 msgid "Exporting DXF" msgstr "" -#: FlatCAMApp.py:7375 FlatCAMApp.py:7382 +#: FlatCAMApp.py:7396 FlatCAMApp.py:7403 msgid "[[WARNING_NOTCL]] Could not export DXF file." msgstr "" -#: FlatCAMApp.py:7402 FlatCAMApp.py:7444 FlatCAMApp.py:7488 +#: FlatCAMApp.py:7423 FlatCAMApp.py:7465 FlatCAMApp.py:7509 msgid "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" msgstr "" -#: FlatCAMApp.py:7412 +#: FlatCAMApp.py:7433 msgid "Importing SVG" msgstr "" -#: FlatCAMApp.py:7423 FlatCAMApp.py:7465 FlatCAMApp.py:7508 FlatCAMApp.py:7585 -#: FlatCAMApp.py:7646 FlatCAMApp.py:7709 flatcamTools/ToolPDF.py:212 +#: FlatCAMApp.py:7444 FlatCAMApp.py:7486 FlatCAMApp.py:7529 FlatCAMApp.py:7606 +#: FlatCAMApp.py:7667 FlatCAMApp.py:7730 flatcamTools/ToolPDF.py:212 #, python-format msgid "[success] Opened: %s" msgstr "" -#: FlatCAMApp.py:7454 +#: FlatCAMApp.py:7475 msgid "Importing DXF" msgstr "" -#: FlatCAMApp.py:7496 +#: FlatCAMApp.py:7517 msgid "Importing Image" msgstr "" -#: FlatCAMApp.py:7537 FlatCAMApp.py:7539 +#: FlatCAMApp.py:7558 FlatCAMApp.py:7560 #, python-format msgid "[ERROR_NOTCL] Failed to open file: %s" msgstr "" -#: FlatCAMApp.py:7542 +#: FlatCAMApp.py:7563 #, python-brace-format msgid "[ERROR_NOTCL] Failed to parse file: {name}. {error}" msgstr "" -#: FlatCAMApp.py:7549 FlatCAMObj.py:4239 +#: FlatCAMApp.py:7570 FlatCAMObj.py:4259 #: flatcamEditors/FlatCAMExcEditor.py:2077 msgid "[ERROR] An internal error has ocurred. See shell.\n" msgstr "" -#: FlatCAMApp.py:7558 +#: FlatCAMApp.py:7579 msgid "" "[ERROR_NOTCL] Object is not Gerber file or empty. Aborting object creation." msgstr "" -#: FlatCAMApp.py:7566 +#: FlatCAMApp.py:7587 msgid "Opening Gerber" msgstr "" -#: FlatCAMApp.py:7576 +#: FlatCAMApp.py:7597 msgid "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." msgstr "" -#: FlatCAMApp.py:7609 flatcamTools/ToolPcbWizard.py:421 +#: FlatCAMApp.py:7630 flatcamTools/ToolPcbWizard.py:421 msgid "[ERROR_NOTCL] This is not Excellon file." msgstr "" -#: FlatCAMApp.py:7612 +#: FlatCAMApp.py:7633 #, python-format msgid "[ERROR_NOTCL] Cannot open file: %s" msgstr "" -#: FlatCAMApp.py:7617 flatcamTools/ToolPcbWizard.py:429 +#: FlatCAMApp.py:7638 flatcamTools/ToolPcbWizard.py:429 msgid "[ERROR_NOTCL] An internal error has occurred. See shell.\n" msgstr "" -#: FlatCAMApp.py:7630 flatcamTools/ToolPDF.py:262 +#: FlatCAMApp.py:7651 flatcamTools/ToolPDF.py:262 #: flatcamTools/ToolPcbWizard.py:442 #, python-format msgid "[ERROR_NOTCL] No geometry found in file: %s" msgstr "" -#: FlatCAMApp.py:7633 +#: FlatCAMApp.py:7654 msgid "Opening Excellon." msgstr "" -#: FlatCAMApp.py:7639 +#: FlatCAMApp.py:7660 msgid "[ERROR_NOTCL] Open Excellon file failed. Probable not an Excellon file." msgstr "" -#: FlatCAMApp.py:7676 +#: FlatCAMApp.py:7697 #, python-format msgid "[ERROR_NOTCL] Failed to open %s" msgstr "" -#: FlatCAMApp.py:7686 +#: FlatCAMApp.py:7707 msgid "[ERROR_NOTCL] This is not GCODE" msgstr "" -#: FlatCAMApp.py:7692 +#: FlatCAMApp.py:7713 msgid "Opening G-Code." msgstr "" -#: FlatCAMApp.py:7700 +#: FlatCAMApp.py:7721 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:7740 +#: FlatCAMApp.py:7761 #, python-format msgid "[ERROR_NOTCL] Failed to open config file: %s" msgstr "" -#: FlatCAMApp.py:7766 FlatCAMApp.py:7783 +#: FlatCAMApp.py:7787 FlatCAMApp.py:7804 #, python-format msgid "[ERROR_NOTCL] Failed to open project file: %s" msgstr "" -#: FlatCAMApp.py:7806 +#: FlatCAMApp.py:7827 #, python-format msgid "[success] Project loaded from: %s" msgstr "" -#: FlatCAMApp.py:7911 +#: FlatCAMApp.py:7932 msgid "Available commands:\n" msgstr "" -#: FlatCAMApp.py:7913 +#: FlatCAMApp.py:7934 msgid "" "\n" "\n" @@ -943,27 +943,27 @@ msgid "" " Example: help open_gerber" msgstr "" -#: FlatCAMApp.py:8063 +#: FlatCAMApp.py:8084 msgid "Shows list of commands." msgstr "" -#: FlatCAMApp.py:8120 +#: FlatCAMApp.py:8141 msgid "[ERROR_NOTCL] Failed to load recent item list." msgstr "" -#: FlatCAMApp.py:8127 +#: FlatCAMApp.py:8148 msgid "[ERROR_NOTCL] Failed to parse recent item list." msgstr "" -#: FlatCAMApp.py:8171 +#: FlatCAMApp.py:8192 msgid "Clear Recent files" msgstr "" -#: FlatCAMApp.py:8188 flatcamGUI/FlatCAMGUI.py:968 +#: FlatCAMApp.py:8209 flatcamGUI/FlatCAMGUI.py:968 msgid "Shortcut Key List" msgstr "" -#: FlatCAMApp.py:8195 +#: FlatCAMApp.py:8216 msgid "" "\n" "

Selected Tab - Choose an Item from " @@ -1013,76 +1013,76 @@ msgid "" " " msgstr "" -#: FlatCAMApp.py:8302 +#: FlatCAMApp.py:8323 msgid "[WARNING_NOTCL] Failed checking for latest version. Could not connect." msgstr "" -#: FlatCAMApp.py:8309 +#: FlatCAMApp.py:8330 msgid "[ERROR_NOTCL] Could not parse information about latest version." msgstr "" -#: FlatCAMApp.py:8319 +#: FlatCAMApp.py:8340 msgid "[success] FlatCAM is up to date!" msgstr "" -#: FlatCAMApp.py:8324 +#: FlatCAMApp.py:8345 msgid "Newer Version Available" msgstr "" -#: FlatCAMApp.py:8325 +#: FlatCAMApp.py:8346 msgid "" "There is a newer version of FlatCAM available for download:\n" "\n" msgstr "" -#: FlatCAMApp.py:8327 +#: FlatCAMApp.py:8348 msgid "info" msgstr "" -#: FlatCAMApp.py:8346 +#: FlatCAMApp.py:8367 msgid "[success] All plots disabled." msgstr "" -#: FlatCAMApp.py:8352 +#: FlatCAMApp.py:8373 msgid "[success] All non selected plots disabled." msgstr "" -#: FlatCAMApp.py:8358 +#: FlatCAMApp.py:8379 msgid "[success] All plots enabled." msgstr "" -#: FlatCAMApp.py:8364 +#: FlatCAMApp.py:8385 msgid "[success] Selected plots enabled..." msgstr "" -#: FlatCAMApp.py:8372 +#: FlatCAMApp.py:8393 msgid "[success] Selected plots disabled..." msgstr "" -#: FlatCAMApp.py:8382 FlatCAMApp.py:8395 +#: FlatCAMApp.py:8403 FlatCAMApp.py:8416 msgid "Working ..." msgstr "" -#: FlatCAMApp.py:8429 +#: FlatCAMApp.py:8450 msgid "Saving FlatCAM Project" msgstr "" -#: FlatCAMApp.py:8450 FlatCAMApp.py:8481 +#: FlatCAMApp.py:8471 FlatCAMApp.py:8502 #, python-format msgid "[success] Project saved to: %s" msgstr "" -#: FlatCAMApp.py:8468 +#: FlatCAMApp.py:8489 #, python-format msgid "[ERROR_NOTCL] Failed to verify project file: %s. Retry to save it." msgstr "" -#: FlatCAMApp.py:8475 +#: FlatCAMApp.py:8496 #, python-format msgid "[ERROR_NOTCL] Failed to parse saved project file: %s. Retry to save it." msgstr "" -#: FlatCAMApp.py:8483 +#: FlatCAMApp.py:8504 #, python-format msgid "[ERROR_NOTCL] Failed to save project file: %s. Retry to save it." msgstr "" @@ -1092,11 +1092,11 @@ msgstr "" msgid "[success] Name changed from {old} to {new}" msgstr "" -#: FlatCAMObj.py:553 FlatCAMObj.py:2035 FlatCAMObj.py:3281 FlatCAMObj.py:5457 +#: FlatCAMObj.py:553 FlatCAMObj.py:2035 FlatCAMObj.py:3301 FlatCAMObj.py:5478 msgid "Basic" msgstr "" -#: FlatCAMObj.py:565 FlatCAMObj.py:2051 FlatCAMObj.py:3303 FlatCAMObj.py:5463 +#: FlatCAMObj.py:565 FlatCAMObj.py:2051 FlatCAMObj.py:3323 FlatCAMObj.py:5484 msgid "Advanced" msgstr "" @@ -1117,9 +1117,9 @@ msgstr "" msgid "Total Slots" msgstr "" -#: FlatCAMObj.py:2107 FlatCAMObj.py:3355 FlatCAMObj.py:3655 FlatCAMObj.py:3842 -#: FlatCAMObj.py:3855 FlatCAMObj.py:3972 FlatCAMObj.py:4389 FlatCAMObj.py:4627 -#: FlatCAMObj.py:5040 flatcamEditors/FlatCAMExcEditor.py:1474 +#: FlatCAMObj.py:2107 FlatCAMObj.py:3375 FlatCAMObj.py:3675 FlatCAMObj.py:3862 +#: FlatCAMObj.py:3875 FlatCAMObj.py:3992 FlatCAMObj.py:4409 FlatCAMObj.py:4647 +#: FlatCAMObj.py:5060 flatcamEditors/FlatCAMExcEditor.py:1474 #: flatcamTools/ToolCalculators.py:307 flatcamTools/ToolCalculators.py:318 #: flatcamTools/ToolCalculators.py:330 flatcamTools/ToolCalculators.py:345 #: flatcamTools/ToolCalculators.py:358 flatcamTools/ToolCalculators.py:372 @@ -1173,23 +1173,23 @@ msgid "" "[ERROR_NOTCL] Milling tool for SLOTS is larger than hole size. Cancelled." msgstr "" -#: FlatCAMObj.py:2608 FlatCAMObj.py:4277 FlatCAMObj.py:4493 FlatCAMObj.py:4810 +#: FlatCAMObj.py:2608 FlatCAMObj.py:4297 FlatCAMObj.py:4513 FlatCAMObj.py:4830 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"z_pdepth\"] or self." "options[\"z_pdepth\"]" msgstr "" -#: FlatCAMObj.py:2620 FlatCAMObj.py:4289 FlatCAMObj.py:4505 FlatCAMObj.py:4822 +#: FlatCAMObj.py:2620 FlatCAMObj.py:4309 FlatCAMObj.py:4525 FlatCAMObj.py:4842 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"feedrate_probe\"] or " "self.options[\"feedrate_probe\"]" msgstr "" -#: FlatCAMObj.py:2652 FlatCAMObj.py:4698 FlatCAMObj.py:4703 FlatCAMObj.py:4853 +#: FlatCAMObj.py:2652 FlatCAMObj.py:4718 FlatCAMObj.py:4723 FlatCAMObj.py:4873 msgid "Generating CNC Code" msgstr "" -#: FlatCAMObj.py:2678 FlatCAMObj.py:4999 camlib.py:5167 camlib.py:5626 +#: FlatCAMObj.py:2678 FlatCAMObj.py:5019 camlib.py:5167 camlib.py:5626 #: camlib.py:5889 msgid "" "[ERROR]The Toolchange X,Y field in Edit -> Preferences has to be in the " @@ -1197,154 +1197,154 @@ msgid "" "but now there is only one value, not two. " msgstr "" -#: FlatCAMObj.py:2990 FlatCAMObj.py:3898 FlatCAMObj.py:3899 FlatCAMObj.py:3908 +#: FlatCAMObj.py:2998 FlatCAMObj.py:3918 FlatCAMObj.py:3919 FlatCAMObj.py:3928 msgid "Iso" msgstr "" -#: FlatCAMObj.py:2990 FlatCAMObj.py:3239 FlatCAMObj.py:3520 +#: FlatCAMObj.py:2998 FlatCAMObj.py:3258 FlatCAMObj.py:3540 msgid "Rough" msgstr "" -#: FlatCAMObj.py:2990 +#: FlatCAMObj.py:2998 msgid "Finish" msgstr "" -#: FlatCAMObj.py:3274 flatcamGUI/FlatCAMGUI.py:526 flatcamGUI/FlatCAMGUI.py:722 +#: FlatCAMObj.py:3294 flatcamGUI/FlatCAMGUI.py:526 flatcamGUI/FlatCAMGUI.py:722 #: flatcamGUI/FlatCAMGUI.py:1615 flatcamGUI/FlatCAMGUI.py:1951 #: flatcamGUI/ObjectUI.py:999 msgid "Copy" msgstr "" -#: FlatCAMObj.py:3490 +#: FlatCAMObj.py:3510 msgid "[ERROR_NOTCL] Please enter the desired tool diameter in Float format." msgstr "" -#: FlatCAMObj.py:3565 +#: FlatCAMObj.py:3585 msgid "[success] Tool added in Tool Table." msgstr "" -#: FlatCAMObj.py:3570 +#: FlatCAMObj.py:3590 msgid "[ERROR_NOTCL] Default Tool added. Wrong value format entered." msgstr "" -#: FlatCAMObj.py:3600 FlatCAMObj.py:3610 +#: FlatCAMObj.py:3620 FlatCAMObj.py:3630 msgid "[WARNING_NOTCL] Failed. Select a tool to copy." msgstr "" -#: FlatCAMObj.py:3639 +#: FlatCAMObj.py:3659 msgid "[success] Tool was copied in Tool Table." msgstr "" -#: FlatCAMObj.py:3672 +#: FlatCAMObj.py:3692 msgid "[success] Tool was edited in Tool Table." msgstr "" -#: FlatCAMObj.py:3703 FlatCAMObj.py:3713 +#: FlatCAMObj.py:3723 FlatCAMObj.py:3733 msgid "[WARNING_NOTCL] Failed. Select a tool to delete." msgstr "" -#: FlatCAMObj.py:3737 +#: FlatCAMObj.py:3757 msgid "[success] Tool was deleted in Tool Table." msgstr "" -#: FlatCAMObj.py:4158 +#: FlatCAMObj.py:4178 #, python-format msgid "" "[WARNING_NOTCL] This Geometry can't be processed because it is %s geometry." msgstr "" -#: FlatCAMObj.py:4175 +#: FlatCAMObj.py:4195 msgid "[ERROR_NOTCL] Wrong Tool Dia value format entered, use a number." msgstr "" -#: FlatCAMObj.py:4202 +#: FlatCAMObj.py:4222 msgid "[ERROR_NOTCL] Failed. No tool selected in the tool table ..." msgstr "" -#: FlatCAMObj.py:4240 +#: FlatCAMObj.py:4260 #, python-format msgid "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" msgstr "" -#: FlatCAMObj.py:4398 FlatCAMObj.py:4636 +#: FlatCAMObj.py:4418 FlatCAMObj.py:4656 msgid "" "[WARNING] Tool Offset is selected in Tool Table but no value is provided.\n" "Add a Tool Offset or change the Offset Type." msgstr "" -#: FlatCAMObj.py:4517 flatcamTools/ToolSolderPaste.py:1107 +#: FlatCAMObj.py:4537 flatcamTools/ToolSolderPaste.py:1107 #: flatcamTools/ToolSolderPaste.py:1162 msgid "[ERROR_NOTCL] Cancelled. Empty file, it has no geometry..." msgstr "" -#: FlatCAMObj.py:4886 FlatCAMObj.py:4896 camlib.py:3348 camlib.py:3357 +#: FlatCAMObj.py:4906 FlatCAMObj.py:4916 camlib.py:3348 camlib.py:3357 msgid "[ERROR_NOTCL] Scale factor has to be a number: integer or float." msgstr "" -#: FlatCAMObj.py:4934 +#: FlatCAMObj.py:4954 msgid "[success] Geometry Scale done." msgstr "" -#: FlatCAMObj.py:4951 camlib.py:3426 +#: FlatCAMObj.py:4971 camlib.py:3426 msgid "" "[ERROR_NOTCL] An (x,y) pair of values are needed. Probable you entered only " "one value in the Offset field." msgstr "" -#: FlatCAMObj.py:4971 +#: FlatCAMObj.py:4991 msgid "[success] Geometry Offset done." msgstr "" -#: FlatCAMObj.py:5525 FlatCAMObj.py:5530 flatcamTools/ToolSolderPaste.py:1361 +#: FlatCAMObj.py:5546 FlatCAMObj.py:5551 flatcamTools/ToolSolderPaste.py:1361 msgid "Export Machine Code ..." msgstr "" -#: FlatCAMObj.py:5536 flatcamTools/ToolSolderPaste.py:1364 +#: FlatCAMObj.py:5557 flatcamTools/ToolSolderPaste.py:1364 msgid "[WARNING_NOTCL] Export Machine Code cancelled ..." msgstr "" -#: FlatCAMObj.py:5549 +#: FlatCAMObj.py:5570 #, python-format msgid "[success] Machine Code file saved to: %s" msgstr "" -#: FlatCAMObj.py:5571 +#: FlatCAMObj.py:5592 #, python-format msgid "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" msgstr "" -#: FlatCAMObj.py:5688 +#: FlatCAMObj.py:5709 #, python-format msgid "" "[WARNING_NOTCL] This CNCJob object can't be processed because it is a %s " "CNCJob object." msgstr "" -#: FlatCAMObj.py:5741 +#: FlatCAMObj.py:5762 msgid "[ERROR_NOTCL] G-code does not have a units code: either G20 or G21" msgstr "" -#: FlatCAMObj.py:5754 +#: FlatCAMObj.py:5775 msgid "" "[ERROR_NOTCL] Cancelled. The Toolchange Custom code is enabled but it's " "empty." msgstr "" -#: FlatCAMObj.py:5761 +#: FlatCAMObj.py:5782 msgid "[success] Toolchange G-code was replaced by a custom code." msgstr "" -#: FlatCAMObj.py:5776 flatcamTools/ToolSolderPaste.py:1390 +#: FlatCAMObj.py:5797 flatcamTools/ToolSolderPaste.py:1390 msgid "[WARNING_NOTCL] No such file or directory" msgstr "" -#: FlatCAMObj.py:5796 FlatCAMObj.py:5808 +#: FlatCAMObj.py:5817 FlatCAMObj.py:5829 msgid "" "[WARNING_NOTCL] The used postprocessor file has to have in it's name: " "'toolchange_custom'" msgstr "" -#: FlatCAMObj.py:5814 +#: FlatCAMObj.py:5835 msgid "[ERROR] There is no postprocessor file." msgstr "" @@ -1624,7 +1624,7 @@ msgstr "" msgid "[success] Done. Drill(s) copied." msgstr "" -#: flatcamEditors/FlatCAMExcEditor.py:792 flatcamGUI/FlatCAMGUI.py:5026 +#: flatcamEditors/FlatCAMExcEditor.py:792 flatcamGUI/FlatCAMGUI.py:5008 msgid "Excellon Editor" msgstr "" @@ -1658,7 +1658,7 @@ msgstr "" msgid "Tool Dia:" msgstr "" -#: flatcamEditors/FlatCAMExcEditor.py:839 flatcamGUI/FlatCAMGUI.py:5055 +#: flatcamEditors/FlatCAMExcEditor.py:839 flatcamGUI/FlatCAMGUI.py:5037 #: flatcamGUI/ObjectUI.py:978 msgid "Diameter for the new tool" msgstr "" @@ -1731,11 +1731,11 @@ msgstr "" msgid "Circular" msgstr "" -#: flatcamEditors/FlatCAMExcEditor.py:944 flatcamGUI/FlatCAMGUI.py:5065 +#: flatcamEditors/FlatCAMExcEditor.py:944 flatcamGUI/FlatCAMGUI.py:5047 msgid "Nr of drills:" msgstr "" -#: flatcamEditors/FlatCAMExcEditor.py:946 flatcamGUI/FlatCAMGUI.py:5067 +#: flatcamEditors/FlatCAMExcEditor.py:946 flatcamGUI/FlatCAMGUI.py:5049 msgid "Specify how many drills to be in the array." msgstr "" @@ -1747,7 +1747,7 @@ msgid "Direction:" msgstr "" #: flatcamEditors/FlatCAMExcEditor.py:966 -#: flatcamEditors/FlatCAMGrbEditor.py:2528 flatcamGUI/FlatCAMGUI.py:5082 +#: flatcamEditors/FlatCAMGrbEditor.py:2528 flatcamGUI/FlatCAMGUI.py:5064 msgid "" "Direction on which the linear array is oriented:\n" "- 'X' - horizontal axis \n" @@ -1756,12 +1756,12 @@ msgid "" msgstr "" #: flatcamEditors/FlatCAMExcEditor.py:979 -#: flatcamEditors/FlatCAMGrbEditor.py:2541 flatcamGUI/FlatCAMGUI.py:5096 +#: flatcamEditors/FlatCAMGrbEditor.py:2541 flatcamGUI/FlatCAMGUI.py:5078 msgid "Pitch:" msgstr "" #: flatcamEditors/FlatCAMExcEditor.py:981 -#: flatcamEditors/FlatCAMGrbEditor.py:2543 flatcamGUI/FlatCAMGUI.py:5098 +#: flatcamEditors/FlatCAMGrbEditor.py:2543 flatcamGUI/FlatCAMGUI.py:5080 msgid "Pitch = Distance between elements of the array." msgstr "" @@ -1770,7 +1770,7 @@ msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:665 #: flatcamEditors/FlatCAMGrbEditor.py:2550 #: flatcamEditors/FlatCAMGrbEditor.py:2586 -#: flatcamEditors/FlatCAMGrbEditor.py:4588 flatcamGUI/FlatCAMGUI.py:5107 +#: flatcamEditors/FlatCAMGrbEditor.py:4588 flatcamGUI/FlatCAMGUI.py:5089 #: flatcamTools/ToolTransform.py:68 msgid "Angle:" msgstr "" @@ -1792,8 +1792,8 @@ msgid "" msgstr "" #: flatcamEditors/FlatCAMExcEditor.py:1026 -#: flatcamEditors/FlatCAMGrbEditor.py:2588 flatcamGUI/FlatCAMGUI.py:5109 -#: flatcamGUI/FlatCAMGUI.py:5135 +#: flatcamEditors/FlatCAMGrbEditor.py:2588 flatcamGUI/FlatCAMGUI.py:5091 +#: flatcamGUI/FlatCAMGUI.py:5117 msgid "Angle at which each element in circular array is placed." msgstr "" @@ -1916,19 +1916,20 @@ msgid "Tool" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:432 flatcamGUI/FlatCAMGUI.py:4054 -#: flatcamGUI/FlatCAMGUI.py:5618 flatcamGUI/FlatCAMGUI.py:5895 -#: flatcamGUI/FlatCAMGUI.py:6035 flatcamGUI/ObjectUI.py:260 +#: flatcamGUI/FlatCAMGUI.py:5163 flatcamGUI/FlatCAMGUI.py:5597 +#: flatcamGUI/FlatCAMGUI.py:5874 flatcamGUI/FlatCAMGUI.py:6014 +#: flatcamGUI/ObjectUI.py:260 msgid "Tool dia:" msgstr "" -#: flatcamEditors/FlatCAMGeoEditor.py:434 flatcamGUI/FlatCAMGUI.py:6037 +#: flatcamEditors/FlatCAMGeoEditor.py:434 flatcamGUI/FlatCAMGUI.py:6016 msgid "" "Diameter of the tool to\n" "be used in the operation." msgstr "" -#: flatcamEditors/FlatCAMGeoEditor.py:443 flatcamGUI/FlatCAMGUI.py:5801 -#: flatcamGUI/FlatCAMGUI.py:6046 flatcamTools/ToolNonCopperClear.py:165 +#: flatcamEditors/FlatCAMGeoEditor.py:443 flatcamGUI/FlatCAMGUI.py:5780 +#: flatcamGUI/FlatCAMGUI.py:6025 flatcamTools/ToolNonCopperClear.py:165 #: flatcamTools/ToolPaint.py:160 msgid "Overlap Rate:" msgstr "" @@ -1948,14 +1949,14 @@ msgid "" "due of too many paths." msgstr "" -#: flatcamEditors/FlatCAMGeoEditor.py:461 flatcamGUI/FlatCAMGUI.py:5817 -#: flatcamGUI/FlatCAMGUI.py:5903 flatcamGUI/FlatCAMGUI.py:6056 +#: flatcamEditors/FlatCAMGeoEditor.py:461 flatcamGUI/FlatCAMGUI.py:5796 +#: flatcamGUI/FlatCAMGUI.py:5882 flatcamGUI/FlatCAMGUI.py:6035 #: flatcamTools/ToolCutOut.py:86 flatcamTools/ToolNonCopperClear.py:181 #: flatcamTools/ToolPaint.py:177 msgid "Margin:" msgstr "" -#: flatcamEditors/FlatCAMGeoEditor.py:463 flatcamGUI/FlatCAMGUI.py:6058 +#: flatcamEditors/FlatCAMGeoEditor.py:463 flatcamGUI/FlatCAMGUI.py:6037 #: flatcamTools/ToolPaint.py:179 msgid "" "Distance by which to avoid\n" @@ -1963,40 +1964,40 @@ msgid "" "be painted." msgstr "" -#: flatcamEditors/FlatCAMGeoEditor.py:472 flatcamGUI/FlatCAMGUI.py:5826 -#: flatcamGUI/FlatCAMGUI.py:6067 flatcamTools/ToolNonCopperClear.py:190 +#: flatcamEditors/FlatCAMGeoEditor.py:472 flatcamGUI/FlatCAMGUI.py:5805 +#: flatcamGUI/FlatCAMGUI.py:6046 flatcamTools/ToolNonCopperClear.py:190 #: flatcamTools/ToolPaint.py:188 msgid "Method:" msgstr "" -#: flatcamEditors/FlatCAMGeoEditor.py:474 flatcamGUI/FlatCAMGUI.py:6069 +#: flatcamEditors/FlatCAMGeoEditor.py:474 flatcamGUI/FlatCAMGUI.py:6048 msgid "" "Algorithm to paint the polygon:
Standard: Fixed step inwards." "
Seed-based: Outwards from seed." msgstr "" -#: flatcamEditors/FlatCAMGeoEditor.py:487 flatcamGUI/FlatCAMGUI.py:5842 -#: flatcamGUI/FlatCAMGUI.py:6082 flatcamTools/ToolNonCopperClear.py:206 +#: flatcamEditors/FlatCAMGeoEditor.py:487 flatcamGUI/FlatCAMGUI.py:5821 +#: flatcamGUI/FlatCAMGUI.py:6061 flatcamTools/ToolNonCopperClear.py:206 #: flatcamTools/ToolPaint.py:204 msgid "Connect:" msgstr "" -#: flatcamEditors/FlatCAMGeoEditor.py:489 flatcamGUI/FlatCAMGUI.py:5844 -#: flatcamGUI/FlatCAMGUI.py:6084 flatcamTools/ToolNonCopperClear.py:208 +#: flatcamEditors/FlatCAMGeoEditor.py:489 flatcamGUI/FlatCAMGUI.py:5823 +#: flatcamGUI/FlatCAMGUI.py:6063 flatcamTools/ToolNonCopperClear.py:208 #: flatcamTools/ToolPaint.py:206 msgid "" "Draw lines between resulting\n" "segments to minimize tool lifts." msgstr "" -#: flatcamEditors/FlatCAMGeoEditor.py:496 flatcamGUI/FlatCAMGUI.py:5851 -#: flatcamGUI/FlatCAMGUI.py:6092 flatcamTools/ToolNonCopperClear.py:215 +#: flatcamEditors/FlatCAMGeoEditor.py:496 flatcamGUI/FlatCAMGUI.py:5830 +#: flatcamGUI/FlatCAMGUI.py:6071 flatcamTools/ToolNonCopperClear.py:215 #: flatcamTools/ToolPaint.py:213 msgid "Contour:" msgstr "" -#: flatcamEditors/FlatCAMGeoEditor.py:498 flatcamGUI/FlatCAMGUI.py:5853 -#: flatcamGUI/FlatCAMGUI.py:6094 flatcamTools/ToolNonCopperClear.py:217 +#: flatcamEditors/FlatCAMGeoEditor.py:498 flatcamGUI/FlatCAMGUI.py:5832 +#: flatcamGUI/FlatCAMGUI.py:6073 flatcamTools/ToolNonCopperClear.py:217 #: flatcamTools/ToolPaint.py:215 msgid "" "Cut around the perimeter of the polygon\n" @@ -2189,7 +2190,7 @@ msgid "Scale Y" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:797 -#: flatcamEditors/FlatCAMGrbEditor.py:4720 flatcamGUI/FlatCAMGUI.py:6441 +#: flatcamEditors/FlatCAMGrbEditor.py:4720 flatcamGUI/FlatCAMGUI.py:6420 #: flatcamTools/ToolTransform.py:200 msgid "Link" msgstr "" @@ -2202,7 +2203,7 @@ msgid "" msgstr "" #: flatcamEditors/FlatCAMGeoEditor.py:805 -#: flatcamEditors/FlatCAMGrbEditor.py:4728 flatcamGUI/FlatCAMGUI.py:6449 +#: flatcamEditors/FlatCAMGrbEditor.py:4728 flatcamGUI/FlatCAMGUI.py:6428 #: flatcamTools/ToolTransform.py:208 msgid "Scale Reference" msgstr "" @@ -2738,88 +2739,88 @@ msgstr "" msgid "Shape transformations ..." msgstr "" -#: flatcamEditors/FlatCAMGeoEditor.py:3416 +#: flatcamEditors/FlatCAMGeoEditor.py:3419 #, python-brace-format msgid "" "[WARNING_NOTCL] Editing MultiGeo Geometry, tool: {tool} with diameter: {dia}" msgstr "" -#: flatcamEditors/FlatCAMGeoEditor.py:3793 +#: flatcamEditors/FlatCAMGeoEditor.py:3796 msgid "[WARNING_NOTCL] Copy cancelled. No shape selected." msgstr "" -#: flatcamEditors/FlatCAMGeoEditor.py:3800 flatcamGUI/FlatCAMGUI.py:2727 +#: flatcamEditors/FlatCAMGeoEditor.py:3803 flatcamGUI/FlatCAMGUI.py:2727 #: flatcamGUI/FlatCAMGUI.py:2773 flatcamGUI/FlatCAMGUI.py:2791 #: flatcamGUI/FlatCAMGUI.py:2922 flatcamGUI/FlatCAMGUI.py:2934 #: flatcamGUI/FlatCAMGUI.py:2968 msgid "Click on target point." msgstr "" -#: flatcamEditors/FlatCAMGeoEditor.py:4044 -#: flatcamEditors/FlatCAMGeoEditor.py:4079 +#: flatcamEditors/FlatCAMGeoEditor.py:4047 +#: flatcamEditors/FlatCAMGeoEditor.py:4082 msgid "" "[WARNING_NOTCL] A selection of at least 2 geo items is required to do " "Intersection." msgstr "" -#: flatcamEditors/FlatCAMGeoEditor.py:4163 -#: flatcamEditors/FlatCAMGeoEditor.py:4201 -#: flatcamEditors/FlatCAMGeoEditor.py:4277 +#: flatcamEditors/FlatCAMGeoEditor.py:4166 +#: flatcamEditors/FlatCAMGeoEditor.py:4204 +#: flatcamEditors/FlatCAMGeoEditor.py:4280 msgid "" "[ERROR_NOTCL] Negative buffer value is not accepted. Use Buffer interior to " "generate an 'inside' shape" msgstr "" -#: flatcamEditors/FlatCAMGeoEditor.py:4172 -#: flatcamEditors/FlatCAMGeoEditor.py:4210 -#: flatcamEditors/FlatCAMGeoEditor.py:4285 +#: flatcamEditors/FlatCAMGeoEditor.py:4175 +#: flatcamEditors/FlatCAMGeoEditor.py:4213 +#: flatcamEditors/FlatCAMGeoEditor.py:4288 msgid "[WARNING_NOTCL] Nothing selected for buffering." msgstr "" -#: flatcamEditors/FlatCAMGeoEditor.py:4176 -#: flatcamEditors/FlatCAMGeoEditor.py:4214 -#: flatcamEditors/FlatCAMGeoEditor.py:4289 +#: flatcamEditors/FlatCAMGeoEditor.py:4179 +#: flatcamEditors/FlatCAMGeoEditor.py:4217 +#: flatcamEditors/FlatCAMGeoEditor.py:4292 msgid "[WARNING_NOTCL] Invalid distance for buffering." msgstr "" -#: flatcamEditors/FlatCAMGeoEditor.py:4186 -#: flatcamEditors/FlatCAMGeoEditor.py:4298 +#: flatcamEditors/FlatCAMGeoEditor.py:4189 +#: flatcamEditors/FlatCAMGeoEditor.py:4301 msgid "" "[ERROR_NOTCL] Failed, the result is empty. Choose a different buffer value." msgstr "" -#: flatcamEditors/FlatCAMGeoEditor.py:4194 +#: flatcamEditors/FlatCAMGeoEditor.py:4197 msgid "[success] Full buffer geometry created." msgstr "" -#: flatcamEditors/FlatCAMGeoEditor.py:4224 +#: flatcamEditors/FlatCAMGeoEditor.py:4227 msgid "" "[ERROR_NOTCL] Failed, the result is empty. Choose a smaller buffer value." msgstr "" -#: flatcamEditors/FlatCAMGeoEditor.py:4239 +#: flatcamEditors/FlatCAMGeoEditor.py:4242 msgid "[success] Interior buffer geometry created." msgstr "" -#: flatcamEditors/FlatCAMGeoEditor.py:4310 +#: flatcamEditors/FlatCAMGeoEditor.py:4313 msgid "[success] Exterior buffer geometry created." msgstr "" -#: flatcamEditors/FlatCAMGeoEditor.py:4374 +#: flatcamEditors/FlatCAMGeoEditor.py:4377 msgid "[WARNING_NOTCL] Nothing selected for painting." msgstr "" -#: flatcamEditors/FlatCAMGeoEditor.py:4380 +#: flatcamEditors/FlatCAMGeoEditor.py:4383 msgid "[WARNING] Invalid value for {}" msgstr "" -#: flatcamEditors/FlatCAMGeoEditor.py:4386 +#: flatcamEditors/FlatCAMGeoEditor.py:4389 msgid "" "[ERROR_NOTCL] Could not do Paint. Overlap value has to be less than 1.00 " "(100%)." msgstr "" -#: flatcamEditors/FlatCAMGeoEditor.py:4445 +#: flatcamEditors/FlatCAMGeoEditor.py:4448 #, python-format msgid "" "[ERROR] Could not do Paint. Try a different combination of parameters. Or a " @@ -2827,7 +2828,7 @@ msgid "" "%s" msgstr "" -#: flatcamEditors/FlatCAMGeoEditor.py:4456 +#: flatcamEditors/FlatCAMGeoEditor.py:4459 msgid "[success] Paint done." msgstr "" @@ -5418,7 +5419,7 @@ msgid "Gerber General" msgstr "" #: flatcamGUI/FlatCAMGUI.py:3995 flatcamGUI/FlatCAMGUI.py:4361 -#: flatcamGUI/FlatCAMGUI.py:5153 flatcamGUI/FlatCAMGUI.py:5525 +#: flatcamGUI/FlatCAMGUI.py:5135 flatcamGUI/FlatCAMGUI.py:5504 #: flatcamGUI/ObjectUI.py:150 flatcamGUI/ObjectUI.py:505 #: flatcamGUI/ObjectUI.py:833 flatcamGUI/ObjectUI.py:1350 msgid "Plot Options:" @@ -5442,18 +5443,18 @@ msgid "Draw polygons in different colors." msgstr "" #: flatcamGUI/FlatCAMGUI.py:4016 flatcamGUI/FlatCAMGUI.py:4367 -#: flatcamGUI/FlatCAMGUI.py:5157 flatcamGUI/ObjectUI.py:172 +#: flatcamGUI/FlatCAMGUI.py:5139 flatcamGUI/ObjectUI.py:172 msgid "Plot" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4018 flatcamGUI/FlatCAMGUI.py:5159 +#: flatcamGUI/FlatCAMGUI.py:4018 flatcamGUI/FlatCAMGUI.py:5141 #: flatcamGUI/ObjectUI.py:174 flatcamGUI/ObjectUI.py:546 #: flatcamGUI/ObjectUI.py:879 flatcamGUI/ObjectUI.py:1450 msgid "Plot (show) this object." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4023 flatcamGUI/FlatCAMGUI.py:5166 -#: flatcamGUI/FlatCAMGUI.py:5608 +#: flatcamGUI/FlatCAMGUI.py:4023 flatcamGUI/FlatCAMGUI.py:5149 +#: flatcamGUI/FlatCAMGUI.py:5587 msgid "Circle Steps:" msgstr "" @@ -5477,8 +5478,8 @@ msgid "" "toolpaths to cut outside polygons." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4056 flatcamGUI/FlatCAMGUI.py:4753 -#: flatcamGUI/FlatCAMGUI.py:5897 flatcamGUI/ObjectUI.py:788 +#: flatcamGUI/FlatCAMGUI.py:4056 flatcamGUI/FlatCAMGUI.py:4735 +#: flatcamGUI/FlatCAMGUI.py:5876 flatcamGUI/ObjectUI.py:788 #: flatcamGUI/ObjectUI.py:804 msgid "Diameter of the cutting tool." msgstr "" @@ -5529,7 +5530,7 @@ msgstr "" msgid "Clear non-copper:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4104 flatcamGUI/FlatCAMGUI.py:5785 +#: flatcamGUI/FlatCAMGUI.py:4104 flatcamGUI/FlatCAMGUI.py:5764 #: flatcamGUI/ObjectUI.py:386 msgid "" "Create a Geometry object with\n" @@ -5618,7 +5619,7 @@ msgstr "" msgid "Gerber Export" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4232 flatcamGUI/FlatCAMGUI.py:4902 +#: flatcamGUI/FlatCAMGUI.py:4232 flatcamGUI/FlatCAMGUI.py:4884 msgid "Export Options:" msgstr "" @@ -5628,7 +5629,7 @@ msgid "" "when using the File -> Export -> Export Gerber menu entry." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4243 flatcamGUI/FlatCAMGUI.py:4913 +#: flatcamGUI/FlatCAMGUI.py:4243 flatcamGUI/FlatCAMGUI.py:4895 msgid "Units:" msgstr "" @@ -5636,7 +5637,7 @@ msgstr "" msgid "The units used in the Gerber file." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4257 flatcamGUI/FlatCAMGUI.py:4927 +#: flatcamGUI/FlatCAMGUI.py:4257 flatcamGUI/FlatCAMGUI.py:4909 msgid "Int/Decimals:" msgstr "" @@ -5658,7 +5659,7 @@ msgid "" "the decimal part of Gerber coordinates." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4293 flatcamGUI/FlatCAMGUI.py:4988 +#: flatcamGUI/FlatCAMGUI.py:4293 flatcamGUI/FlatCAMGUI.py:4970 msgid "Zeros:" msgstr "" @@ -5671,12 +5672,12 @@ msgid "" "and Leading Zeros are kept." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4326 flatcamGUI/FlatCAMGUI.py:5029 -#: flatcamGUI/FlatCAMGUI.py:5491 flatcamGUI/FlatCAMGUI.py:5783 -#: flatcamGUI/FlatCAMGUI.py:5884 flatcamGUI/FlatCAMGUI.py:5963 -#: flatcamGUI/FlatCAMGUI.py:6022 flatcamGUI/FlatCAMGUI.py:6125 -#: flatcamGUI/FlatCAMGUI.py:6186 flatcamGUI/FlatCAMGUI.py:6385 -#: flatcamGUI/FlatCAMGUI.py:6512 +#: flatcamGUI/FlatCAMGUI.py:4326 flatcamGUI/FlatCAMGUI.py:5011 +#: flatcamGUI/FlatCAMGUI.py:5470 flatcamGUI/FlatCAMGUI.py:5762 +#: flatcamGUI/FlatCAMGUI.py:5863 flatcamGUI/FlatCAMGUI.py:5942 +#: flatcamGUI/FlatCAMGUI.py:6001 flatcamGUI/FlatCAMGUI.py:6104 +#: flatcamGUI/FlatCAMGUI.py:6165 flatcamGUI/FlatCAMGUI.py:6364 +#: flatcamGUI/FlatCAMGUI.py:6491 msgid "Parameters:" msgstr "" @@ -5684,8 +5685,8 @@ msgstr "" msgid "A list of Gerber Editor parameters." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4336 flatcamGUI/FlatCAMGUI.py:5039 -#: flatcamGUI/FlatCAMGUI.py:5501 +#: flatcamGUI/FlatCAMGUI.py:4336 flatcamGUI/FlatCAMGUI.py:5021 +#: flatcamGUI/FlatCAMGUI.py:5480 msgid "Selection limit:" msgstr "" @@ -5738,14 +5739,14 @@ msgid "Default values for INCH are 2:4" msgstr "" #: flatcamGUI/FlatCAMGUI.py:4418 flatcamGUI/FlatCAMGUI.py:4451 -#: flatcamGUI/FlatCAMGUI.py:4942 +#: flatcamGUI/FlatCAMGUI.py:4924 msgid "" "This numbers signify the number of digits in\n" "the whole part of Excellon coordinates." msgstr "" #: flatcamGUI/FlatCAMGUI.py:4432 flatcamGUI/FlatCAMGUI.py:4465 -#: flatcamGUI/FlatCAMGUI.py:4956 +#: flatcamGUI/FlatCAMGUI.py:4938 msgid "" "This numbers signify the number of digits in\n" "the decimal part of Excellon coordinates." @@ -5763,7 +5764,7 @@ msgstr "" msgid "Default Zeros:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4477 flatcamGUI/FlatCAMGUI.py:4991 +#: flatcamGUI/FlatCAMGUI.py:4477 flatcamGUI/FlatCAMGUI.py:4973 msgid "" "This sets the type of Excellon zeros.\n" "If LZ then Leading Zeros are kept and\n" @@ -5782,11 +5783,11 @@ msgid "" "and Leading Zeros are removed." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4502 +#: flatcamGUI/FlatCAMGUI.py:4498 msgid "Default Units:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4505 +#: flatcamGUI/FlatCAMGUI.py:4501 msgid "" "This sets the default units of Excellon files.\n" "If it is not detected in the parsed file the value here\n" @@ -5794,22 +5795,22 @@ msgid "" "therefore this parameter will be used." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4516 +#: flatcamGUI/FlatCAMGUI.py:4512 msgid "" "This sets the units of Excellon files.\n" "Some Excellon files don't have an header\n" "therefore this parameter will be used." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4532 +#: flatcamGUI/FlatCAMGUI.py:4520 msgid "Excellon Optimization:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4539 +#: flatcamGUI/FlatCAMGUI.py:4523 msgid "Algorithm: " msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4542 flatcamGUI/FlatCAMGUI.py:4555 +#: flatcamGUI/FlatCAMGUI.py:4525 flatcamGUI/FlatCAMGUI.py:4539 msgid "" "This sets the optimization type for the Excellon drill path.\n" "If MH is checked then Google OR-Tools algorithm with MetaHeuristic\n" @@ -5821,11 +5822,11 @@ msgid "" "Travelling Salesman algorithm for path optimization." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4567 +#: flatcamGUI/FlatCAMGUI.py:4550 msgid "Optimization Time: " msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4570 +#: flatcamGUI/FlatCAMGUI.py:4553 msgid "" "When OR-Tools Metaheuristic (MH) is enabled there is a\n" "maximum threshold for how much time is spent doing the\n" @@ -5833,88 +5834,88 @@ msgid "" "In seconds." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4612 +#: flatcamGUI/FlatCAMGUI.py:4596 msgid "Excellon Options" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4615 flatcamGUI/ObjectUI.py:584 +#: flatcamGUI/FlatCAMGUI.py:4599 flatcamGUI/ObjectUI.py:584 msgid "Create CNC Job" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4617 +#: flatcamGUI/FlatCAMGUI.py:4601 msgid "" "Parameters used to create a CNC Job object\n" "for this drill object." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4625 flatcamGUI/FlatCAMGUI.py:5217 -#: flatcamGUI/FlatCAMGUI.py:6321 flatcamGUI/ObjectUI.py:595 +#: flatcamGUI/FlatCAMGUI.py:4609 flatcamGUI/FlatCAMGUI.py:5196 +#: flatcamGUI/FlatCAMGUI.py:6300 flatcamGUI/ObjectUI.py:595 #: flatcamGUI/ObjectUI.py:1062 flatcamTools/ToolCalculators.py:108 msgid "Cut Z:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4627 flatcamGUI/ObjectUI.py:597 +#: flatcamGUI/FlatCAMGUI.py:4611 flatcamGUI/ObjectUI.py:597 msgid "" "Drill depth (negative)\n" "below the copper surface." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4634 flatcamGUI/FlatCAMGUI.py:5250 +#: flatcamGUI/FlatCAMGUI.py:4618 flatcamGUI/FlatCAMGUI.py:5229 #: flatcamGUI/ObjectUI.py:605 flatcamGUI/ObjectUI.py:1098 msgid "Travel Z:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4636 flatcamGUI/ObjectUI.py:607 +#: flatcamGUI/FlatCAMGUI.py:4620 flatcamGUI/ObjectUI.py:607 msgid "" "Tool height when travelling\n" "across the XY plane." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4644 flatcamGUI/FlatCAMGUI.py:5260 +#: flatcamGUI/FlatCAMGUI.py:4628 flatcamGUI/FlatCAMGUI.py:5239 msgid "Tool change:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4646 flatcamGUI/FlatCAMGUI.py:5262 +#: flatcamGUI/FlatCAMGUI.py:4630 flatcamGUI/FlatCAMGUI.py:5241 #: flatcamGUI/ObjectUI.py:617 msgid "" "Include tool-change sequence\n" "in G-Code (Pause for tool change)." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4653 flatcamGUI/FlatCAMGUI.py:5270 +#: flatcamGUI/FlatCAMGUI.py:4637 flatcamGUI/FlatCAMGUI.py:5249 msgid "Toolchange Z:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4655 flatcamGUI/FlatCAMGUI.py:5272 +#: flatcamGUI/FlatCAMGUI.py:4639 flatcamGUI/FlatCAMGUI.py:5251 msgid "Toolchange Z position." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4661 +#: flatcamGUI/FlatCAMGUI.py:4645 msgid "Feedrate:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4663 +#: flatcamGUI/FlatCAMGUI.py:4647 msgid "" "Tool speed while drilling\n" "(in units per minute)." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4671 +#: flatcamGUI/FlatCAMGUI.py:4655 msgid "Spindle Speed:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4673 flatcamGUI/FlatCAMGUI.py:5302 +#: flatcamGUI/FlatCAMGUI.py:4657 flatcamGUI/FlatCAMGUI.py:5281 #: flatcamGUI/ObjectUI.py:684 msgid "" "Speed of the spindle\n" "in RPM (optional)" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4681 flatcamGUI/FlatCAMGUI.py:5310 +#: flatcamGUI/FlatCAMGUI.py:4665 flatcamGUI/FlatCAMGUI.py:5289 msgid "Spindle dir.:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4683 flatcamGUI/FlatCAMGUI.py:5312 +#: flatcamGUI/FlatCAMGUI.py:4667 flatcamGUI/FlatCAMGUI.py:5291 msgid "" "This sets the direction that the spindle is rotating.\n" "It can be either:\n" @@ -5922,43 +5923,43 @@ msgid "" "- CCW = counter clockwise" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4695 flatcamGUI/FlatCAMGUI.py:5324 +#: flatcamGUI/FlatCAMGUI.py:4679 flatcamGUI/FlatCAMGUI.py:5303 #: flatcamGUI/ObjectUI.py:692 flatcamGUI/ObjectUI.py:1224 msgid "Dwell:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4697 flatcamGUI/FlatCAMGUI.py:5326 +#: flatcamGUI/FlatCAMGUI.py:4681 flatcamGUI/FlatCAMGUI.py:5305 #: flatcamGUI/ObjectUI.py:694 flatcamGUI/ObjectUI.py:1227 msgid "" "Pause to allow the spindle to reach its\n" "speed before cutting." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4700 flatcamGUI/FlatCAMGUI.py:5329 +#: flatcamGUI/FlatCAMGUI.py:4684 flatcamGUI/FlatCAMGUI.py:5308 msgid "Duration:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4702 flatcamGUI/FlatCAMGUI.py:5331 +#: flatcamGUI/FlatCAMGUI.py:4686 flatcamGUI/FlatCAMGUI.py:5310 #: flatcamGUI/ObjectUI.py:699 flatcamGUI/ObjectUI.py:1234 msgid "Number of milliseconds for spindle to dwell." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4714 flatcamGUI/FlatCAMGUI.py:5341 +#: flatcamGUI/FlatCAMGUI.py:4698 flatcamGUI/FlatCAMGUI.py:5320 #: flatcamGUI/ObjectUI.py:707 msgid "Postprocessor:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4716 +#: flatcamGUI/FlatCAMGUI.py:4700 msgid "" "The postprocessor file that dictates\n" "gcode output." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4725 +#: flatcamGUI/FlatCAMGUI.py:4709 msgid "Gcode: " msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4727 +#: flatcamGUI/FlatCAMGUI.py:4711 msgid "" "Choose what to use for GCode generation:\n" "'Drills', 'Slots' or 'Both'.\n" @@ -5966,93 +5967,93 @@ msgid "" "converted to drills." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4743 flatcamGUI/ObjectUI.py:772 +#: flatcamGUI/FlatCAMGUI.py:4727 flatcamGUI/ObjectUI.py:772 msgid "Mill Holes" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4745 flatcamGUI/ObjectUI.py:774 +#: flatcamGUI/FlatCAMGUI.py:4729 flatcamGUI/ObjectUI.py:774 msgid "Create Geometry for milling holes." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4751 +#: flatcamGUI/FlatCAMGUI.py:4733 msgid "Drill Tool dia:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4758 +#: flatcamGUI/FlatCAMGUI.py:4740 msgid "Slot Tool dia:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4760 +#: flatcamGUI/FlatCAMGUI.py:4742 msgid "" "Diameter of the cutting tool\n" "when milling slots." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4772 +#: flatcamGUI/FlatCAMGUI.py:4754 msgid "Defaults" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4785 +#: flatcamGUI/FlatCAMGUI.py:4767 msgid "Excellon Adv. Options" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4791 flatcamGUI/FlatCAMGUI.py:5364 +#: flatcamGUI/FlatCAMGUI.py:4773 flatcamGUI/FlatCAMGUI.py:5343 msgid "Advanced Options:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4793 +#: flatcamGUI/FlatCAMGUI.py:4775 msgid "" "Parameters used to create a CNC Job object\n" "for this drill object that are shown when App Level is Advanced." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4801 +#: flatcamGUI/FlatCAMGUI.py:4783 msgid "Offset Z:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4803 flatcamGUI/ObjectUI.py:574 +#: flatcamGUI/FlatCAMGUI.py:4785 flatcamGUI/ObjectUI.py:574 msgid "" "Some drill bits (the larger ones) need to drill deeper\n" "to create the desired exit hole diameter due of the tip shape.\n" "The value here can compensate the Cut Z parameter." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4810 flatcamGUI/FlatCAMGUI.py:5375 +#: flatcamGUI/FlatCAMGUI.py:4792 flatcamGUI/FlatCAMGUI.py:5354 msgid "Toolchange X,Y:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4812 flatcamGUI/FlatCAMGUI.py:5377 +#: flatcamGUI/FlatCAMGUI.py:4794 flatcamGUI/FlatCAMGUI.py:5356 msgid "Toolchange X,Y position." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4818 flatcamGUI/FlatCAMGUI.py:5384 +#: flatcamGUI/FlatCAMGUI.py:4800 flatcamGUI/FlatCAMGUI.py:5363 #: flatcamGUI/ObjectUI.py:634 msgid "Start move Z:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4820 +#: flatcamGUI/FlatCAMGUI.py:4802 msgid "" "Height of the tool just after start.\n" "Delete the value if you don't need this feature." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4827 flatcamGUI/FlatCAMGUI.py:5394 +#: flatcamGUI/FlatCAMGUI.py:4809 flatcamGUI/FlatCAMGUI.py:5373 #: flatcamGUI/ObjectUI.py:644 flatcamGUI/ObjectUI.py:1144 msgid "End move Z:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4829 flatcamGUI/FlatCAMGUI.py:5396 +#: flatcamGUI/FlatCAMGUI.py:4811 flatcamGUI/FlatCAMGUI.py:5375 msgid "" "Height of the tool after\n" "the last move at the end of the job." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4836 flatcamGUI/FlatCAMGUI.py:5404 +#: flatcamGUI/FlatCAMGUI.py:4818 flatcamGUI/FlatCAMGUI.py:5383 #: flatcamGUI/ObjectUI.py:665 msgid "Feedrate Rapids:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4838 flatcamGUI/ObjectUI.py:667 +#: flatcamGUI/FlatCAMGUI.py:4820 flatcamGUI/ObjectUI.py:667 msgid "" "Tool speed while drilling\n" "(in units per minute).\n" @@ -6061,33 +6062,33 @@ msgid "" "ignore for any other cases." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4849 flatcamGUI/FlatCAMGUI.py:5428 +#: flatcamGUI/FlatCAMGUI.py:4831 flatcamGUI/FlatCAMGUI.py:5407 #: flatcamGUI/ObjectUI.py:718 flatcamGUI/ObjectUI.py:1256 msgid "Probe Z depth:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4851 flatcamGUI/FlatCAMGUI.py:5430 +#: flatcamGUI/FlatCAMGUI.py:4833 flatcamGUI/FlatCAMGUI.py:5409 #: flatcamGUI/ObjectUI.py:720 flatcamGUI/ObjectUI.py:1259 msgid "" "The maximum depth that the probe is allowed\n" "to probe. Negative value, in current units." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4859 flatcamGUI/FlatCAMGUI.py:5438 +#: flatcamGUI/FlatCAMGUI.py:4841 flatcamGUI/FlatCAMGUI.py:5417 #: flatcamGUI/ObjectUI.py:730 flatcamGUI/ObjectUI.py:1270 msgid "Feedrate Probe:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4861 flatcamGUI/FlatCAMGUI.py:5440 +#: flatcamGUI/FlatCAMGUI.py:4843 flatcamGUI/FlatCAMGUI.py:5419 #: flatcamGUI/ObjectUI.py:732 flatcamGUI/ObjectUI.py:1273 msgid "The feedrate used while the probe is probing." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4867 flatcamGUI/FlatCAMGUI.py:5447 +#: flatcamGUI/FlatCAMGUI.py:4849 flatcamGUI/FlatCAMGUI.py:5426 msgid "Fast Plunge:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4869 flatcamGUI/FlatCAMGUI.py:5449 +#: flatcamGUI/FlatCAMGUI.py:4851 flatcamGUI/FlatCAMGUI.py:5428 msgid "" "By checking this, the vertical move from\n" "Z_Toolchange to Z_move is done with G0,\n" @@ -6095,11 +6096,11 @@ msgid "" "WARNING: the move is done at Toolchange X,Y coords." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4878 +#: flatcamGUI/FlatCAMGUI.py:4860 msgid "Fast Retract:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4880 +#: flatcamGUI/FlatCAMGUI.py:4862 msgid "" "Exit hole strategy.\n" " - When uncheked, while exiting the drilled hole the drill bit\n" @@ -6109,21 +6110,21 @@ msgid "" "(travel height) is done as fast as possible (G0) in one move." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4899 +#: flatcamGUI/FlatCAMGUI.py:4881 msgid "Excellon Export" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4904 +#: flatcamGUI/FlatCAMGUI.py:4886 msgid "" "The parameters set here are used in the file exported\n" "when using the File -> Export -> Export Excellon menu entry." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4915 flatcamGUI/FlatCAMGUI.py:4921 +#: flatcamGUI/FlatCAMGUI.py:4897 flatcamGUI/FlatCAMGUI.py:4903 msgid "The units used in the Excellon file." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4929 +#: flatcamGUI/FlatCAMGUI.py:4911 msgid "" "The NC drill files, usually named Excellon files\n" "are files that can be found in different formats.\n" @@ -6131,11 +6132,11 @@ msgid "" "coordinates are not using period." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4965 +#: flatcamGUI/FlatCAMGUI.py:4947 msgid "Format:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:4967 flatcamGUI/FlatCAMGUI.py:4977 +#: flatcamGUI/FlatCAMGUI.py:4949 flatcamGUI/FlatCAMGUI.py:4959 msgid "" "Select the kind of coordinates format used.\n" "Coordinates can be saved with decimal point or without.\n" @@ -6145,7 +6146,7 @@ msgid "" "or TZ = trailing zeros are kept." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5001 +#: flatcamGUI/FlatCAMGUI.py:4983 msgid "" "This sets the default type of Excellon zeros.\n" "If LZ then Leading Zeros are kept and\n" @@ -6154,11 +6155,11 @@ msgid "" "and Leading Zeros are removed." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5031 +#: flatcamGUI/FlatCAMGUI.py:5013 msgid "A list of Excellon Editor parameters." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5041 +#: flatcamGUI/FlatCAMGUI.py:5023 msgid "" "Set the number of selected Excellon geometry\n" "items above which the utility geometry\n" @@ -6167,94 +6168,88 @@ msgid "" "large number of geometric elements." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5053 +#: flatcamGUI/FlatCAMGUI.py:5035 msgid "New Tool Dia:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5076 +#: flatcamGUI/FlatCAMGUI.py:5058 msgid "Linear Drill Array:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5080 +#: flatcamGUI/FlatCAMGUI.py:5062 msgid "Linear Dir.:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5116 +#: flatcamGUI/FlatCAMGUI.py:5098 msgid "Circular Drill Array:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5120 +#: flatcamGUI/FlatCAMGUI.py:5102 msgid "Circular Dir.:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5122 +#: flatcamGUI/FlatCAMGUI.py:5104 msgid "" "Direction for circular array.\n" "Can be CW = clockwise or CCW = counter clockwise." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5133 +#: flatcamGUI/FlatCAMGUI.py:5115 msgid "Circ. Angle:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5150 +#: flatcamGUI/FlatCAMGUI.py:5132 msgid "Geometry General" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5168 +#: flatcamGUI/FlatCAMGUI.py:5151 msgid "" "The number of circle steps for Geometry \n" "circle and arc shapes linear approximation." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5176 -msgid "Tools" +#: flatcamGUI/FlatCAMGUI.py:5159 +msgid "Tools:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5183 -msgid "Tool dia: " +#: flatcamGUI/FlatCAMGUI.py:5165 flatcamGUI/FlatCAMGUI.py:5774 +msgid "Diameters of the cutting tools, separated by ','" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5185 -msgid "" -"The diameter of the cutting\n" -"tool.." -msgstr "" - -#: flatcamGUI/FlatCAMGUI.py:5200 +#: flatcamGUI/FlatCAMGUI.py:5179 msgid "Geometry Options" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5205 +#: flatcamGUI/FlatCAMGUI.py:5184 msgid "Create CNC Job:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5207 +#: flatcamGUI/FlatCAMGUI.py:5186 msgid "" "Create a CNC Job object\n" "tracing the contours of this\n" "Geometry object." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5219 flatcamGUI/ObjectUI.py:1065 +#: flatcamGUI/FlatCAMGUI.py:5198 flatcamGUI/ObjectUI.py:1065 msgid "" "Cutting depth (negative)\n" "below the copper surface." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5227 +#: flatcamGUI/FlatCAMGUI.py:5206 msgid "Multidepth" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5229 +#: flatcamGUI/FlatCAMGUI.py:5208 msgid "Multidepth usage: True or False." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5234 +#: flatcamGUI/FlatCAMGUI.py:5213 msgid "Depth/Pass:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5236 +#: flatcamGUI/FlatCAMGUI.py:5215 msgid "" "The depth to cut on each pass,\n" "when multidepth is enabled.\n" @@ -6263,61 +6258,61 @@ msgid "" "which has negative value." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5252 flatcamGUI/ObjectUI.py:1101 +#: flatcamGUI/FlatCAMGUI.py:5231 flatcamGUI/ObjectUI.py:1101 msgid "" "Height of the tool when\n" "moving without cutting." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5279 flatcamGUI/ObjectUI.py:1156 +#: flatcamGUI/FlatCAMGUI.py:5258 flatcamGUI/ObjectUI.py:1156 msgid "Feed Rate X-Y:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5281 flatcamGUI/ObjectUI.py:1159 +#: flatcamGUI/FlatCAMGUI.py:5260 flatcamGUI/ObjectUI.py:1159 msgid "" "Cutting speed in the XY\n" "plane in units per minute" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5289 +#: flatcamGUI/FlatCAMGUI.py:5268 msgid "Feed Rate Z:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5291 +#: flatcamGUI/FlatCAMGUI.py:5270 msgid "" "Cutting speed in the XY\n" "plane in units per minute.\n" "It is called also Plunge." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5300 flatcamGUI/ObjectUI.py:682 +#: flatcamGUI/FlatCAMGUI.py:5279 flatcamGUI/ObjectUI.py:682 #: flatcamGUI/ObjectUI.py:1211 msgid "Spindle speed:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5343 +#: flatcamGUI/FlatCAMGUI.py:5322 msgid "" "The postprocessor file that dictates\n" "Machine Code output." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5359 +#: flatcamGUI/FlatCAMGUI.py:5338 msgid "Geometry Adv. Options" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5366 +#: flatcamGUI/FlatCAMGUI.py:5345 msgid "" "Parameters to create a CNC Job object\n" "tracing the contours of a Geometry object." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5386 +#: flatcamGUI/FlatCAMGUI.py:5365 msgid "" "Height of the tool just after starting the work.\n" "Delete the value if you don't need this feature." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5406 +#: flatcamGUI/FlatCAMGUI.py:5385 msgid "" "Cutting speed in the XY plane\n" "(in units per minute).\n" @@ -6326,11 +6321,11 @@ msgid "" "ignore for any other cases." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5418 +#: flatcamGUI/FlatCAMGUI.py:5397 msgid "Re-cut 1st pt." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5420 flatcamGUI/ObjectUI.py:1202 +#: flatcamGUI/FlatCAMGUI.py:5399 flatcamGUI/ObjectUI.py:1202 msgid "" "In order to remove possible\n" "copper leftovers where first cut\n" @@ -6338,37 +6333,37 @@ msgid "" "extended cut over the first cut section." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5459 +#: flatcamGUI/FlatCAMGUI.py:5438 msgid "Seg. X size:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5461 +#: flatcamGUI/FlatCAMGUI.py:5440 msgid "" "The size of the trace segment on the X axis.\n" "Useful for auto-leveling.\n" "A value of 0 means no segmentation on the X axis." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5470 +#: flatcamGUI/FlatCAMGUI.py:5449 msgid "Seg. Y size:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5472 +#: flatcamGUI/FlatCAMGUI.py:5451 msgid "" "The size of the trace segment on the Y axis.\n" "Useful for auto-leveling.\n" "A value of 0 means no segmentation on the Y axis." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5488 +#: flatcamGUI/FlatCAMGUI.py:5467 msgid "Geometry Editor" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5493 +#: flatcamGUI/FlatCAMGUI.py:5472 msgid "A list of Geometry Editor parameters." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5503 +#: flatcamGUI/FlatCAMGUI.py:5482 msgid "" "Set the number of selected geometry\n" "items above which the utility geometry\n" @@ -6377,20 +6372,20 @@ msgid "" "large number of geometric elements." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5522 +#: flatcamGUI/FlatCAMGUI.py:5501 msgid "CNC Job General" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5535 flatcamGUI/ObjectUI.py:544 +#: flatcamGUI/FlatCAMGUI.py:5514 flatcamGUI/ObjectUI.py:544 #: flatcamGUI/ObjectUI.py:877 flatcamGUI/ObjectUI.py:1447 msgid "Plot Object" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5542 +#: flatcamGUI/FlatCAMGUI.py:5521 msgid "Plot kind:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5544 flatcamGUI/ObjectUI.py:1356 +#: flatcamGUI/FlatCAMGUI.py:5523 flatcamGUI/ObjectUI.py:1356 msgid "" "This selects the kind of geometries on the canvas to plot.\n" "Those can be either of type 'Travel' which means the moves\n" @@ -6398,110 +6393,110 @@ msgid "" "which means the moves that cut into the material." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5561 +#: flatcamGUI/FlatCAMGUI.py:5540 msgid "Display Annotation:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5563 flatcamGUI/ObjectUI.py:1372 +#: flatcamGUI/FlatCAMGUI.py:5542 flatcamGUI/ObjectUI.py:1372 msgid "" "This selects if to display text annotation on the plot.\n" "When checked it will display numbers in order for each end\n" "of a travel line." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5575 +#: flatcamGUI/FlatCAMGUI.py:5554 msgid "Annotation Size:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5577 +#: flatcamGUI/FlatCAMGUI.py:5556 msgid "The font size of the annotation text. In pixels." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5585 +#: flatcamGUI/FlatCAMGUI.py:5564 msgid "Annotation Color:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5587 +#: flatcamGUI/FlatCAMGUI.py:5566 msgid "Set the font color for the annotation texts." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5610 +#: flatcamGUI/FlatCAMGUI.py:5589 msgid "" "The number of circle steps for GCode \n" "circle and arc shapes linear approximation." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5620 +#: flatcamGUI/FlatCAMGUI.py:5599 msgid "" "Diameter of the tool to be\n" "rendered in the plot." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5628 +#: flatcamGUI/FlatCAMGUI.py:5607 msgid "Coords dec.:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5630 +#: flatcamGUI/FlatCAMGUI.py:5609 msgid "" "The number of decimals to be used for \n" "the X, Y, Z coordinates in CNC code (GCODE, etc.)" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5638 +#: flatcamGUI/FlatCAMGUI.py:5617 msgid "Feedrate dec.:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5640 +#: flatcamGUI/FlatCAMGUI.py:5619 msgid "" "The number of decimals to be used for \n" "the Feedrate parameter in CNC code (GCODE, etc.)" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5655 +#: flatcamGUI/FlatCAMGUI.py:5634 msgid "CNC Job Options" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5658 flatcamGUI/FlatCAMGUI.py:5699 +#: flatcamGUI/FlatCAMGUI.py:5637 flatcamGUI/FlatCAMGUI.py:5678 msgid "Export G-Code:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5660 flatcamGUI/FlatCAMGUI.py:5701 +#: flatcamGUI/FlatCAMGUI.py:5639 flatcamGUI/FlatCAMGUI.py:5680 #: flatcamGUI/ObjectUI.py:1483 msgid "" "Export and save G-Code to\n" "make this object to a file." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5666 +#: flatcamGUI/FlatCAMGUI.py:5645 msgid "Prepend to G-Code:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5668 +#: flatcamGUI/FlatCAMGUI.py:5647 msgid "" "Type here any G-Code commands you would\n" "like to add at the beginning of the G-Code file." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5677 +#: flatcamGUI/FlatCAMGUI.py:5656 msgid "Append to G-Code:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5679 flatcamGUI/ObjectUI.py:1505 +#: flatcamGUI/FlatCAMGUI.py:5658 flatcamGUI/ObjectUI.py:1505 msgid "" "Type here any G-Code commands you would\n" "like to append to the generated file.\n" "I.e.: M2 (End of program)" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5696 +#: flatcamGUI/FlatCAMGUI.py:5675 msgid "CNC Job Adv. Options" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5707 flatcamGUI/ObjectUI.py:1523 +#: flatcamGUI/FlatCAMGUI.py:5686 flatcamGUI/ObjectUI.py:1523 msgid "Toolchange G-Code:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5709 +#: flatcamGUI/FlatCAMGUI.py:5688 msgid "" "Type here any G-Code commands you would\n" "like to be executed when Toolchange event is encountered.\n" @@ -6509,88 +6504,84 @@ msgid "" "or a Toolchange Macro." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5723 flatcamGUI/ObjectUI.py:1545 +#: flatcamGUI/FlatCAMGUI.py:5702 flatcamGUI/ObjectUI.py:1545 msgid "Use Toolchange Macro" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5725 flatcamGUI/ObjectUI.py:1548 +#: flatcamGUI/FlatCAMGUI.py:5704 flatcamGUI/ObjectUI.py:1548 msgid "" "Check this box if you want to use\n" "a Custom Toolchange GCode (macro)." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5737 flatcamGUI/ObjectUI.py:1557 +#: flatcamGUI/FlatCAMGUI.py:5716 flatcamGUI/ObjectUI.py:1557 msgid "" "A list of the FlatCAM variables that can be used\n" "in the Toolchange event.\n" "They have to be surrounded by the '%' symbol" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5744 flatcamGUI/ObjectUI.py:1564 +#: flatcamGUI/FlatCAMGUI.py:5723 flatcamGUI/ObjectUI.py:1564 msgid "Parameters" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5747 flatcamGUI/ObjectUI.py:1567 +#: flatcamGUI/FlatCAMGUI.py:5726 flatcamGUI/ObjectUI.py:1567 msgid "FlatCAM CNC parameters" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5748 flatcamGUI/ObjectUI.py:1568 +#: flatcamGUI/FlatCAMGUI.py:5727 flatcamGUI/ObjectUI.py:1568 msgid "tool = tool number" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5749 flatcamGUI/ObjectUI.py:1569 +#: flatcamGUI/FlatCAMGUI.py:5728 flatcamGUI/ObjectUI.py:1569 msgid "tooldia = tool diameter" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5750 flatcamGUI/ObjectUI.py:1570 +#: flatcamGUI/FlatCAMGUI.py:5729 flatcamGUI/ObjectUI.py:1570 msgid "t_drills = for Excellon, total number of drills" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5751 flatcamGUI/ObjectUI.py:1571 +#: flatcamGUI/FlatCAMGUI.py:5730 flatcamGUI/ObjectUI.py:1571 msgid "x_toolchange = X coord for Toolchange" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5752 flatcamGUI/ObjectUI.py:1572 +#: flatcamGUI/FlatCAMGUI.py:5731 flatcamGUI/ObjectUI.py:1572 msgid "y_toolchange = Y coord for Toolchange" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5753 flatcamGUI/ObjectUI.py:1573 +#: flatcamGUI/FlatCAMGUI.py:5732 flatcamGUI/ObjectUI.py:1573 msgid "z_toolchange = Z coord for Toolchange" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5754 +#: flatcamGUI/FlatCAMGUI.py:5733 msgid "z_cut = Z depth for the cut" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5755 +#: flatcamGUI/FlatCAMGUI.py:5734 msgid "z_move = Z height for travel" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5756 flatcamGUI/ObjectUI.py:1576 +#: flatcamGUI/FlatCAMGUI.py:5735 flatcamGUI/ObjectUI.py:1576 msgid "z_depthpercut = the step value for multidepth cut" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5757 flatcamGUI/ObjectUI.py:1577 +#: flatcamGUI/FlatCAMGUI.py:5736 flatcamGUI/ObjectUI.py:1577 msgid "spindlesspeed = the value for the spindle speed" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5759 flatcamGUI/ObjectUI.py:1578 +#: flatcamGUI/FlatCAMGUI.py:5738 flatcamGUI/ObjectUI.py:1578 msgid "dwelltime = time to dwell to allow the spindle to reach it's set RPM" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5780 +#: flatcamGUI/FlatCAMGUI.py:5759 msgid "NCC Tool Options" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5793 flatcamGUI/FlatCAMGUI.py:6523 +#: flatcamGUI/FlatCAMGUI.py:5772 flatcamGUI/FlatCAMGUI.py:6502 msgid "Tools dia:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5795 -msgid "Diameters of the cutting tools, separated by ','" -msgstr "" - -#: flatcamGUI/FlatCAMGUI.py:5803 flatcamTools/ToolNonCopperClear.py:167 +#: flatcamGUI/FlatCAMGUI.py:5782 flatcamTools/ToolNonCopperClear.py:167 #, python-format msgid "" "How much (fraction) of the tool width to overlap each tool pass.\n" @@ -6605,11 +6596,11 @@ msgid "" "due of too many paths." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5819 flatcamTools/ToolNonCopperClear.py:183 +#: flatcamGUI/FlatCAMGUI.py:5798 flatcamTools/ToolNonCopperClear.py:183 msgid "Bounding box margin." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5828 flatcamTools/ToolNonCopperClear.py:192 +#: flatcamGUI/FlatCAMGUI.py:5807 flatcamTools/ToolNonCopperClear.py:192 #: flatcamTools/ToolPaint.py:190 msgid "" "Algorithm for non-copper clearing:
Standard: Fixed step inwards." @@ -6617,12 +6608,12 @@ msgid "" "lines." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5860 flatcamTools/ToolNonCopperClear.py:224 +#: flatcamGUI/FlatCAMGUI.py:5839 flatcamTools/ToolNonCopperClear.py:224 #: flatcamTools/ToolPaint.py:222 msgid "Rest M.:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5862 +#: flatcamGUI/FlatCAMGUI.py:5841 msgid "" "If checked, use 'rest machining'.\n" "Basically it will clear copper outside PCB features,\n" @@ -6632,39 +6623,39 @@ msgid "" "If not checked, use the standard algorithm." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5881 +#: flatcamGUI/FlatCAMGUI.py:5860 msgid "Cutout Tool Options" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5886 flatcamGUI/ObjectUI.py:402 +#: flatcamGUI/FlatCAMGUI.py:5865 flatcamGUI/ObjectUI.py:402 msgid "" "Create toolpaths to cut around\n" "the PCB and separate it from\n" "the original board." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5905 +#: flatcamGUI/FlatCAMGUI.py:5884 msgid "" "Distance from objects at which\n" "to draw the cutout." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5912 flatcamTools/ToolCutOut.py:96 +#: flatcamGUI/FlatCAMGUI.py:5891 flatcamTools/ToolCutOut.py:96 msgid "Gap size:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5914 +#: flatcamGUI/FlatCAMGUI.py:5893 msgid "" "Size of the gaps in the toolpath\n" "that will remain to hold the\n" "board in place." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5922 flatcamTools/ToolCutOut.py:134 +#: flatcamGUI/FlatCAMGUI.py:5901 flatcamTools/ToolCutOut.py:134 msgid "Gaps:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5924 +#: flatcamGUI/FlatCAMGUI.py:5903 msgid "" "Number of bridge gaps used for the cutout.\n" "There can be maximum 8 bridges/gaps.\n" @@ -6677,57 +6668,57 @@ msgid "" "- 8 - 2*left + 2*right +2*top + 2*bottom" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5945 flatcamTools/ToolCutOut.py:115 +#: flatcamGUI/FlatCAMGUI.py:5924 flatcamTools/ToolCutOut.py:115 msgid "Convex Sh.:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5947 +#: flatcamGUI/FlatCAMGUI.py:5926 msgid "Create a convex shape surrounding the entire PCB." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5960 +#: flatcamGUI/FlatCAMGUI.py:5939 msgid "2Sided Tool Options" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5965 +#: flatcamGUI/FlatCAMGUI.py:5944 msgid "" "A tool to help in creating a double sided\n" "PCB using alignment holes." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5975 flatcamTools/ToolDblSided.py:235 +#: flatcamGUI/FlatCAMGUI.py:5954 flatcamTools/ToolDblSided.py:235 msgid "Drill diam.:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5977 flatcamTools/ToolDblSided.py:226 +#: flatcamGUI/FlatCAMGUI.py:5956 flatcamTools/ToolDblSided.py:226 #: flatcamTools/ToolDblSided.py:237 msgid "Diameter of the drill for the alignment holes." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5986 flatcamTools/ToolDblSided.py:120 +#: flatcamGUI/FlatCAMGUI.py:5965 flatcamTools/ToolDblSided.py:120 msgid "Mirror Axis:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5988 flatcamTools/ToolDblSided.py:122 +#: flatcamGUI/FlatCAMGUI.py:5967 flatcamTools/ToolDblSided.py:122 msgid "Mirror vertically (X) or horizontally (Y)." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:5999 flatcamTools/ToolDblSided.py:133 +#: flatcamGUI/FlatCAMGUI.py:5978 flatcamTools/ToolDblSided.py:133 msgid "Axis Ref:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6001 +#: flatcamGUI/FlatCAMGUI.py:5980 msgid "" "The axis should pass through a point or cut\n" " a specified box (in a Geometry object) in \n" "the middle." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6017 +#: flatcamGUI/FlatCAMGUI.py:5996 msgid "Paint Tool Options" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6024 flatcamGUI/ObjectUI.py:1305 +#: flatcamGUI/FlatCAMGUI.py:6003 flatcamGUI/ObjectUI.py:1305 msgid "" "Creates tool paths to cover the\n" "whole area of a polygon (remove\n" @@ -6735,36 +6726,36 @@ msgid "" "to click on the desired polygon." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6048 +#: flatcamGUI/FlatCAMGUI.py:6027 msgid "" "How much (fraction) of the tool\n" "width to overlap each tool pass." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6102 flatcamTools/ToolPaint.py:237 +#: flatcamGUI/FlatCAMGUI.py:6081 flatcamTools/ToolPaint.py:237 msgid "Selection:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6104 +#: flatcamGUI/FlatCAMGUI.py:6083 msgid "How to select the polygons to paint." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6122 +#: flatcamGUI/FlatCAMGUI.py:6101 msgid "Film Tool Options" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6127 +#: flatcamGUI/FlatCAMGUI.py:6106 msgid "" "Create a PCB film from a Gerber or Geometry\n" "FlatCAM object.\n" "The file is saved in SVG format." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6138 flatcamTools/ToolFilm.py:116 +#: flatcamGUI/FlatCAMGUI.py:6117 flatcamTools/ToolFilm.py:116 msgid "Film Type:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6140 flatcamTools/ToolFilm.py:118 +#: flatcamGUI/FlatCAMGUI.py:6119 flatcamTools/ToolFilm.py:118 msgid "" "Generate a Positive black film or a Negative film.\n" "Positive means that it will print the features\n" @@ -6774,11 +6765,11 @@ msgid "" "The Film format is SVG." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6151 flatcamTools/ToolFilm.py:130 +#: flatcamGUI/FlatCAMGUI.py:6130 flatcamTools/ToolFilm.py:130 msgid "Border:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6153 flatcamTools/ToolFilm.py:132 +#: flatcamGUI/FlatCAMGUI.py:6132 flatcamTools/ToolFilm.py:132 msgid "" "Specify a border around the object.\n" "Only for negative film.\n" @@ -6790,11 +6781,11 @@ msgid "" "surroundings if not for this border." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6166 flatcamTools/ToolFilm.py:144 +#: flatcamGUI/FlatCAMGUI.py:6145 flatcamTools/ToolFilm.py:144 msgid "Scale Stroke:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6168 flatcamTools/ToolFilm.py:146 +#: flatcamGUI/FlatCAMGUI.py:6147 flatcamTools/ToolFilm.py:146 msgid "" "Scale the line stroke thickness of each feature in the SVG file.\n" "It means that the line that envelope each SVG feature will be thicker or " @@ -6802,69 +6793,69 @@ msgid "" "therefore the fine features may be more affected by this parameter." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6183 +#: flatcamGUI/FlatCAMGUI.py:6162 msgid "Panelize Tool Options" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6188 +#: flatcamGUI/FlatCAMGUI.py:6167 msgid "" "Create an object that contains an array of (x, y) elements,\n" "each element is a copy of the source object spaced\n" "at a X distance, Y distance of each other." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6199 flatcamTools/ToolPanelize.py:147 +#: flatcamGUI/FlatCAMGUI.py:6178 flatcamTools/ToolPanelize.py:147 msgid "Spacing cols:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6201 flatcamTools/ToolPanelize.py:149 +#: flatcamGUI/FlatCAMGUI.py:6180 flatcamTools/ToolPanelize.py:149 msgid "" "Spacing between columns of the desired panel.\n" "In current units." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6209 flatcamTools/ToolPanelize.py:156 +#: flatcamGUI/FlatCAMGUI.py:6188 flatcamTools/ToolPanelize.py:156 msgid "Spacing rows:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6211 flatcamTools/ToolPanelize.py:158 +#: flatcamGUI/FlatCAMGUI.py:6190 flatcamTools/ToolPanelize.py:158 msgid "" "Spacing between rows of the desired panel.\n" "In current units." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6219 flatcamTools/ToolPanelize.py:165 +#: flatcamGUI/FlatCAMGUI.py:6198 flatcamTools/ToolPanelize.py:165 msgid "Columns:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6221 flatcamTools/ToolPanelize.py:167 +#: flatcamGUI/FlatCAMGUI.py:6200 flatcamTools/ToolPanelize.py:167 msgid "Number of columns of the desired panel" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6228 flatcamTools/ToolPanelize.py:173 +#: flatcamGUI/FlatCAMGUI.py:6207 flatcamTools/ToolPanelize.py:173 msgid "Rows:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6230 flatcamTools/ToolPanelize.py:175 +#: flatcamGUI/FlatCAMGUI.py:6209 flatcamTools/ToolPanelize.py:175 msgid "Number of rows of the desired panel" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6238 +#: flatcamGUI/FlatCAMGUI.py:6217 msgid "Panel Type:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6240 +#: flatcamGUI/FlatCAMGUI.py:6219 msgid "" "Choose the type of object for the panel object:\n" "- Gerber\n" "- Geometry" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6249 +#: flatcamGUI/FlatCAMGUI.py:6228 msgid "Constrain within:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6251 flatcamTools/ToolPanelize.py:195 +#: flatcamGUI/FlatCAMGUI.py:6230 flatcamTools/ToolPanelize.py:195 msgid "" "Area define by DX and DY within to constrain the panel.\n" "DX and DY values are in current units.\n" @@ -6873,171 +6864,171 @@ msgid "" "they fit completely within selected area." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6260 flatcamTools/ToolPanelize.py:204 +#: flatcamGUI/FlatCAMGUI.py:6239 flatcamTools/ToolPanelize.py:204 msgid "Width (DX):" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6262 flatcamTools/ToolPanelize.py:206 +#: flatcamGUI/FlatCAMGUI.py:6241 flatcamTools/ToolPanelize.py:206 msgid "" "The width (DX) within which the panel must fit.\n" "In current units." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6269 flatcamTools/ToolPanelize.py:212 +#: flatcamGUI/FlatCAMGUI.py:6248 flatcamTools/ToolPanelize.py:212 msgid "Height (DY):" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6271 flatcamTools/ToolPanelize.py:214 +#: flatcamGUI/FlatCAMGUI.py:6250 flatcamTools/ToolPanelize.py:214 msgid "" "The height (DY)within which the panel must fit.\n" "In current units." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6285 +#: flatcamGUI/FlatCAMGUI.py:6264 msgid "Calculators Tool Options" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6288 +#: flatcamGUI/FlatCAMGUI.py:6267 msgid "V-Shape Tool Calculator:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6290 +#: flatcamGUI/FlatCAMGUI.py:6269 msgid "" "Calculate the tool diameter for a given V-shape tool,\n" "having the tip diameter, tip angle and\n" "depth-of-cut as parameters." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6301 flatcamTools/ToolCalculators.py:94 +#: flatcamGUI/FlatCAMGUI.py:6280 flatcamTools/ToolCalculators.py:94 msgid "Tip Diameter:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6303 +#: flatcamGUI/FlatCAMGUI.py:6282 msgid "" "This is the tool tip diameter.\n" "It is specified by manufacturer." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6311 +#: flatcamGUI/FlatCAMGUI.py:6290 msgid "Tip angle:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6313 +#: flatcamGUI/FlatCAMGUI.py:6292 msgid "" "This is the angle on the tip of the tool.\n" "It is specified by manufacturer." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6323 +#: flatcamGUI/FlatCAMGUI.py:6302 msgid "" "This is depth to cut into material.\n" "In the CNCJob object it is the CutZ parameter." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6330 +#: flatcamGUI/FlatCAMGUI.py:6309 msgid "ElectroPlating Calculator:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6332 flatcamTools/ToolCalculators.py:152 +#: flatcamGUI/FlatCAMGUI.py:6311 flatcamTools/ToolCalculators.py:152 msgid "" "This calculator is useful for those who plate the via/pad/drill holes,\n" "using a method like grahite ink or calcium hypophosphite ink or palladium " "chloride." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6342 flatcamTools/ToolCalculators.py:161 +#: flatcamGUI/FlatCAMGUI.py:6321 flatcamTools/ToolCalculators.py:161 msgid "Board Length:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6344 flatcamTools/ToolCalculators.py:165 +#: flatcamGUI/FlatCAMGUI.py:6323 flatcamTools/ToolCalculators.py:165 msgid "This is the board length. In centimeters." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6350 flatcamTools/ToolCalculators.py:167 +#: flatcamGUI/FlatCAMGUI.py:6329 flatcamTools/ToolCalculators.py:167 msgid "Board Width:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6352 flatcamTools/ToolCalculators.py:171 +#: flatcamGUI/FlatCAMGUI.py:6331 flatcamTools/ToolCalculators.py:171 msgid "This is the board width.In centimeters." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6357 flatcamTools/ToolCalculators.py:173 +#: flatcamGUI/FlatCAMGUI.py:6336 flatcamTools/ToolCalculators.py:173 msgid "Current Density:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6360 flatcamTools/ToolCalculators.py:177 +#: flatcamGUI/FlatCAMGUI.py:6339 flatcamTools/ToolCalculators.py:177 msgid "" "Current density to pass through the board. \n" "In Amps per Square Feet ASF." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6366 flatcamTools/ToolCalculators.py:181 +#: flatcamGUI/FlatCAMGUI.py:6345 flatcamTools/ToolCalculators.py:181 msgid "Copper Growth:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6369 flatcamTools/ToolCalculators.py:185 +#: flatcamGUI/FlatCAMGUI.py:6348 flatcamTools/ToolCalculators.py:185 msgid "" "How thick the copper growth is intended to be.\n" "In microns." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6382 +#: flatcamGUI/FlatCAMGUI.py:6361 msgid "Transform Tool Options" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6387 +#: flatcamGUI/FlatCAMGUI.py:6366 msgid "" "Various transformations that can be applied\n" "on a FlatCAM object." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6397 +#: flatcamGUI/FlatCAMGUI.py:6376 msgid "Rotate Angle:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6399 +#: flatcamGUI/FlatCAMGUI.py:6378 msgid "Angle for rotation. In degrees." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6406 +#: flatcamGUI/FlatCAMGUI.py:6385 msgid "Skew_X angle:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6408 +#: flatcamGUI/FlatCAMGUI.py:6387 msgid "Angle for Skew/Shear on X axis. In degrees." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6415 +#: flatcamGUI/FlatCAMGUI.py:6394 msgid "Skew_Y angle:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6417 +#: flatcamGUI/FlatCAMGUI.py:6396 msgid "Angle for Skew/Shear on Y axis. In degrees." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6424 +#: flatcamGUI/FlatCAMGUI.py:6403 msgid "Scale_X factor:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6426 +#: flatcamGUI/FlatCAMGUI.py:6405 msgid "Factor for scaling on X axis." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6433 +#: flatcamGUI/FlatCAMGUI.py:6412 msgid "Scale_Y factor:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6435 +#: flatcamGUI/FlatCAMGUI.py:6414 msgid "Factor for scaling on Y axis." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6443 +#: flatcamGUI/FlatCAMGUI.py:6422 msgid "" "Scale the selected object(s)\n" "using the Scale_X factor for both axis." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6451 flatcamTools/ToolTransform.py:210 +#: flatcamGUI/FlatCAMGUI.py:6430 flatcamTools/ToolTransform.py:210 msgid "" "Scale the selected object(s)\n" "using the origin reference when checked,\n" @@ -7045,27 +7036,27 @@ msgid "" "of the selected objects when unchecked." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6460 +#: flatcamGUI/FlatCAMGUI.py:6439 msgid "Offset_X val:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6462 +#: flatcamGUI/FlatCAMGUI.py:6441 msgid "Distance to offset on X axis. In current units." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6469 +#: flatcamGUI/FlatCAMGUI.py:6448 msgid "Offset_Y val:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6471 +#: flatcamGUI/FlatCAMGUI.py:6450 msgid "Distance to offset on Y axis. In current units." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6477 +#: flatcamGUI/FlatCAMGUI.py:6456 msgid "Mirror Reference" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6479 flatcamTools/ToolTransform.py:314 +#: flatcamGUI/FlatCAMGUI.py:6458 flatcamTools/ToolTransform.py:314 msgid "" "Flip the selected object(s)\n" "around the point in Point Entry Field.\n" @@ -7078,174 +7069,174 @@ msgid "" "Point Entry field and click Flip on X(Y)" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6490 +#: flatcamGUI/FlatCAMGUI.py:6469 msgid " Mirror Ref. Point:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6492 flatcamTools/ToolTransform.py:327 +#: flatcamGUI/FlatCAMGUI.py:6471 flatcamTools/ToolTransform.py:327 msgid "" "Coordinates in format (x, y) used as reference for mirroring.\n" "The 'x' in (x, y) will be used when using Flip on X and\n" "the 'y' in (x, y) will be used when using Flip on Y and" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6509 +#: flatcamGUI/FlatCAMGUI.py:6488 msgid "SolderPaste Tool Options" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6514 +#: flatcamGUI/FlatCAMGUI.py:6493 msgid "" "A tool to create GCode for dispensing\n" "solder paste onto a PCB." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6525 +#: flatcamGUI/FlatCAMGUI.py:6504 msgid "Diameters of nozzle tools, separated by ','" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6532 +#: flatcamGUI/FlatCAMGUI.py:6511 msgid "New Nozzle Dia:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6534 flatcamTools/ToolSolderPaste.py:103 +#: flatcamGUI/FlatCAMGUI.py:6513 flatcamTools/ToolSolderPaste.py:103 msgid "Diameter for the new Nozzle tool to add in the Tool Table" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6542 flatcamTools/ToolSolderPaste.py:166 +#: flatcamGUI/FlatCAMGUI.py:6521 flatcamTools/ToolSolderPaste.py:166 msgid "Z Dispense Start:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6544 flatcamTools/ToolSolderPaste.py:168 +#: flatcamGUI/FlatCAMGUI.py:6523 flatcamTools/ToolSolderPaste.py:168 msgid "The height (Z) when solder paste dispensing starts." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6551 flatcamTools/ToolSolderPaste.py:174 +#: flatcamGUI/FlatCAMGUI.py:6530 flatcamTools/ToolSolderPaste.py:174 msgid "Z Dispense:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6553 flatcamTools/ToolSolderPaste.py:176 +#: flatcamGUI/FlatCAMGUI.py:6532 flatcamTools/ToolSolderPaste.py:176 msgid "The height (Z) when doing solder paste dispensing." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6560 flatcamTools/ToolSolderPaste.py:183 +#: flatcamGUI/FlatCAMGUI.py:6539 flatcamTools/ToolSolderPaste.py:183 msgid "Z Dispense Stop:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6562 flatcamTools/ToolSolderPaste.py:185 +#: flatcamGUI/FlatCAMGUI.py:6541 flatcamTools/ToolSolderPaste.py:185 msgid "The height (Z) when solder paste dispensing stops." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6569 flatcamTools/ToolSolderPaste.py:191 +#: flatcamGUI/FlatCAMGUI.py:6548 flatcamTools/ToolSolderPaste.py:191 msgid "Z Travel:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6571 flatcamTools/ToolSolderPaste.py:193 +#: flatcamGUI/FlatCAMGUI.py:6550 flatcamTools/ToolSolderPaste.py:193 msgid "" "The height (Z) for travel between pads\n" "(without dispensing solder paste)." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6579 flatcamTools/ToolSolderPaste.py:200 +#: flatcamGUI/FlatCAMGUI.py:6558 flatcamTools/ToolSolderPaste.py:200 msgid "Z Toolchange:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6581 flatcamTools/ToolSolderPaste.py:202 +#: flatcamGUI/FlatCAMGUI.py:6560 flatcamTools/ToolSolderPaste.py:202 msgid "The height (Z) for tool (nozzle) change." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6588 flatcamTools/ToolSolderPaste.py:208 +#: flatcamGUI/FlatCAMGUI.py:6567 flatcamTools/ToolSolderPaste.py:208 msgid "XY Toolchange:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6590 flatcamTools/ToolSolderPaste.py:210 +#: flatcamGUI/FlatCAMGUI.py:6569 flatcamTools/ToolSolderPaste.py:210 msgid "" "The X,Y location for tool (nozzle) change.\n" "The format is (x, y) where x and y are real numbers." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6598 flatcamTools/ToolSolderPaste.py:217 +#: flatcamGUI/FlatCAMGUI.py:6577 flatcamTools/ToolSolderPaste.py:217 msgid "Feedrate X-Y:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6600 flatcamTools/ToolSolderPaste.py:219 +#: flatcamGUI/FlatCAMGUI.py:6579 flatcamTools/ToolSolderPaste.py:219 msgid "Feedrate (speed) while moving on the X-Y plane." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6607 flatcamTools/ToolSolderPaste.py:225 +#: flatcamGUI/FlatCAMGUI.py:6586 flatcamTools/ToolSolderPaste.py:225 msgid "Feedrate Z:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6609 flatcamTools/ToolSolderPaste.py:227 +#: flatcamGUI/FlatCAMGUI.py:6588 flatcamTools/ToolSolderPaste.py:227 msgid "" "Feedrate (speed) while moving vertically\n" "(on Z plane)." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6617 flatcamTools/ToolSolderPaste.py:234 +#: flatcamGUI/FlatCAMGUI.py:6596 flatcamTools/ToolSolderPaste.py:234 msgid "Feedrate Z Dispense:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6619 +#: flatcamGUI/FlatCAMGUI.py:6598 msgid "" "Feedrate (speed) while moving up vertically\n" "to Dispense position (on Z plane)." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6627 flatcamTools/ToolSolderPaste.py:243 +#: flatcamGUI/FlatCAMGUI.py:6606 flatcamTools/ToolSolderPaste.py:243 msgid "Spindle Speed FWD:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6629 flatcamTools/ToolSolderPaste.py:245 +#: flatcamGUI/FlatCAMGUI.py:6608 flatcamTools/ToolSolderPaste.py:245 msgid "" "The dispenser speed while pushing solder paste\n" "through the dispenser nozzle." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6637 flatcamTools/ToolSolderPaste.py:252 +#: flatcamGUI/FlatCAMGUI.py:6616 flatcamTools/ToolSolderPaste.py:252 msgid "Dwell FWD:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6639 flatcamTools/ToolSolderPaste.py:254 +#: flatcamGUI/FlatCAMGUI.py:6618 flatcamTools/ToolSolderPaste.py:254 msgid "Pause after solder dispensing." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6646 flatcamTools/ToolSolderPaste.py:260 +#: flatcamGUI/FlatCAMGUI.py:6625 flatcamTools/ToolSolderPaste.py:260 msgid "Spindle Speed REV:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6648 flatcamTools/ToolSolderPaste.py:262 +#: flatcamGUI/FlatCAMGUI.py:6627 flatcamTools/ToolSolderPaste.py:262 msgid "" "The dispenser speed while retracting solder paste\n" "through the dispenser nozzle." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6656 flatcamTools/ToolSolderPaste.py:269 +#: flatcamGUI/FlatCAMGUI.py:6635 flatcamTools/ToolSolderPaste.py:269 msgid "Dwell REV:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6658 flatcamTools/ToolSolderPaste.py:271 +#: flatcamGUI/FlatCAMGUI.py:6637 flatcamTools/ToolSolderPaste.py:271 msgid "" "Pause after solder paste dispenser retracted,\n" "to allow pressure equilibrium." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6665 flatcamTools/ToolSolderPaste.py:277 +#: flatcamGUI/FlatCAMGUI.py:6644 flatcamTools/ToolSolderPaste.py:277 msgid "PostProcessors:" msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6667 flatcamTools/ToolSolderPaste.py:279 +#: flatcamGUI/FlatCAMGUI.py:6646 flatcamTools/ToolSolderPaste.py:279 msgid "Files that control the GCode generation." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6697 flatcamGUI/FlatCAMGUI.py:6703 +#: flatcamGUI/FlatCAMGUI.py:6676 flatcamGUI/FlatCAMGUI.py:6682 msgid "Idle." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6727 +#: flatcamGUI/FlatCAMGUI.py:6706 msgid "Application started ..." msgstr "" -#: flatcamGUI/FlatCAMGUI.py:6728 +#: flatcamGUI/FlatCAMGUI.py:6707 msgid "Hello!" msgstr "" From 963fbc8cbfd72f601c9f3c5420ea4dd6a98f9cfc Mon Sep 17 00:00:00 2001 From: Marius Stanciu Date: Sat, 22 Jun 2019 18:02:41 +0300 Subject: [PATCH 10/15] - fixed recently introduced bug in milling drills/slots functions --- FlatCAMObj.py | 4 ++-- README.md | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/FlatCAMObj.py b/FlatCAMObj.py index 2785cd2f..8dca424c 100644 --- a/FlatCAMObj.py +++ b/FlatCAMObj.py @@ -2353,7 +2353,7 @@ class FlatCAMExcellon(FlatCAMObj, Excellon): geo_obj.options['Tools_in_use'] = tool_table_items geo_obj.options['type'] = 'Excellon Geometry' - geo_obj.options["cnctooldia"] = float(tooldia) + geo_obj.options["cnctooldia"] = str(tooldia) geo_obj.solid_geometry = [] @@ -2448,7 +2448,7 @@ class FlatCAMExcellon(FlatCAMObj, Excellon): geo_obj.options['Tools_in_use'] = tool_table_items geo_obj.options['type'] = 'Excellon Geometry' - geo_obj.options["cnctooldia"] = float(tooldia) + geo_obj.options["cnctooldia"] = str(tooldia) geo_obj.solid_geometry = [] diff --git a/README.md b/README.md index 7e32f10c..0a6b6b89 100644 --- a/README.md +++ b/README.md @@ -20,6 +20,7 @@ CAD program, and create G-Code for Isolation routing. - set the decimals for Grid values to be set to 6 if the units of FlatCAM is INCH and to set to 4 if FlatCAM units are METRIC - updated translations - updated the Russian translate from 51% complete to 69% complete using the Yandex translation engine +- fixed recently introduced bug in milling drills/slots functions 20.06.2019 From 90f491491d59b7d28dc0934472d9a5d031b41a51 Mon Sep 17 00:00:00 2001 From: Marius Stanciu Date: Sat, 22 Jun 2019 18:22:04 +0300 Subject: [PATCH 11/15] - moved Substract Tool from Menu -> Edit -> Conversions to Menu -> Tool --- FlatCAMApp.py | 5 ++--- README.md | 3 ++- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/FlatCAMApp.py b/FlatCAMApp.py index cd7517fa..bf65867c 100644 --- a/FlatCAMApp.py +++ b/FlatCAMApp.py @@ -2108,11 +2108,10 @@ class App(QtCore.QObject): self.paste_tool.install(icon=QtGui.QIcon('share/solderpastebis32.png')) self.calculator_tool = ToolCalculator(self) - self.calculator_tool.install(icon=QtGui.QIcon('share/calculator24.png')) + self.calculator_tool.install(icon=QtGui.QIcon('share/calculator24.png'), separator=True) self.sub_tool = ToolSub(self) - self.sub_tool.install(icon=QtGui.QIcon('share/sub32.png'), pos=self.ui.menuedit_convert, - before=self.ui.menuedit_convert_sg2mg) + self.sub_tool.install(icon=QtGui.QIcon('share/sub32.png'), pos=self.ui.menutool, separator=True) self.move_tool = ToolMove(self) self.move_tool.install(icon=QtGui.QIcon('share/move16.png'), pos=self.ui.menuedit, diff --git a/README.md b/README.md index 0a6b6b89..8ee8af40 100644 --- a/README.md +++ b/README.md @@ -19,8 +19,9 @@ CAD program, and create G-Code for Isolation routing. - fixed bug in updating Grid values whenever toggling the FlatCAM units and the X, Y Grid values are linked, bugs which caused the Y value to be scaled incorrectly - set the decimals for Grid values to be set to 6 if the units of FlatCAM is INCH and to set to 4 if FlatCAM units are METRIC - updated translations -- updated the Russian translate from 51% complete to 69% complete using the Yandex translation engine +- updated the Russian translation from 51% complete to 69% complete using the Yandex translation engine - fixed recently introduced bug in milling drills/slots functions +- moved Substract Tool from Menu -> Edit -> Conversions to Menu -> Tool 20.06.2019 From 21a15e73bd42a2f6353f8e58589f2a81e67f04c6 Mon Sep 17 00:00:00 2001 From: Marius Stanciu Date: Sat, 22 Jun 2019 20:17:45 +0300 Subject: [PATCH 12/15] - fixed bug in Gerber isolation (Geometry expects now a value in string format and not float) - fixed bug in Paint tool: now it is possible to paint geometry generated by External Isolation (or Internal isolation) - fixed bug in editing a multigeo Geometry object if previously a tool was deleted --- FlatCAMApp.py | 13 +++++++++- FlatCAMObj.py | 41 +++++++++++++++++------------- README.md | 3 +++ flatcamEditors/FlatCAMGeoEditor.py | 2 +- flatcamTools/ToolNonCopperClear.py | 4 +-- flatcamTools/ToolPaint.py | 18 ++++++++----- 6 files changed, 53 insertions(+), 28 deletions(-) diff --git a/FlatCAMApp.py b/FlatCAMApp.py index bf65867c..4e2cb6e6 100644 --- a/FlatCAMApp.py +++ b/FlatCAMApp.py @@ -2244,7 +2244,18 @@ class App(QtCore.QObject): self.inform.emit(_("[WARNING_NOTCL] Simultanoeus editing of tools geometry in a MultiGeo Geometry " "is not possible.\n" "Edit only one geometry at a time.")) - self.geo_editor.edit_fcgeometry(edited_object, multigeo_tool=edited_tools[0]) + + # determine the tool dia of the selected tool + selected_tooldia = float(edited_object.ui.geo_tools_table.item((edited_tools[0] - 1), 1).text()) + + # now find the key in the edited_object.tools that has this tooldia + multi_tool = 1 + for tool in edited_object.tools: + if edited_object.tools[tool]['tooldia'] == selected_tooldia: + multi_tool = tool + break + + self.geo_editor.edit_fcgeometry(edited_object, multigeo_tool=multi_tool) else: self.geo_editor.edit_fcgeometry(edited_object) diff --git a/FlatCAMObj.py b/FlatCAMObj.py index 8dca424c..ea88438a 100644 --- a/FlatCAMObj.py +++ b/FlatCAMObj.py @@ -818,7 +818,7 @@ class FlatCAMGerber(FlatCAMObj, Gerber): def follow_init(follow_obj, app): # Propagate options - follow_obj.options["cnctooldia"] = float(self.options["isotooldia"]) + follow_obj.options["cnctooldia"] = str(self.options["isotooldia"]) follow_obj.solid_geometry = self.follow_geometry # TODO: Do something if this is None. Offer changing name? @@ -840,7 +840,6 @@ class FlatCAMGerber(FlatCAMObj, Gerber): :return: None """ - if dia is None: dia = float(self.options["isotooldia"]) if passes is None: @@ -901,7 +900,7 @@ class FlatCAMGerber(FlatCAMObj, Gerber): # TODO: This is ugly. Create way to pass data into init function. def iso_init(geo_obj, app_obj): # Propagate options - geo_obj.options["cnctooldia"] = float(self.options["isotooldia"]) + geo_obj.options["cnctooldia"] = str(self.options["isotooldia"]) geo_obj.solid_geometry = [] for i in range(passes): iso_offset = (((2 * i + 1) / 2.0) * dia) - (i * overlap * dia) @@ -958,7 +957,7 @@ class FlatCAMGerber(FlatCAMObj, Gerber): # TODO: This is ugly. Create way to pass data into init function. def iso_init(geo_obj, app_obj): # Propagate options - geo_obj.options["cnctooldia"] = float(self.options["isotooldia"]) + geo_obj.options["cnctooldia"] = str(self.options["isotooldia"]) # if milling type is climb then the move is counter-clockwise around features if milling_type == 'cl': @@ -2958,15 +2957,15 @@ class FlatCAMGeometry(FlatCAMObj, Geometry): }) if "cnctooldia" not in self.options: - # self.options["cnctooldia"] = self.app.defaults["geometry_cnctooldia"] - try: - self.options["cnctooldia"] = [ - float(eval(dia)) for dia in str(self.app.defaults["geometry_cnctooldia"]).split(",") - ] - except Exception as e: - log.error("At least one tool diameter needed. Verify in Edit -> Preferences -> Geometry General -> " - "Tool dia. %s" % str(e)) - return + self.options["cnctooldia"] = self.app.defaults["geometry_cnctooldia"] + # try: + # self.options["cnctooldia"] = [ + # float(eval(dia)) for dia in str(self.app.defaults["geometry_cnctooldia"]).split(",") + # ] + # except Exception as e: + # log.error("At least one tool diameter needed. Verify in Edit -> Preferences -> Geometry General -> " + # "Tool dia. %s" % str(e)) + # return self.options["startz"] = self.app.defaults["geometry_startz"] @@ -3801,7 +3800,11 @@ class FlatCAMGeometry(FlatCAMObj, Geometry): # populate the form with the data from the tool associated with the row parameter try: - tooluid = int(self.ui.geo_tools_table.item(current_row, 5).text()) + item = self.ui.geo_tools_table.item(current_row, 5) + if item is not None: + tooluid = int(item.text()) + else: + return except Exception as e: log.debug("Tool missing. Add a tool in Geo Tool Table. %s" % str(e)) return @@ -3809,8 +3812,12 @@ class FlatCAMGeometry(FlatCAMObj, Geometry): # update the form with the V-Shape fields if V-Shape selected in the geo_tool_table # also modify the Cut Z form entry to reflect the calculated Cut Z from values got from V-Shape Fields try: - tool_type_txt = self.ui.geo_tools_table.cellWidget(current_row, 4).currentText() - self.ui_update_v_shape(tool_type_txt=tool_type_txt) + item = self.ui.geo_tools_table.cellWidget(current_row, 4) + if item is not None: + tool_type_txt = item.currentText() + self.ui_update_v_shape(tool_type_txt=tool_type_txt) + else: + return except Exception as e: log.debug("Tool missing. Add a tool in Geo Tool Table. %s" % str(e)) return @@ -4166,7 +4173,7 @@ class FlatCAMGeometry(FlatCAMObj, Geometry): self.ui.cncfeedrate_rapid_entry.hide() def on_generatecnc_button_click(self, *args): - + log.debug("Generating CNCJob from Geometry ...") self.app.report_usage("geometry_on_generatecnc_button") self.read_form() diff --git a/README.md b/README.md index 8ee8af40..eee695ec 100644 --- a/README.md +++ b/README.md @@ -22,6 +22,9 @@ CAD program, and create G-Code for Isolation routing. - updated the Russian translation from 51% complete to 69% complete using the Yandex translation engine - fixed recently introduced bug in milling drills/slots functions - moved Substract Tool from Menu -> Edit -> Conversions to Menu -> Tool +- fixed bug in Gerber isolation (Geometry expects now a value in string format and not float) +- fixed bug in Paint tool: now it is possible to paint geometry generated by External Isolation (or Internal isolation) +- fixed bug in editing a multigeo Geometry object if previously a tool was deleted 20.06.2019 diff --git a/flatcamEditors/FlatCAMGeoEditor.py b/flatcamEditors/FlatCAMGeoEditor.py index aef068c6..dcbf35c3 100644 --- a/flatcamEditors/FlatCAMGeoEditor.py +++ b/flatcamEditors/FlatCAMGeoEditor.py @@ -4002,7 +4002,7 @@ class FlatCAMGeoEditor(QtCore.QObject): def update_options(self, obj): if self.paint_tooldia: - obj.options['cnctooldia'] = self.paint_tooldia + obj.options['cnctooldia'] = deepcopy(str(self.paint_tooldia)) self.paint_tooldia = None return True else: diff --git a/flatcamTools/ToolNonCopperClear.py b/flatcamTools/ToolNonCopperClear.py index 6b22f7cb..ed284394 100644 --- a/flatcamTools/ToolNonCopperClear.py +++ b/flatcamTools/ToolNonCopperClear.py @@ -787,7 +787,7 @@ class NonCopperClear(FlatCAMTool, Gerber): else: log.debug("There are no geometries in the cleared polygon.") - geo_obj.options["cnctooldia"] = tool + geo_obj.options["cnctooldia"] = str(tool) geo_obj.multigeo = True def job_thread(app_obj): @@ -929,7 +929,7 @@ class NonCopperClear(FlatCAMTool, Gerber): log.debug("There are no geometries in the cleared polygon.") geo_obj.multigeo = True - geo_obj.options["cnctooldia"] = tool + geo_obj.options["cnctooldia"] = str(tool) # check to see if geo_obj.tools is empty # it will be updated only if there is a solid_geometry for tools diff --git a/flatcamTools/ToolPaint.py b/flatcamTools/ToolPaint.py index 8e01e41b..f2009c88 100644 --- a/flatcamTools/ToolPaint.py +++ b/flatcamTools/ToolPaint.py @@ -920,7 +920,7 @@ class ToolPaint(FlatCAMTool, Gerber): log.debug("Could not Paint the polygons. %s" % str(e)) self.app.inform.emit( _("[ERROR] Could not do Paint. Try a different combination of parameters. " - "Or a different strategy of paint\n%s") % str(e)) + "Or a different strategy of paint\n%s") % str(e)) return if cp is not None: @@ -930,7 +930,7 @@ class ToolPaint(FlatCAMTool, Gerber): else: geo_obj.solid_geometry = list(cp.get_objects()) - geo_obj.options["cnctooldia"] = tooldia + geo_obj.options["cnctooldia"] = str(tooldia) # this turn on the FlatCAMCNCJob plot for multiple tools geo_obj.multigeo = False geo_obj.multitool = True @@ -1043,7 +1043,11 @@ class ToolPaint(FlatCAMTool, Gerber): # ## Not iterable, do the actual indexing and add. except TypeError: - self.flat_geometry.append(geometry) + if isinstance(geometry, LinearRing): + g = Polygon(geometry) + self.flat_geometry.append(g) + else: + self.flat_geometry.append(geometry) return self.flat_geometry @@ -1127,7 +1131,7 @@ class ToolPaint(FlatCAMTool, Gerber): self.paint_tools[current_uid]['data']['name'] = name total_geometry[:] = [] - geo_obj.options["cnctooldia"] = tool_dia + geo_obj.options["cnctooldia"] = str(tool_dia) # this turn on the FlatCAMCNCJob plot for multiple tools geo_obj.multigeo = True geo_obj.multitool = True @@ -1141,8 +1145,8 @@ class ToolPaint(FlatCAMTool, Gerber): has_solid_geo += 1 if has_solid_geo == 0: self.app.inform.emit(_("[ERROR] There is no Painting Geometry in the file.\n" - "Usually it means that the tool diameter is too big for the painted geometry.\n" - "Change the painting parameters and try again.")) + "Usually it means that the tool diameter is too big for the painted geometry.\n" + "Change the painting parameters and try again.")) return # Experimental... @@ -1222,7 +1226,7 @@ class ToolPaint(FlatCAMTool, Gerber): self.paint_tools[current_uid]['data']['name'] = name cleared_geo[:] = [] - geo_obj.options["cnctooldia"] = tool_dia + geo_obj.options["cnctooldia"] = str(tool_dia) # this turn on the FlatCAMCNCJob plot for multiple tools geo_obj.multigeo = True geo_obj.multitool = True From 259a62230ed25ba9d08e51fd02b343e2731a454a Mon Sep 17 00:00:00 2001 From: Marius Stanciu Date: Sat, 22 Jun 2019 21:37:18 +0300 Subject: [PATCH 13/15] - optimized the toggle of annotations; now there is no need to replot the entire CNCJob object too on toggling of the annotations - on toggling off the plot visibility the annotations are turned off too - updated translations; Russian translation at 76% (using Yandex translator engine - needs verification by a native speaker of Russian) - RELEASE 8.919 --- FlatCAMObj.py | 10 +- README.md | 4 + locale/de/LC_MESSAGES/strings.mo | Bin 305239 -> 305239 bytes locale/de/LC_MESSAGES/strings.po | 558 +++++++++---------- locale/en/LC_MESSAGES/strings.mo | Bin 284579 -> 284579 bytes locale/en/LC_MESSAGES/strings.po | 559 ++++++++++---------- locale/ro/LC_MESSAGES/strings.mo | Bin 303587 -> 303587 bytes locale/ro/LC_MESSAGES/strings.po | 558 +++++++++---------- locale/ru/LC_MESSAGES/strings.mo | Bin 163041 -> 192759 bytes locale/ru/LC_MESSAGES/strings.po | 882 +++++++++++++++++++------------ locale_template/strings.pot | 556 +++++++++---------- 11 files changed, 1668 insertions(+), 1459 deletions(-) diff --git a/FlatCAMObj.py b/FlatCAMObj.py index ea88438a..ba8e7600 100644 --- a/FlatCAMObj.py +++ b/FlatCAMObj.py @@ -5928,13 +5928,19 @@ class FlatCAMCNCjob(FlatCAMObj, CNCjob): self.shapes.clear(update=True) self.annotation.clear(update=True) + if self.ui.annotation_cb.get_value() and self.ui.plot_cb.get_value(): + self.app.plotcanvas.text_collection.enabled = True + else: + self.app.plotcanvas.text_collection.enabled = False + def on_annotation_change(self): if self.ui.annotation_cb.get_value(): self.app.plotcanvas.text_collection.enabled = True else: self.app.plotcanvas.text_collection.enabled = False - kind = self.ui.cncplot_method_combo.get_value() - self.plot(kind=kind) + # kind = self.ui.cncplot_method_combo.get_value() + # self.plot(kind=kind) + self.annotation.redraw() def convert_units(self, units): factor = CNCjob.convert_units(self, units) diff --git a/README.md b/README.md index eee695ec..57e5c9b3 100644 --- a/README.md +++ b/README.md @@ -25,6 +25,10 @@ CAD program, and create G-Code for Isolation routing. - fixed bug in Gerber isolation (Geometry expects now a value in string format and not float) - fixed bug in Paint tool: now it is possible to paint geometry generated by External Isolation (or Internal isolation) - fixed bug in editing a multigeo Geometry object if previously a tool was deleted +- optimized the toggle of annotations; now there is no need to replot the entire CNCJob object too on toggling of the annotations +- on toggling off the plot visibility the annotations are turned off too +- updated translations; Russian translation at 76% (using Yandex translator engine - needs verification by a native speaker of Russian) +- RELEASE 8.919 20.06.2019 diff --git a/locale/de/LC_MESSAGES/strings.mo b/locale/de/LC_MESSAGES/strings.mo index b37d3e32a6a42b52342f8e142fa18db9a98757ea..be2fc0e0f5f81ab35e76d24ba00591025a052225 100644 GIT binary patch delta 44 ucmcb9LFoDgp@tU5Elg46tVV`b21e84%bAoR%=Y$jCLm_s-d@gf!2keh=MP~3 delta 44 ucmcb9LFoDgp@tU5Elg46tcGS*CWh1F%bAoR%=Y$jCLm_s-d@gf!2kejBoA)@ diff --git a/locale/de/LC_MESSAGES/strings.po b/locale/de/LC_MESSAGES/strings.po index 01fb10b2..8bafb3c7 100644 --- a/locale/de/LC_MESSAGES/strings.po +++ b/locale/de/LC_MESSAGES/strings.po @@ -1,8 +1,8 @@ msgid "" msgstr "" "Project-Id-Version: \n" -"POT-Creation-Date: 2019-06-22 16:41+0300\n" -"PO-Revision-Date: 2019-06-22 16:41+0300\n" +"POT-Creation-Date: 2019-06-22 21:02+0300\n" +"PO-Revision-Date: 2019-06-22 21:02+0300\n" "Last-Translator: \n" "Language-Team: \n" "Language: de\n" @@ -36,13 +36,13 @@ msgstr "Open Config-Datei ist fehlgeschlagen." msgid "Open Script file failed." msgstr "Open Script-Datei ist fehlgeschlagen." -#: FlatCAMApp.py:2235 +#: FlatCAMApp.py:2234 msgid "[WARNING_NOTCL] Select a Geometry, Gerber or Excellon Object to edit." msgstr "" "[WARNING_NOTCL] Wählen Sie ein zu bearbeitendes Geometrie-, Gerber- oder " "Excellon-Objekt aus." -#: FlatCAMApp.py:2245 +#: FlatCAMApp.py:2244 msgid "" "[WARNING_NOTCL] Simultanoeus editing of tools geometry in a MultiGeo " "Geometry is not possible.\n" @@ -52,98 +52,98 @@ msgstr "" "Multi-Geo-Geometrie ist nicht möglich.\n" "Bearbeiten Sie jeweils nur eine Geometrie." -#: FlatCAMApp.py:2289 +#: FlatCAMApp.py:2299 msgid "[WARNING_NOTCL] Editor is activated ..." msgstr "[WARNING_NOTCL] Editor ist aktiviert ..." -#: FlatCAMApp.py:2307 +#: FlatCAMApp.py:2317 msgid "Do you want to save the edited object?" msgstr "Möchten Sie das bearbeitete Objekt speichern?" -#: FlatCAMApp.py:2308 flatcamGUI/FlatCAMGUI.py:1618 +#: FlatCAMApp.py:2318 flatcamGUI/FlatCAMGUI.py:1618 msgid "Close Editor" msgstr "Editor schließen" -#: FlatCAMApp.py:2311 FlatCAMApp.py:3403 FlatCAMApp.py:5908 +#: FlatCAMApp.py:2321 FlatCAMApp.py:3413 FlatCAMApp.py:5918 #: FlatCAMTranslation.py:89 flatcamGUI/FlatCAMGUI.py:3730 msgid "Yes" msgstr "Ja" -#: FlatCAMApp.py:2312 FlatCAMApp.py:3404 FlatCAMApp.py:5909 +#: FlatCAMApp.py:2322 FlatCAMApp.py:3414 FlatCAMApp.py:5919 #: FlatCAMTranslation.py:90 flatcamGUI/FlatCAMGUI.py:3731 msgid "No" msgstr "Nein" -#: FlatCAMApp.py:2313 FlatCAMApp.py:3405 FlatCAMApp.py:3754 FlatCAMApp.py:5910 +#: FlatCAMApp.py:2323 FlatCAMApp.py:3415 FlatCAMApp.py:3764 FlatCAMApp.py:5920 msgid "Cancel" msgstr "Kündigen" -#: FlatCAMApp.py:2340 +#: FlatCAMApp.py:2350 msgid "[WARNING] Object empty after edit." msgstr "[WARNING] Das Objekt ist nach der Bearbeitung leer." -#: FlatCAMApp.py:2362 FlatCAMApp.py:2381 FlatCAMApp.py:2393 +#: FlatCAMApp.py:2372 FlatCAMApp.py:2391 FlatCAMApp.py:2403 msgid "[WARNING_NOTCL] Select a Gerber, Geometry or Excellon Object to update." msgstr "" "[WARNING_NOTCL] Wählen Sie ein Gerber-, Geometrie- oder Excellon-Objekt zum " "Aktualisieren aus." -#: FlatCAMApp.py:2365 +#: FlatCAMApp.py:2375 #, python-format msgid "[selected] %s is updated, returning to App..." msgstr "[selected] %s wird aktualisiert und kehrt zur App zurück ..." -#: FlatCAMApp.py:2730 +#: FlatCAMApp.py:2740 msgid "[ERROR] Could not load defaults file." msgstr "[ERROR] Standarddatei konnte nicht geladen werden." -#: FlatCAMApp.py:2742 +#: FlatCAMApp.py:2752 msgid "[ERROR] Failed to parse defaults file." msgstr "[ERROR] Fehler beim Parsen der Standarddatei." -#: FlatCAMApp.py:2763 FlatCAMApp.py:2767 +#: FlatCAMApp.py:2773 FlatCAMApp.py:2777 msgid "Import FlatCAM Preferences" msgstr "FlatCAM-Voreinstellungen importieren" -#: FlatCAMApp.py:2773 +#: FlatCAMApp.py:2783 msgid "[WARNING_NOTCL] FlatCAM preferences import cancelled." msgstr "[WARNING_NOTCL] Import der FlatCAM-Einstellungen wurde abgebrochen." -#: FlatCAMApp.py:2781 FlatCAMApp.py:2835 FlatCAMApp.py:3282 +#: FlatCAMApp.py:2791 FlatCAMApp.py:2845 FlatCAMApp.py:3292 msgid "[ERROR_NOTCL] Could not load defaults file." msgstr "[ERROR_NOTCL] Standarddatei konnte nicht geladen werden." -#: FlatCAMApp.py:2789 FlatCAMApp.py:3291 +#: FlatCAMApp.py:2799 FlatCAMApp.py:3301 msgid "[ERROR_NOTCL] Failed to parse defaults file." msgstr "[ERROR_NOTCL] Fehler beim Parsen der Standarddatei." -#: FlatCAMApp.py:2792 +#: FlatCAMApp.py:2802 #, python-format msgid "[success] Imported Defaults from %s" msgstr "[success] Importierte Standardwerte aus %s" -#: FlatCAMApp.py:2807 FlatCAMApp.py:2812 +#: FlatCAMApp.py:2817 FlatCAMApp.py:2822 msgid "Export FlatCAM Preferences" msgstr "FlatCAM-Voreinstellungen exportieren" -#: FlatCAMApp.py:2819 +#: FlatCAMApp.py:2829 msgid "[WARNING_NOTCL] FlatCAM preferences export cancelled." msgstr "[WARNING_NOTCL] Export der FlatCAM-Einstellungen wurde abgebrochen." -#: FlatCAMApp.py:2854 FlatCAMApp.py:3336 +#: FlatCAMApp.py:2864 FlatCAMApp.py:3346 msgid "[ERROR_NOTCL] Failed to write defaults to file." msgstr "[ERROR_NOTCL] Fehler beim Schreiben der Standardwerte in die Datei." -#: FlatCAMApp.py:2907 +#: FlatCAMApp.py:2917 msgid "[ERROR_NOTCL] Failed to open recent files file for writing." msgstr "" "[ERROR_NOTCL] Fehler beim Öffnen der zuletzt geöffneten Datei zum Schreiben." -#: FlatCAMApp.py:2984 camlib.py:4457 +#: FlatCAMApp.py:2994 camlib.py:4457 msgid "[ERROR_NOTCL] An internal error has ocurred. See shell.\n" msgstr "[ERROR_NOTCL] Ein interner Fehler ist aufgetreten. Siehe Shell.\n" -#: FlatCAMApp.py:2985 +#: FlatCAMApp.py:2995 #, python-brace-format msgid "" "Object ({kind}) failed because: {error} \n" @@ -152,11 +152,11 @@ msgstr "" "Objekt ({kind}) gescheitert weil: {error} \n" "\n" -#: FlatCAMApp.py:3005 +#: FlatCAMApp.py:3015 msgid "Converting units to " msgstr "Einheiten in umrechnen " -#: FlatCAMApp.py:3084 FlatCAMApp.py:3087 FlatCAMApp.py:3090 FlatCAMApp.py:3093 +#: FlatCAMApp.py:3094 FlatCAMApp.py:3097 FlatCAMApp.py:3100 FlatCAMApp.py:3103 #, python-brace-format msgid "" "[selected] {kind} created/selected: {name}{name}" "" -#: FlatCAMApp.py:3187 +#: FlatCAMApp.py:3197 #, python-brace-format msgid "" "FlatCAM
Version {version} {beta} ({date}) - " @@ -188,32 +188,32 @@ msgstr "" "org/jpcgt/flatcam/src/Beta/\">hier.
DOWNLOAD-Bereich hier.
" -#: FlatCAMApp.py:3340 +#: FlatCAMApp.py:3350 msgid "[success] Defaults saved." msgstr "[success] Standardeinstellungen gespeichert." -#: FlatCAMApp.py:3361 +#: FlatCAMApp.py:3371 msgid "[ERROR_NOTCL] Could not load factory defaults file." msgstr "[ERROR_NOTCL] Factory-Standarddatei konnte nicht geladen werden." -#: FlatCAMApp.py:3370 +#: FlatCAMApp.py:3380 msgid "[ERROR_NOTCL] Failed to parse factory defaults file." msgstr "[ERROR_NOTCL] Fehler beim Parsen der Werksvorgaben-Datei." -#: FlatCAMApp.py:3384 +#: FlatCAMApp.py:3394 msgid "[ERROR_NOTCL] Failed to write factory defaults to file." msgstr "" "[ERROR_NOTCL] Fehler beim Schreiben der Werkseinstellungen in die Datei." -#: FlatCAMApp.py:3388 +#: FlatCAMApp.py:3398 msgid "Factory defaults saved." msgstr "Werkseinstellungen gespeichert." -#: FlatCAMApp.py:3393 flatcamGUI/FlatCAMGUI.py:3106 +#: FlatCAMApp.py:3403 flatcamGUI/FlatCAMGUI.py:3106 msgid "[WARNING_NOTCL] Application is saving the project. Please wait ..." msgstr "[WARNING_NOTCL] Anwendung speichert das Projekt. Warten Sie mal ..." -#: FlatCAMApp.py:3398 +#: FlatCAMApp.py:3408 msgid "" "There are files/objects modified in FlatCAM. \n" "Do you want to Save the project?" @@ -221,11 +221,11 @@ msgstr "" "In FlatCAM wurden Dateien / Objekte geändert.\n" "Möchten Sie das Projekt speichern?" -#: FlatCAMApp.py:3401 FlatCAMApp.py:5906 +#: FlatCAMApp.py:3411 FlatCAMApp.py:5916 msgid "Save changes" msgstr "Änderungen speichern" -#: FlatCAMApp.py:3468 +#: FlatCAMApp.py:3478 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 " @@ -243,73 +243,73 @@ msgstr "" "und das Ergebnis entspricht möglicherweise nicht dem, was erwartet wurde.\n" "Überprüfen Sie den generierten GCODE." -#: FlatCAMApp.py:3509 +#: FlatCAMApp.py:3519 msgid "[ERROR_NOTCL] Failed. Excellon joining works only on Excellon objects." msgstr "" "[ERROR_NOTCL] Gescheitert. Die Verbindung von Excellon funktioniert nur bei " "Excellon-Objekten." -#: FlatCAMApp.py:3531 +#: FlatCAMApp.py:3541 msgid "[ERROR_NOTCL] Failed. Gerber joining works only on Gerber objects." msgstr "" "[ERROR_NOTCL] Gescheitert. Das Gerber-Verbinden funktioniert nur bei Gerber-" "Objekten." -#: FlatCAMApp.py:3546 FlatCAMApp.py:3571 +#: FlatCAMApp.py:3556 FlatCAMApp.py:3581 msgid "[ERROR_NOTCL] Failed. Select a Geometry Object and try again." msgstr "" "[ERROR_NOTCL] Gescheitert. Wählen Sie ein Geometrieobjekt aus und versuchen " "Sie es erneut." -#: FlatCAMApp.py:3550 FlatCAMApp.py:3575 +#: FlatCAMApp.py:3560 FlatCAMApp.py:3585 #, python-format msgid "[ERROR_NOTCL] Expected a FlatCAMGeometry, got %s" msgstr "[ERROR_NOTCL] Erwartete eine FlatCAMGeometry, bekam % s" -#: FlatCAMApp.py:3563 +#: FlatCAMApp.py:3573 msgid "[success] A Geometry object was converted to MultiGeo type." msgstr "[success] Ein Geometrieobjekt wurde in den MultiGeo-Typ konvertiert." -#: FlatCAMApp.py:3589 +#: FlatCAMApp.py:3599 msgid "[success] A Geometry object was converted to SingleGeo type." msgstr "[success] Ein Geometrieobjekt wurde in den SingleGeo-Typ konvertiert." -#: FlatCAMApp.py:3753 FlatCAMApp.py:4593 FlatCAMApp.py:6181 FlatCAMApp.py:6192 -#: FlatCAMApp.py:6432 FlatCAMApp.py:6442 +#: FlatCAMApp.py:3763 FlatCAMApp.py:4603 FlatCAMApp.py:6191 FlatCAMApp.py:6202 +#: FlatCAMApp.py:6442 FlatCAMApp.py:6452 msgid "Ok" msgstr "Ok" -#: FlatCAMApp.py:3799 +#: FlatCAMApp.py:3809 #, python-format msgid "[success] Converted units to %s" msgstr "[success] Einheiten in umgerechnet %s" -#: FlatCAMApp.py:3810 +#: FlatCAMApp.py:3820 msgid "[WARNING_NOTCL] Units conversion cancelled." msgstr "[WARNING_NOTCL] Einheitenumrechnung abgebrochen." -#: FlatCAMApp.py:4462 +#: FlatCAMApp.py:4472 msgid "Open file" msgstr "Datei öffnen" -#: FlatCAMApp.py:4493 FlatCAMApp.py:4498 +#: FlatCAMApp.py:4503 FlatCAMApp.py:4508 msgid "Export G-Code ..." msgstr "G-Code exportieren ..." -#: FlatCAMApp.py:4501 +#: FlatCAMApp.py:4511 msgid "[WARNING_NOTCL] Export Code cancelled." msgstr "[WARNING_NOTCL] Exportcode wurde abgebrochen." -#: FlatCAMApp.py:4511 +#: FlatCAMApp.py:4521 msgid "[WARNING] No such file or directory" msgstr "[WARNING] Keine solche Datei oder Ordner" -#: FlatCAMApp.py:4518 +#: FlatCAMApp.py:4528 #, python-format msgid "Saved to: %s" msgstr "Gespeichert in: %s" -#: FlatCAMApp.py:4581 FlatCAMApp.py:4614 FlatCAMApp.py:4625 FlatCAMApp.py:4636 +#: FlatCAMApp.py:4591 FlatCAMApp.py:4624 FlatCAMApp.py:4635 FlatCAMApp.py:4646 #: flatcamTools/ToolNonCopperClear.py:489 flatcamTools/ToolSolderPaste.py:765 msgid "" "[WARNING_NOTCL] Please enter a tool diameter with non-zero value, in Float " @@ -318,12 +318,12 @@ msgstr "" "[WARNING_NOTCL] Bitte geben Sie einen Werkzeugdurchmesser mit einem Wert " "ungleich Null im Float-Format ein." -#: FlatCAMApp.py:4586 FlatCAMApp.py:4619 FlatCAMApp.py:4630 FlatCAMApp.py:4641 +#: FlatCAMApp.py:4596 FlatCAMApp.py:4629 FlatCAMApp.py:4640 FlatCAMApp.py:4651 #: flatcamGUI/FlatCAMGUI.py:3001 msgid "[WARNING_NOTCL] Adding Tool cancelled ..." msgstr "[WARNING_NOTCL] Addierwerkzeug abgebrochen ..." -#: FlatCAMApp.py:4589 +#: FlatCAMApp.py:4599 msgid "" "Adding Tool works only when Advanced is checked.\n" "Go to Preferences -> General - Show Advanced Options." @@ -332,35 +332,35 @@ msgstr "" "ist.\n" "Gehen Sie zu Einstellungen -> Allgemein - Erweiterte Optionen anzeigen." -#: FlatCAMApp.py:4702 +#: FlatCAMApp.py:4712 msgid "Object(s) deleted ..." msgstr "Objekt (e) gelöscht ..." -#: FlatCAMApp.py:4706 +#: FlatCAMApp.py:4716 msgid "Failed. No object(s) selected..." msgstr "Gescheitert. Kein Objekt ausgewählt ..." -#: FlatCAMApp.py:4708 +#: FlatCAMApp.py:4718 msgid "Save the work in Editor and try again ..." msgstr "Speichern Sie die Arbeit im Editor und versuchen Sie es erneut ..." -#: FlatCAMApp.py:4721 +#: FlatCAMApp.py:4731 msgid "Click to set the origin ..." msgstr "Klicken Sie hier, um den Ursprung festzulegen ..." -#: FlatCAMApp.py:4733 +#: FlatCAMApp.py:4743 msgid "Jump to ..." msgstr "Springen zu ..." -#: FlatCAMApp.py:4734 +#: FlatCAMApp.py:4744 msgid "Enter the coordinates in format X,Y:" msgstr "Geben Sie die Koordinaten im Format X, Y ein:" -#: FlatCAMApp.py:4741 +#: FlatCAMApp.py:4751 msgid "Wrong coordinates. Enter coordinates in format: X,Y" msgstr "Falsche Koordinaten. Koordinaten im Format eingeben: X, Y" -#: FlatCAMApp.py:4759 flatcamEditors/FlatCAMExcEditor.py:2320 +#: FlatCAMApp.py:4769 flatcamEditors/FlatCAMExcEditor.py:2320 #: flatcamEditors/FlatCAMExcEditor.py:2327 #: flatcamEditors/FlatCAMGeoEditor.py:3648 #: flatcamEditors/FlatCAMGeoEditor.py:3662 @@ -374,91 +374,91 @@ msgstr "Falsche Koordinaten. Koordinaten im Format eingeben: X, Y" msgid "[success] Done." msgstr "[success] Erledigt." -#: FlatCAMApp.py:4891 FlatCAMApp.py:4958 +#: FlatCAMApp.py:4901 FlatCAMApp.py:4968 msgid "[WARNING_NOTCL] No object is selected. Select an object and try again." msgstr "" "[WARNING_NOTCL] Es ist kein Objekt ausgewählt. Wählen Sie ein Objekt und " "versuchen Sie es erneut." -#: FlatCAMApp.py:4999 +#: FlatCAMApp.py:5009 msgid "[success] Origin set ..." msgstr "[success] Ursprung gesetzt ..." -#: FlatCAMApp.py:5019 +#: FlatCAMApp.py:5029 msgid "Preferences" msgstr "Einstellungen" -#: FlatCAMApp.py:5039 +#: FlatCAMApp.py:5049 msgid "[WARNING_NOTCL] No object selected to Flip on Y axis." msgstr "[WARNING_NOTCL] Kein Objekt ausgewählt, um auf der Y-Achse zu kippen." -#: FlatCAMApp.py:5064 +#: FlatCAMApp.py:5074 msgid "[success] Flip on Y axis done." msgstr "[success] Y-Achse umdrehen fertig." -#: FlatCAMApp.py:5066 FlatCAMApp.py:5106 +#: FlatCAMApp.py:5076 FlatCAMApp.py:5116 #: flatcamEditors/FlatCAMGeoEditor.py:1355 #: flatcamEditors/FlatCAMGrbEditor.py:5343 flatcamTools/ToolTransform.py:748 #, python-format msgid "[ERROR_NOTCL] Due of %s, Flip action was not executed." msgstr "[ERROR_NOTCL] Aufgrund von %s wurde die Flip-Aktion nicht ausgeführt." -#: FlatCAMApp.py:5079 +#: FlatCAMApp.py:5089 msgid "[WARNING_NOTCL] No object selected to Flip on X axis." msgstr "[WARNING_NOTCL] Kein Objekt ausgewählt, um auf der X-Achse zu kippen." -#: FlatCAMApp.py:5104 +#: FlatCAMApp.py:5114 msgid "[success] Flip on X axis done." msgstr "[success] Dreh auf der X-Achse fertig." -#: FlatCAMApp.py:5119 +#: FlatCAMApp.py:5129 msgid "[WARNING_NOTCL] No object selected to Rotate." msgstr "[WARNING_NOTCL] Kein Objekt zum Drehen ausgewählt." -#: FlatCAMApp.py:5122 FlatCAMApp.py:5167 FlatCAMApp.py:5198 +#: FlatCAMApp.py:5132 FlatCAMApp.py:5177 FlatCAMApp.py:5208 msgid "Transform" msgstr "Verwandeln" -#: FlatCAMApp.py:5122 FlatCAMApp.py:5167 FlatCAMApp.py:5198 +#: FlatCAMApp.py:5132 FlatCAMApp.py:5177 FlatCAMApp.py:5208 msgid "Enter the Angle value:" msgstr "Geben Sie den Winkelwert ein:" -#: FlatCAMApp.py:5152 +#: FlatCAMApp.py:5162 msgid "[success] Rotation done." msgstr "[success] Rotation erfolgt." -#: FlatCAMApp.py:5154 flatcamEditors/FlatCAMGeoEditor.py:1298 +#: FlatCAMApp.py:5164 flatcamEditors/FlatCAMGeoEditor.py:1298 #: flatcamEditors/FlatCAMGrbEditor.py:5272 flatcamTools/ToolTransform.py:677 #, python-format msgid "[ERROR_NOTCL] Due of %s, rotation movement was not executed." msgstr "" "[ERROR_NOTCL] Aufgrund von %s wurde keine Rotationsbewegung ausgeführt." -#: FlatCAMApp.py:5165 +#: FlatCAMApp.py:5175 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on X axis." msgstr "" "[WARNING_NOTCL] Kein Objekt für Neigung / Scherung auf der X-Achse " "ausgewählt." -#: FlatCAMApp.py:5186 +#: FlatCAMApp.py:5196 msgid "[success] Skew on X axis done." msgstr "[success] Neigung auf der X-Achse fertig." -#: FlatCAMApp.py:5196 +#: FlatCAMApp.py:5206 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on Y axis." msgstr "" "[WARNING_NOTCL] Kein Objekt für Neigung / Scherung auf der Y-Achse " "ausgewählt." -#: FlatCAMApp.py:5217 +#: FlatCAMApp.py:5227 msgid "[success] Skew on Y axis done." msgstr "[success] Neigung auf der Y-Achse fertig." -#: FlatCAMApp.py:5287 +#: FlatCAMApp.py:5297 msgid "Grid On/Off" msgstr "Raster ein/aus" -#: FlatCAMApp.py:5300 flatcamEditors/FlatCAMGeoEditor.py:937 +#: FlatCAMApp.py:5310 flatcamEditors/FlatCAMGeoEditor.py:937 #: flatcamEditors/FlatCAMGrbEditor.py:2381 #: flatcamEditors/FlatCAMGrbEditor.py:4861 flatcamGUI/ObjectUI.py:991 #: flatcamTools/ToolDblSided.py:160 flatcamTools/ToolDblSided.py:208 @@ -468,7 +468,7 @@ msgstr "Raster ein/aus" msgid "Add" msgstr "Hinzufügen" -#: FlatCAMApp.py:5301 FlatCAMObj.py:3296 +#: FlatCAMApp.py:5311 FlatCAMObj.py:3295 #: flatcamEditors/FlatCAMGrbEditor.py:2386 flatcamGUI/FlatCAMGUI.py:527 #: flatcamGUI/FlatCAMGUI.py:724 flatcamGUI/FlatCAMGUI.py:1616 #: flatcamGUI/FlatCAMGUI.py:1953 flatcamGUI/ObjectUI.py:1007 @@ -477,15 +477,15 @@ msgstr "Hinzufügen" msgid "Delete" msgstr "Löschen" -#: FlatCAMApp.py:5314 +#: FlatCAMApp.py:5324 msgid "New Grid ..." msgstr "Neues Raster ..." -#: FlatCAMApp.py:5315 +#: FlatCAMApp.py:5325 msgid "Enter a Grid Value:" msgstr "Geben Sie einen Rasterwert ein:" -#: FlatCAMApp.py:5323 FlatCAMApp.py:5350 +#: FlatCAMApp.py:5333 FlatCAMApp.py:5360 msgid "" "[WARNING_NOTCL] Please enter a grid value with non-zero value, in Float " "format." @@ -493,52 +493,52 @@ msgstr "" "[WARNING_NOTCL] Bitte geben Sie im Float-Format einen Rasterwert mit einem " "Wert ungleich Null ein." -#: FlatCAMApp.py:5329 +#: FlatCAMApp.py:5339 msgid "[success] New Grid added ..." msgstr "[success] Neues Netz hinzugefügt ..." -#: FlatCAMApp.py:5332 +#: FlatCAMApp.py:5342 msgid "[WARNING_NOTCL] Grid already exists ..." msgstr "[WARNING_NOTCL] Netz existiert bereits ..." -#: FlatCAMApp.py:5335 +#: FlatCAMApp.py:5345 msgid "[WARNING_NOTCL] Adding New Grid cancelled ..." msgstr "[WARNING_NOTCL] Neues Netz wurde abgebrochen ..." -#: FlatCAMApp.py:5357 +#: FlatCAMApp.py:5367 msgid "[ERROR_NOTCL] Grid Value does not exist ..." msgstr "[ERROR_NOTCL] Rasterwert existiert nicht ..." -#: FlatCAMApp.py:5360 +#: FlatCAMApp.py:5370 msgid "[success] Grid Value deleted ..." msgstr "[success] Rasterwert gelöscht ..." -#: FlatCAMApp.py:5363 +#: FlatCAMApp.py:5373 msgid "[WARNING_NOTCL] Delete Grid value cancelled ..." msgstr "[WARNING_NOTCL] Rasterwert löschen abgebrochen ..." -#: FlatCAMApp.py:5402 +#: FlatCAMApp.py:5412 msgid "[WARNING_NOTCL] No object selected to copy it's name" msgstr "[WARNING_NOTCL] Kein Objekt zum Kopieren des Namens ausgewählt" -#: FlatCAMApp.py:5406 +#: FlatCAMApp.py:5416 msgid "Name copied on clipboard ..." msgstr "Name in Zwischenablage kopiert ..." -#: FlatCAMApp.py:5448 flatcamEditors/FlatCAMGrbEditor.py:3901 +#: FlatCAMApp.py:5458 flatcamEditors/FlatCAMGrbEditor.py:3901 msgid "[success] Coordinates copied to clipboard." msgstr "[success] Koordinaten in die Zwischenablage kopiert." -#: FlatCAMApp.py:5704 FlatCAMApp.py:5707 FlatCAMApp.py:5710 FlatCAMApp.py:5713 -#: FlatCAMApp.py:5728 FlatCAMApp.py:5731 FlatCAMApp.py:5734 FlatCAMApp.py:5737 -#: FlatCAMApp.py:5777 FlatCAMApp.py:5780 FlatCAMApp.py:5783 FlatCAMApp.py:5786 +#: FlatCAMApp.py:5714 FlatCAMApp.py:5717 FlatCAMApp.py:5720 FlatCAMApp.py:5723 +#: FlatCAMApp.py:5738 FlatCAMApp.py:5741 FlatCAMApp.py:5744 FlatCAMApp.py:5747 +#: FlatCAMApp.py:5787 FlatCAMApp.py:5790 FlatCAMApp.py:5793 FlatCAMApp.py:5796 #: ObjectCollection.py:719 ObjectCollection.py:722 ObjectCollection.py:725 #: ObjectCollection.py:728 #, python-brace-format msgid "[selected]{name} selected" msgstr "[selected]{name} ausgewählt" -#: FlatCAMApp.py:5903 +#: FlatCAMApp.py:5913 msgid "" "There are files/objects opened in FlatCAM.\n" "Creating a New project will delete them.\n" @@ -548,112 +548,112 @@ msgstr "" "Wenn Sie ein neues Projekt erstellen, werden diese gelöscht.\n" "Möchten Sie das Projekt speichern?" -#: FlatCAMApp.py:5924 +#: FlatCAMApp.py:5934 msgid "[success] New Project created..." msgstr "[success] Neues Projekt erstellt ..." -#: FlatCAMApp.py:6040 FlatCAMApp.py:6043 flatcamGUI/FlatCAMGUI.py:608 +#: FlatCAMApp.py:6050 FlatCAMApp.py:6053 flatcamGUI/FlatCAMGUI.py:608 #: flatcamGUI/FlatCAMGUI.py:1832 msgid "Open Gerber" msgstr "Gerber öffnen" -#: FlatCAMApp.py:6048 +#: FlatCAMApp.py:6058 msgid "[WARNING_NOTCL] Open Gerber cancelled." msgstr "[WARNING_NOTCL] Offener Gerber abgebrochen." -#: FlatCAMApp.py:6069 FlatCAMApp.py:6072 flatcamGUI/FlatCAMGUI.py:609 +#: FlatCAMApp.py:6079 FlatCAMApp.py:6082 flatcamGUI/FlatCAMGUI.py:609 #: flatcamGUI/FlatCAMGUI.py:1833 msgid "Open Excellon" msgstr "Excellon öffnen" -#: FlatCAMApp.py:6077 +#: FlatCAMApp.py:6087 msgid "[WARNING_NOTCL] Open Excellon cancelled." msgstr "[WARNING_NOTCL] Offener Excellon abgebrochen." -#: FlatCAMApp.py:6099 FlatCAMApp.py:6102 +#: FlatCAMApp.py:6109 FlatCAMApp.py:6112 msgid "Open G-Code" msgstr "G-Code öffnen" -#: FlatCAMApp.py:6107 +#: FlatCAMApp.py:6117 msgid "[WARNING_NOTCL] Open G-Code cancelled." msgstr "[WARNING_NOTCL] Geöffneter G-Code wurde abgebrochen." -#: FlatCAMApp.py:6125 FlatCAMApp.py:6128 +#: FlatCAMApp.py:6135 FlatCAMApp.py:6138 msgid "Open Project" msgstr "Offenes Projekt" -#: FlatCAMApp.py:6136 +#: FlatCAMApp.py:6146 msgid "[WARNING_NOTCL] Open Project cancelled." msgstr "[WARNING_NOTCL] Projekt abbrechen abgebrochen." -#: FlatCAMApp.py:6155 FlatCAMApp.py:6158 +#: FlatCAMApp.py:6165 FlatCAMApp.py:6168 msgid "Open Configuration File" msgstr "Offene Einstellungsdatei" -#: FlatCAMApp.py:6162 +#: FlatCAMApp.py:6172 msgid "[WARNING_NOTCL] Open Config cancelled." msgstr "[WARNING_NOTCL] Offene Konfiguration abgebrochen." -#: FlatCAMApp.py:6177 FlatCAMApp.py:6428 FlatCAMApp.py:8581 FlatCAMApp.py:8601 -#: FlatCAMApp.py:8622 FlatCAMApp.py:8644 +#: FlatCAMApp.py:6187 FlatCAMApp.py:6438 FlatCAMApp.py:8591 FlatCAMApp.py:8611 +#: FlatCAMApp.py:8632 FlatCAMApp.py:8654 msgid "[WARNING_NOTCL] No object selected." msgstr "[WARNING_NOTCL] Kein Objekt ausgewählt" -#: FlatCAMApp.py:6178 FlatCAMApp.py:6429 +#: FlatCAMApp.py:6188 FlatCAMApp.py:6439 msgid "Please Select a Geometry object to export" msgstr "Bitte wählen Sie ein Geometrieobjekt zum Exportieren aus" -#: FlatCAMApp.py:6189 +#: FlatCAMApp.py:6199 msgid "[ERROR_NOTCL] Only Geometry, Gerber and CNCJob objects can be used." msgstr "" "[ERROR_NOTCL] Es können nur Geometrie-, Gerber- und CNCJob-Objekte verwendet " "werden." -#: FlatCAMApp.py:6202 FlatCAMApp.py:6206 +#: FlatCAMApp.py:6212 FlatCAMApp.py:6216 msgid "Export SVG" msgstr "SVG exportieren" -#: FlatCAMApp.py:6211 +#: FlatCAMApp.py:6221 msgid "[WARNING_NOTCL] Export SVG cancelled." msgstr "[WARNING_NOTCL] Export SVG abgebrochen." -#: FlatCAMApp.py:6230 +#: FlatCAMApp.py:6240 msgid "[[WARNING_NOTCL]] Data must be a 3D array with last dimension 3 or 4" msgstr "" "[WARNING_NOTCL] Daten müssen ein 3D-Array mit der letzten Dimension 3 oder 4 " "sein" -#: FlatCAMApp.py:6236 FlatCAMApp.py:6240 +#: FlatCAMApp.py:6246 FlatCAMApp.py:6250 msgid "Export PNG Image" msgstr "PNG-Bild exportieren" -#: FlatCAMApp.py:6245 +#: FlatCAMApp.py:6255 msgid "Export PNG cancelled." msgstr "Export PNG abgebrochen." -#: FlatCAMApp.py:6264 +#: FlatCAMApp.py:6274 msgid "" "[WARNING_NOTCL] No object selected. Please select an Gerber object to export." msgstr "" "[WARNING_NOTCL] Kein Objekt ausgewählt. Bitte wählen Sie ein Gerber-Objekt " "aus, das Sie exportieren möchten." -#: FlatCAMApp.py:6269 FlatCAMApp.py:6392 +#: FlatCAMApp.py:6279 FlatCAMApp.py:6402 msgid "" "[ERROR_NOTCL] Failed. Only Gerber objects can be saved as Gerber files..." msgstr "" "[ERROR_NOTCL] Fehlgeschlagen. Nur Gerber-Objekte können als Gerber-Dateien " "gespeichert werden ..." -#: FlatCAMApp.py:6281 +#: FlatCAMApp.py:6291 msgid "Save Gerber source file" msgstr "Gerber-Quelldatei speichern" -#: FlatCAMApp.py:6286 +#: FlatCAMApp.py:6296 msgid "[WARNING_NOTCL] Save Gerber source file cancelled." msgstr "[WARNING_NOTCL] Gerber Quelldatei speichern abgebrochen." -#: FlatCAMApp.py:6305 +#: FlatCAMApp.py:6315 msgid "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." @@ -661,22 +661,22 @@ msgstr "" "[WARNING_NOTCL] Kein Objekt ausgewählt Bitte wählen Sie ein Excellon-Objekt " "zum Exportieren aus." -#: FlatCAMApp.py:6310 FlatCAMApp.py:6351 +#: FlatCAMApp.py:6320 FlatCAMApp.py:6361 msgid "" "[ERROR_NOTCL] Failed. Only Excellon objects can be saved as Excellon files..." msgstr "" "[ERROR_NOTCL] Fehlgeschlagen. Nur Excellon-Objekte können als Excellon-" "Dateien gespeichert werden ..." -#: FlatCAMApp.py:6318 FlatCAMApp.py:6322 +#: FlatCAMApp.py:6328 FlatCAMApp.py:6332 msgid "Save Excellon source file" msgstr "Speichern Sie die Excellon-Quelldatei" -#: FlatCAMApp.py:6327 +#: FlatCAMApp.py:6337 msgid "[WARNING_NOTCL] Saving Excellon source file cancelled." msgstr "[WARNING_NOTCL] Speichern der Excellon-Quelldatei abgebrochen." -#: FlatCAMApp.py:6346 +#: FlatCAMApp.py:6356 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." @@ -684,70 +684,70 @@ msgstr "" "[WARNING_NOTCL] Kein Objekt ausgewählt. Bitte wählen Sie ein Excellon-Objekt " "aus, das Sie exportieren möchten." -#: FlatCAMApp.py:6359 FlatCAMApp.py:6363 +#: FlatCAMApp.py:6369 FlatCAMApp.py:6373 msgid "Export Excellon" msgstr "Excellon exportieren" -#: FlatCAMApp.py:6368 +#: FlatCAMApp.py:6378 msgid "[WARNING_NOTCL] Export Excellon cancelled." msgstr "[WARNING_NOTCL] Export Excellon wurde abgebrochen." -#: FlatCAMApp.py:6387 +#: FlatCAMApp.py:6397 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Gerber object to export." msgstr "" "[WARNING_NOTCL] Kein Objekt ausgewählt. Bitte wählen Sie ein Gerber-Objekt " "aus, das Sie exportieren möchten." -#: FlatCAMApp.py:6400 FlatCAMApp.py:6404 +#: FlatCAMApp.py:6410 FlatCAMApp.py:6414 msgid "Export Gerber" msgstr "Gerber exportieren" -#: FlatCAMApp.py:6409 +#: FlatCAMApp.py:6419 msgid "[WARNING_NOTCL] Export Gerber cancelled." msgstr "[WARNING_NOTCL] Export Gerber abgebrochen." -#: FlatCAMApp.py:6439 +#: FlatCAMApp.py:6449 msgid "[ERROR_NOTCL] Only Geometry objects can be used." msgstr "[ERROR_NOTCL] Es können nur Geometrieobjekte verwendet werden." -#: FlatCAMApp.py:6453 FlatCAMApp.py:6457 +#: FlatCAMApp.py:6463 FlatCAMApp.py:6467 msgid "Export DXF" msgstr "DXF exportieren" -#: FlatCAMApp.py:6463 +#: FlatCAMApp.py:6473 msgid "[WARNING_NOTCL] Export DXF cancelled." msgstr "[WARNING_NOTCL] Export DXF wurde abgebrochen." -#: FlatCAMApp.py:6483 FlatCAMApp.py:6486 +#: FlatCAMApp.py:6493 FlatCAMApp.py:6496 msgid "Import SVG" msgstr "SVG importieren" -#: FlatCAMApp.py:6495 +#: FlatCAMApp.py:6505 msgid "[WARNING_NOTCL] Open SVG cancelled." msgstr "[WARNING_NOTCL] Open SVG abgebrochen." -#: FlatCAMApp.py:6514 FlatCAMApp.py:6518 +#: FlatCAMApp.py:6524 FlatCAMApp.py:6528 msgid "Import DXF" msgstr "Importieren Sie DXF" -#: FlatCAMApp.py:6527 +#: FlatCAMApp.py:6537 msgid "[WARNING_NOTCL] Open DXF cancelled." msgstr "[WARNING_NOTCL] Open DXF cancelled." -#: FlatCAMApp.py:6545 +#: FlatCAMApp.py:6555 #, python-format msgid "%s" msgstr "%s" -#: FlatCAMApp.py:6565 +#: FlatCAMApp.py:6575 msgid "" "[WARNING_NOTCL] Select an Gerber or Excellon file to view it's source file." msgstr "" "[WARNING_NOTCL] Wählen Sie eine Gerber- oder Excellon-Datei aus, um die " "Quelldatei anzuzeigen." -#: FlatCAMApp.py:6572 +#: FlatCAMApp.py:6582 msgid "" "[WARNING_NOTCL] There is no selected object for which to see it's source " "file code." @@ -755,25 +755,25 @@ msgstr "" "[WARNING_NOTCL] Es gibt kein ausgewähltes Objekt, für das man seinen " "Quelldateien sehen kann." -#: FlatCAMApp.py:6580 +#: FlatCAMApp.py:6590 msgid "Source Editor" msgstr "Quelleditor" -#: FlatCAMApp.py:6590 +#: FlatCAMApp.py:6600 #, python-format msgid "[ERROR]App.on_view_source() -->%s" msgstr "[ERROR]App.on_view_source() -->%s" -#: FlatCAMApp.py:6602 FlatCAMApp.py:7744 FlatCAMObj.py:5581 +#: FlatCAMApp.py:6612 FlatCAMApp.py:7754 FlatCAMObj.py:5588 #: flatcamTools/ToolSolderPaste.py:1278 msgid "Code Editor" msgstr "Code-Editor" -#: FlatCAMApp.py:6614 +#: FlatCAMApp.py:6624 msgid "Script Editor" msgstr "Script Editor" -#: FlatCAMApp.py:6617 +#: FlatCAMApp.py:6627 msgid "" "#\n" "# CREATE A NEW FLATCAM TCL SCRIPT\n" @@ -817,98 +817,98 @@ msgstr "" "#\n" "\n" -#: FlatCAMApp.py:6640 FlatCAMApp.py:6643 +#: FlatCAMApp.py:6650 FlatCAMApp.py:6653 msgid "Open TCL script" msgstr "Öffnen Sie das TCL-Skript" -#: FlatCAMApp.py:6651 +#: FlatCAMApp.py:6661 msgid "[WARNING_NOTCL] Open TCL script cancelled." msgstr "[WARNING_NOTCL] Open TCL-Skript wurde abgebrochen." -#: FlatCAMApp.py:6663 +#: FlatCAMApp.py:6673 #, python-format msgid "[ERROR]App.on_fileopenscript() -->%s" msgstr "[ERROR]App.on_fileopenscript() -->%s" -#: FlatCAMApp.py:6689 FlatCAMApp.py:6692 +#: FlatCAMApp.py:6699 FlatCAMApp.py:6702 msgid "Run TCL script" msgstr "Führen Sie das TCL-Skript aus" -#: FlatCAMApp.py:6700 +#: FlatCAMApp.py:6710 msgid "[WARNING_NOTCL] Run TCL script cancelled." msgstr "[WARNING_NOTCL] Das TCL-Skript wird abgebrochen." -#: FlatCAMApp.py:6750 FlatCAMApp.py:6754 +#: FlatCAMApp.py:6760 FlatCAMApp.py:6764 msgid "Save Project As ..." msgstr "Projekt speichern als ..." -#: FlatCAMApp.py:6751 +#: FlatCAMApp.py:6761 #, python-brace-format msgid "{l_save}/Project_{date}" msgstr "{l_save}/Projekt_{date}" -#: FlatCAMApp.py:6759 +#: FlatCAMApp.py:6769 msgid "[WARNING_NOTCL] Save Project cancelled." msgstr "[WARNING_NOTCL] Projekt speichern abgebrochen" -#: FlatCAMApp.py:6803 +#: FlatCAMApp.py:6813 msgid "Exporting SVG" msgstr "SVG exportieren" -#: FlatCAMApp.py:6837 FlatCAMApp.py:6943 FlatCAMApp.py:7058 +#: FlatCAMApp.py:6847 FlatCAMApp.py:6953 FlatCAMApp.py:7068 #, python-format msgid "[success] SVG file exported to %s" msgstr "[success] SVG-Datei in exportiert %s" -#: FlatCAMApp.py:6868 FlatCAMApp.py:6989 +#: FlatCAMApp.py:6878 FlatCAMApp.py:6999 #, python-format msgid "[WARNING_NOTCL] No object Box. Using instead %s" msgstr "[WARNING_NOTCL] Kein Objektfeld. Stattdessen verwenden %s" -#: FlatCAMApp.py:6946 FlatCAMApp.py:7061 +#: FlatCAMApp.py:6956 FlatCAMApp.py:7071 msgid "Generating Film ... Please wait." msgstr "Film wird erstellt ... Bitte warten Sie." -#: FlatCAMApp.py:7209 +#: FlatCAMApp.py:7219 #, python-format msgid "[success] Excellon file exported to %s" msgstr "[success] Excellon-Datei nach exportiert %s" -#: FlatCAMApp.py:7216 +#: FlatCAMApp.py:7226 msgid "Exporting Excellon" msgstr "Excellon exportieren" -#: FlatCAMApp.py:7221 FlatCAMApp.py:7228 +#: FlatCAMApp.py:7231 FlatCAMApp.py:7238 msgid "[ERROR_NOTCL] Could not export Excellon file." msgstr "[ERROR_NOTCL] Excellon-Datei konnte nicht exportiert werden." -#: FlatCAMApp.py:7326 +#: FlatCAMApp.py:7336 #, python-format msgid "[success] Gerber file exported to %s" msgstr "[success] Gerber-Datei in exportiert %s" -#: FlatCAMApp.py:7333 +#: FlatCAMApp.py:7343 msgid "Exporting Gerber" msgstr "Gerber exportieren" -#: FlatCAMApp.py:7338 FlatCAMApp.py:7345 +#: FlatCAMApp.py:7348 FlatCAMApp.py:7355 msgid "[ERROR_NOTCL] Could not export Gerber file." msgstr "[ERROR_NOTCL] Gerber-Datei konnte nicht exportiert werden." -#: FlatCAMApp.py:7385 +#: FlatCAMApp.py:7395 #, python-format msgid "[success] DXF file exported to %s" msgstr "[success] DXF-Datei in exportiert %s" -#: FlatCAMApp.py:7391 +#: FlatCAMApp.py:7401 msgid "Exporting DXF" msgstr "DXF exportieren" -#: FlatCAMApp.py:7396 FlatCAMApp.py:7403 +#: FlatCAMApp.py:7406 FlatCAMApp.py:7413 msgid "[[WARNING_NOTCL]] Could not export DXF file." msgstr "[WARNING_NOTCL] DXF-Datei konnte nicht exportiert werden." -#: FlatCAMApp.py:7423 FlatCAMApp.py:7465 FlatCAMApp.py:7509 +#: FlatCAMApp.py:7433 FlatCAMApp.py:7475 FlatCAMApp.py:7519 msgid "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" @@ -916,99 +916,99 @@ msgstr "" "[ERROR_NOTCL] Nicht unterstützte Art wird als Parameter ausgewählt. Nur " "Geometrie und Gerber werden unterstützt" -#: FlatCAMApp.py:7433 +#: FlatCAMApp.py:7443 msgid "Importing SVG" msgstr "SVG importieren" -#: FlatCAMApp.py:7444 FlatCAMApp.py:7486 FlatCAMApp.py:7529 FlatCAMApp.py:7606 -#: FlatCAMApp.py:7667 FlatCAMApp.py:7730 flatcamTools/ToolPDF.py:212 +#: FlatCAMApp.py:7454 FlatCAMApp.py:7496 FlatCAMApp.py:7539 FlatCAMApp.py:7616 +#: FlatCAMApp.py:7677 FlatCAMApp.py:7740 flatcamTools/ToolPDF.py:212 #, python-format msgid "[success] Opened: %s" msgstr "[success] Geöffnet: %s" -#: FlatCAMApp.py:7475 +#: FlatCAMApp.py:7485 msgid "Importing DXF" msgstr "DXF importieren" -#: FlatCAMApp.py:7517 +#: FlatCAMApp.py:7527 msgid "Importing Image" msgstr "Bild importieren" -#: FlatCAMApp.py:7558 FlatCAMApp.py:7560 +#: FlatCAMApp.py:7568 FlatCAMApp.py:7570 #, python-format msgid "[ERROR_NOTCL] Failed to open file: %s" msgstr "[ERROR_NOTCL] Datei konnte nicht geöffnet werden: %s" -#: FlatCAMApp.py:7563 +#: FlatCAMApp.py:7573 #, python-brace-format msgid "[ERROR_NOTCL] Failed to parse file: {name}. {error}" msgstr "[ERROR_NOTCL] Fehler beim Parsen der Datei: {name}. {error}" -#: FlatCAMApp.py:7570 FlatCAMObj.py:4259 +#: FlatCAMApp.py:7580 FlatCAMObj.py:4266 #: flatcamEditors/FlatCAMExcEditor.py:2077 msgid "[ERROR] An internal error has ocurred. See shell.\n" msgstr "[ERROR] Ein interner Fehler ist aufgetreten. Siehe Shell.\n" -#: FlatCAMApp.py:7579 +#: FlatCAMApp.py:7589 msgid "" "[ERROR_NOTCL] Object is not Gerber file or empty. Aborting object creation." msgstr "" "[ERROR_NOTCL] Objekt ist keine Gerber-Datei oder leer. Abbruch der " "Objekterstellung" -#: FlatCAMApp.py:7587 +#: FlatCAMApp.py:7597 msgid "Opening Gerber" msgstr "Gerber öffnen" -#: FlatCAMApp.py:7597 +#: FlatCAMApp.py:7607 msgid "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." msgstr "" "[ERROR_NOTCL] Gerber öffnen ist fehlgeschlagen. Wahrscheinlich keine Gerber-" "Datei." -#: FlatCAMApp.py:7630 flatcamTools/ToolPcbWizard.py:421 +#: FlatCAMApp.py:7640 flatcamTools/ToolPcbWizard.py:421 msgid "[ERROR_NOTCL] This is not Excellon file." msgstr "[ERROR_NOTCL] Dies ist keine Excellon-Datei." -#: FlatCAMApp.py:7633 +#: FlatCAMApp.py:7643 #, python-format msgid "[ERROR_NOTCL] Cannot open file: %s" msgstr "[ERROR_NOTCL] Kann Datei nicht öffnen: %s" -#: FlatCAMApp.py:7638 flatcamTools/ToolPcbWizard.py:429 +#: FlatCAMApp.py:7648 flatcamTools/ToolPcbWizard.py:429 msgid "[ERROR_NOTCL] An internal error has occurred. See shell.\n" msgstr "[ERROR_NOTCL] Ein interner Fehler ist aufgetreten. Siehe Shell.\n" -#: FlatCAMApp.py:7651 flatcamTools/ToolPDF.py:262 +#: FlatCAMApp.py:7661 flatcamTools/ToolPDF.py:262 #: flatcamTools/ToolPcbWizard.py:442 #, python-format msgid "[ERROR_NOTCL] No geometry found in file: %s" msgstr "[ERROR_NOTCL] Keine Geometrie in der Datei gefunden: %s" -#: FlatCAMApp.py:7654 +#: FlatCAMApp.py:7664 msgid "Opening Excellon." msgstr "Eröffnung Excellon." -#: FlatCAMApp.py:7660 +#: FlatCAMApp.py:7670 msgid "[ERROR_NOTCL] Open Excellon file failed. Probable not an Excellon file." msgstr "" "[ERROR_NOTCL] Die Excellon-Datei konnte nicht geöffnet werden. " "Wahrscheinlich keine Excellon-Datei." -#: FlatCAMApp.py:7697 +#: FlatCAMApp.py:7707 #, python-format msgid "[ERROR_NOTCL] Failed to open %s" msgstr "[ERROR_NOTCL] Gescheitert zu öffnen %s" -#: FlatCAMApp.py:7707 +#: FlatCAMApp.py:7717 msgid "[ERROR_NOTCL] This is not GCODE" msgstr "[ERROR_NOTCL] Dies ist kein GCODE" -#: FlatCAMApp.py:7713 +#: FlatCAMApp.py:7723 msgid "Opening G-Code." msgstr "G-Code öffnen." -#: FlatCAMApp.py:7721 +#: FlatCAMApp.py:7731 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 " @@ -1019,26 +1019,26 @@ msgstr "" "Der Versuch, ein FlatCAM-CNCJob-Objekt aus einer G-Code-Datei zu erstellen, " "ist während der Verarbeitung fehlgeschlagen" -#: FlatCAMApp.py:7761 +#: FlatCAMApp.py:7771 #, python-format msgid "[ERROR_NOTCL] Failed to open config file: %s" msgstr "[ERROR_NOTCL] Fehler beim Öffnen der Konfigurationsdatei: %s" -#: FlatCAMApp.py:7787 FlatCAMApp.py:7804 +#: FlatCAMApp.py:7797 FlatCAMApp.py:7814 #, python-format msgid "[ERROR_NOTCL] Failed to open project file: %s" msgstr "[ERROR_NOTCL] Projektdatei konnte nicht geöffnet werden: %s" -#: FlatCAMApp.py:7827 +#: FlatCAMApp.py:7837 #, python-format msgid "[success] Project loaded from: %s" msgstr "[success] Projekt geladen von: %s" -#: FlatCAMApp.py:7932 +#: FlatCAMApp.py:7942 msgid "Available commands:\n" msgstr "Verfügbare Befehle:\n" -#: FlatCAMApp.py:7934 +#: FlatCAMApp.py:7944 msgid "" "\n" "\n" @@ -1050,28 +1050,28 @@ msgstr "" "Geben Sie help für die Verwendung ein.\n" "Beispiel: help open_gerber" -#: FlatCAMApp.py:8084 +#: FlatCAMApp.py:8094 msgid "Shows list of commands." msgstr "Zeigt eine Liste von Befehlen an." -#: FlatCAMApp.py:8141 +#: FlatCAMApp.py:8151 msgid "[ERROR_NOTCL] Failed to load recent item list." msgstr "[ERROR_NOTCL] Fehler beim Laden der letzten Elementliste." -#: FlatCAMApp.py:8148 +#: FlatCAMApp.py:8158 msgid "[ERROR_NOTCL] Failed to parse recent item list." msgstr "" "[ERROR_NOTCL] Liste der letzten Artikel konnte nicht analysiert werden." -#: FlatCAMApp.py:8192 +#: FlatCAMApp.py:8202 msgid "Clear Recent files" msgstr "Letzte Dateien löschen" -#: FlatCAMApp.py:8209 flatcamGUI/FlatCAMGUI.py:968 +#: FlatCAMApp.py:8219 flatcamGUI/FlatCAMGUI.py:968 msgid "Shortcut Key List" msgstr " Liste der Tastenkombinationen " -#: FlatCAMApp.py:8216 +#: FlatCAMApp.py:8226 msgid "" "\n" "

Selected Tab - Choose an Item from " @@ -1171,27 +1171,27 @@ msgstr "" "strong> oder über eine eigene Tastenkombination: F3. " "

" -#: FlatCAMApp.py:8323 +#: FlatCAMApp.py:8333 msgid "[WARNING_NOTCL] Failed checking for latest version. Could not connect." msgstr "" "[WARNING_NOTCL] Fehler bei der Suche nach der neuesten Version. Konnte keine " "Verbindung herstellen." -#: FlatCAMApp.py:8330 +#: FlatCAMApp.py:8340 msgid "[ERROR_NOTCL] Could not parse information about latest version." msgstr "" "[ERROR_NOTCL] Informationen zur neuesten Version konnten nicht analysiert " "werden." -#: FlatCAMApp.py:8340 +#: FlatCAMApp.py:8350 msgid "[success] FlatCAM is up to date!" msgstr "[success] FlatCAM ist auf dem neuesten Version!" -#: FlatCAMApp.py:8345 +#: FlatCAMApp.py:8355 msgid "Newer Version Available" msgstr "Neuere Version verfügbar" -#: FlatCAMApp.py:8346 +#: FlatCAMApp.py:8356 msgid "" "There is a newer version of FlatCAM available for download:\n" "\n" @@ -1199,58 +1199,58 @@ msgstr "" "Es gibt eine neuere Version von FlatCAM zum Download:\n" "\n" -#: FlatCAMApp.py:8348 +#: FlatCAMApp.py:8358 msgid "info" msgstr "Info" -#: FlatCAMApp.py:8367 +#: FlatCAMApp.py:8377 msgid "[success] All plots disabled." msgstr "[success] Alle Diagramme sind deaktiviert." -#: FlatCAMApp.py:8373 +#: FlatCAMApp.py:8383 msgid "[success] All non selected plots disabled." msgstr "[success] Alle nicht ausgewählten Diagramme sind deaktiviert." -#: FlatCAMApp.py:8379 +#: FlatCAMApp.py:8389 msgid "[success] All plots enabled." msgstr "[success] Alle Diagramme aktiviert." -#: FlatCAMApp.py:8385 +#: FlatCAMApp.py:8395 msgid "[success] Selected plots enabled..." msgstr "[success] Ausgewählte Grundstücke aktiviert ..." -#: FlatCAMApp.py:8393 +#: FlatCAMApp.py:8403 msgid "[success] Selected plots disabled..." msgstr "[success] Ausgewählte Grundstücke deaktiviert ..." -#: FlatCAMApp.py:8403 FlatCAMApp.py:8416 +#: FlatCAMApp.py:8413 FlatCAMApp.py:8426 msgid "Working ..." msgstr "Arbeiten ..." -#: FlatCAMApp.py:8450 +#: FlatCAMApp.py:8460 msgid "Saving FlatCAM Project" msgstr "FlatCAM-Projekt speichern" -#: FlatCAMApp.py:8471 FlatCAMApp.py:8502 +#: FlatCAMApp.py:8481 FlatCAMApp.py:8512 #, python-format msgid "[success] Project saved to: %s" msgstr "[success] Projekt gespeichert in: %s" -#: FlatCAMApp.py:8489 +#: FlatCAMApp.py:8499 #, python-format msgid "[ERROR_NOTCL] Failed to verify project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Fehler beim Überprüfen der Projektdatei:%s. Versuchen Sie es " "erneut zu speichern." -#: FlatCAMApp.py:8496 +#: FlatCAMApp.py:8506 #, python-format msgid "[ERROR_NOTCL] Failed to parse saved project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Die gespeicherte Projektdatei konnte nicht analysiert werden:" "%s. Versuchen Sie es erneut zu speichern." -#: FlatCAMApp.py:8504 +#: FlatCAMApp.py:8514 #, python-format msgid "[ERROR_NOTCL] Failed to save project file: %s. Retry to save it." msgstr "" @@ -1262,34 +1262,34 @@ msgstr "" msgid "[success] Name changed from {old} to {new}" msgstr "[success] Name geändert von {old} zu {new}" -#: FlatCAMObj.py:553 FlatCAMObj.py:2035 FlatCAMObj.py:3301 FlatCAMObj.py:5478 +#: FlatCAMObj.py:553 FlatCAMObj.py:2034 FlatCAMObj.py:3300 FlatCAMObj.py:5485 msgid "Basic" msgstr "Basic" -#: FlatCAMObj.py:565 FlatCAMObj.py:2051 FlatCAMObj.py:3323 FlatCAMObj.py:5484 +#: FlatCAMObj.py:565 FlatCAMObj.py:2050 FlatCAMObj.py:3322 FlatCAMObj.py:5491 msgid "Advanced" msgstr "Erweitert" -#: FlatCAMObj.py:928 FlatCAMObj.py:983 +#: FlatCAMObj.py:927 FlatCAMObj.py:982 #, python-format msgid "[success] Isolation geometry created: %s" msgstr "[success] Isolationsgeometrie erstellt: %s" -#: FlatCAMObj.py:1162 +#: FlatCAMObj.py:1161 msgid "Plotting Apertures" msgstr "Plotten Apertures" -#: FlatCAMObj.py:1878 flatcamEditors/FlatCAMExcEditor.py:1368 +#: FlatCAMObj.py:1877 flatcamEditors/FlatCAMExcEditor.py:1368 msgid "Total Drills" msgstr "Bohrungen insgesamt" -#: FlatCAMObj.py:1904 flatcamEditors/FlatCAMExcEditor.py:1400 +#: FlatCAMObj.py:1903 flatcamEditors/FlatCAMExcEditor.py:1400 msgid "Total Slots" msgstr "Schlitz insgesamt" -#: FlatCAMObj.py:2107 FlatCAMObj.py:3375 FlatCAMObj.py:3675 FlatCAMObj.py:3862 -#: FlatCAMObj.py:3875 FlatCAMObj.py:3992 FlatCAMObj.py:4409 FlatCAMObj.py:4647 -#: FlatCAMObj.py:5060 flatcamEditors/FlatCAMExcEditor.py:1474 +#: FlatCAMObj.py:2106 FlatCAMObj.py:3374 FlatCAMObj.py:3674 FlatCAMObj.py:3869 +#: FlatCAMObj.py:3882 FlatCAMObj.py:3999 FlatCAMObj.py:4416 FlatCAMObj.py:4654 +#: FlatCAMObj.py:5067 flatcamEditors/FlatCAMExcEditor.py:1474 #: flatcamTools/ToolCalculators.py:307 flatcamTools/ToolCalculators.py:318 #: flatcamTools/ToolCalculators.py:330 flatcamTools/ToolCalculators.py:345 #: flatcamTools/ToolCalculators.py:358 flatcamTools/ToolCalculators.py:372 @@ -1308,25 +1308,25 @@ msgstr "Schlitz insgesamt" msgid "[ERROR_NOTCL] Wrong value format entered, use a number." msgstr "[ERROR_NOTCL] Wrong value format entered, use a number." -#: FlatCAMObj.py:2331 FlatCAMObj.py:2423 FlatCAMObj.py:2546 +#: FlatCAMObj.py:2330 FlatCAMObj.py:2422 FlatCAMObj.py:2545 msgid "" "[ERROR_NOTCL] Please select one or more tools from the list and try again." msgstr "" "[ERROR_NOTCL] Bitte wählen Sie ein oder mehrere Werkzeuge aus der Liste aus " "und versuchen Sie es erneut." -#: FlatCAMObj.py:2338 +#: FlatCAMObj.py:2337 msgid "" "[ERROR_NOTCL] Milling tool for DRILLS is larger than hole size. Cancelled." msgstr "" "[ERROR_NOTCL] Das Fräswerkzeug für BOHRER ist größer als die Lochgröße. " "Abgebrochen." -#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 +#: FlatCAMObj.py:2351 FlatCAMObj.py:2446 FlatCAMObj.py:2565 msgid "Tool_nr" msgstr "Werkzeugnummer" -#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 +#: FlatCAMObj.py:2351 FlatCAMObj.py:2446 FlatCAMObj.py:2565 #: flatcamEditors/FlatCAMExcEditor.py:819 #: flatcamEditors/FlatCAMExcEditor.py:2020 flatcamGUI/ObjectUI.py:556 #: flatcamTools/ToolNonCopperClear.py:83 flatcamTools/ToolPaint.py:80 @@ -1334,22 +1334,22 @@ msgstr "Werkzeugnummer" msgid "Diameter" msgstr "Durchmesser" -#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 +#: FlatCAMObj.py:2351 FlatCAMObj.py:2446 FlatCAMObj.py:2565 msgid "Drills_Nr" msgstr "Bohrnummer" -#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 +#: FlatCAMObj.py:2351 FlatCAMObj.py:2446 FlatCAMObj.py:2565 msgid "Slots_Nr" msgstr "Schlitznummer" -#: FlatCAMObj.py:2433 +#: FlatCAMObj.py:2432 msgid "" "[ERROR_NOTCL] Milling tool for SLOTS is larger than hole size. Cancelled." msgstr "" "[ERROR_NOTCL] Das Fräswerkzeug für SCHLITZ ist größer als die Lochgröße. " "Abgebrochen." -#: FlatCAMObj.py:2608 FlatCAMObj.py:4297 FlatCAMObj.py:4513 FlatCAMObj.py:4830 +#: FlatCAMObj.py:2607 FlatCAMObj.py:4304 FlatCAMObj.py:4520 FlatCAMObj.py:4837 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"z_pdepth\"] or self." "options[\"z_pdepth\"]" @@ -1357,7 +1357,7 @@ msgstr "" "[ERROR_NOTCL] Falsches Wertformat für self.defaults [\"z_pdepth\"] oder self." "options [\"z_pdepth\"]" -#: FlatCAMObj.py:2620 FlatCAMObj.py:4309 FlatCAMObj.py:4525 FlatCAMObj.py:4842 +#: FlatCAMObj.py:2619 FlatCAMObj.py:4316 FlatCAMObj.py:4532 FlatCAMObj.py:4849 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"feedrate_probe\"] or " "self.options[\"feedrate_probe\"]" @@ -1365,11 +1365,11 @@ msgstr "" "[ERROR_NOTCL] Falsches Wertformat für self.defaults [\"feedrate_probe\"] " "oder self.options [\"feedrate_probe\"]" -#: FlatCAMObj.py:2652 FlatCAMObj.py:4718 FlatCAMObj.py:4723 FlatCAMObj.py:4873 +#: FlatCAMObj.py:2651 FlatCAMObj.py:4725 FlatCAMObj.py:4730 FlatCAMObj.py:4880 msgid "Generating CNC Code" msgstr "CNC-Code generieren" -#: FlatCAMObj.py:2678 FlatCAMObj.py:5019 camlib.py:5167 camlib.py:5626 +#: FlatCAMObj.py:2677 FlatCAMObj.py:5026 camlib.py:5167 camlib.py:5626 #: camlib.py:5889 msgid "" "[ERROR]The Toolchange X,Y field in Edit -> Preferences has to be in the " @@ -1380,62 +1380,62 @@ msgstr "" "muss das Format (x, y) haben.\n" "Aber jetzt gibt es nur einen Wert, nicht zwei." -#: FlatCAMObj.py:2998 FlatCAMObj.py:3918 FlatCAMObj.py:3919 FlatCAMObj.py:3928 +#: FlatCAMObj.py:2997 FlatCAMObj.py:3925 FlatCAMObj.py:3926 FlatCAMObj.py:3935 msgid "Iso" msgstr "Iso" -#: FlatCAMObj.py:2998 FlatCAMObj.py:3258 FlatCAMObj.py:3540 +#: FlatCAMObj.py:2997 FlatCAMObj.py:3257 FlatCAMObj.py:3539 msgid "Rough" msgstr "Rau" -#: FlatCAMObj.py:2998 +#: FlatCAMObj.py:2997 msgid "Finish" msgstr "Oberfläche" -#: FlatCAMObj.py:3294 flatcamGUI/FlatCAMGUI.py:526 flatcamGUI/FlatCAMGUI.py:722 +#: FlatCAMObj.py:3293 flatcamGUI/FlatCAMGUI.py:526 flatcamGUI/FlatCAMGUI.py:722 #: flatcamGUI/FlatCAMGUI.py:1615 flatcamGUI/FlatCAMGUI.py:1951 #: flatcamGUI/ObjectUI.py:999 msgid "Copy" msgstr "Kopieren" -#: FlatCAMObj.py:3510 +#: FlatCAMObj.py:3509 msgid "[ERROR_NOTCL] Please enter the desired tool diameter in Float format." msgstr "" "[ERROR_NOTCL] Bitte geben Sie den gewünschten Werkzeugdurchmesser im Real-" "Format ein." -#: FlatCAMObj.py:3585 +#: FlatCAMObj.py:3584 msgid "[success] Tool added in Tool Table." msgstr "[success] Werkzeug in der Werkzeugtabelle hinzugefügt." -#: FlatCAMObj.py:3590 +#: FlatCAMObj.py:3589 msgid "[ERROR_NOTCL] Default Tool added. Wrong value format entered." msgstr "" "[ERROR_NOTCL] Standardwerkzeug hinzugefügt Falsches Wertformat eingegeben." -#: FlatCAMObj.py:3620 FlatCAMObj.py:3630 +#: FlatCAMObj.py:3619 FlatCAMObj.py:3629 msgid "[WARNING_NOTCL] Failed. Select a tool to copy." msgstr "" "[WARNING_NOTCL] Fehlgeschlagen. Wählen Sie ein Werkzeug zum Kopieren aus." -#: FlatCAMObj.py:3659 +#: FlatCAMObj.py:3658 msgid "[success] Tool was copied in Tool Table." msgstr "[success] Das Werkzeug wurde in die Werkzeugtabelle kopiert." -#: FlatCAMObj.py:3692 +#: FlatCAMObj.py:3691 msgid "[success] Tool was edited in Tool Table." msgstr "[success] Das Werkzeug wurde in der Werkzeugtabelle bearbeitet." -#: FlatCAMObj.py:3723 FlatCAMObj.py:3733 +#: FlatCAMObj.py:3722 FlatCAMObj.py:3732 msgid "[WARNING_NOTCL] Failed. Select a tool to delete." msgstr "" "[WARNING_NOTCL] Fehlgeschlagen. Wählen Sie ein Werkzeug zum Löschen aus." -#: FlatCAMObj.py:3757 +#: FlatCAMObj.py:3756 msgid "[success] Tool was deleted in Tool Table." msgstr "[success] Werkzeug wurde in der Werkzeugtabelle gelöscht." -#: FlatCAMObj.py:4178 +#: FlatCAMObj.py:4185 #, python-format msgid "" "[WARNING_NOTCL] This Geometry can't be processed because it is %s geometry." @@ -1443,24 +1443,24 @@ msgstr "" "[WARNING_NOTCL] Diese Geometrie kann nicht verarbeitet werden, da es sich um " "%s Geometrie handelt." -#: FlatCAMObj.py:4195 +#: FlatCAMObj.py:4202 msgid "[ERROR_NOTCL] Wrong Tool Dia value format entered, use a number." msgstr "" "[ERROR_NOTCL] Falsches Werkzeug Dia-Wertformat eingegeben, verwenden Sie " "eine Zahl." -#: FlatCAMObj.py:4222 +#: FlatCAMObj.py:4229 msgid "[ERROR_NOTCL] Failed. No tool selected in the tool table ..." msgstr "" "[ERROR_NOTCL] Gescheitert. Kein Werkzeug in der Werkzeugtabelle " "ausgewählt ..." -#: FlatCAMObj.py:4260 +#: FlatCAMObj.py:4267 #, python-format msgid "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" msgstr "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" -#: FlatCAMObj.py:4418 FlatCAMObj.py:4656 +#: FlatCAMObj.py:4425 FlatCAMObj.py:4663 msgid "" "[WARNING] Tool Offset is selected in Tool Table but no value is provided.\n" "Add a Tool Offset or change the Offset Type." @@ -1469,22 +1469,22 @@ msgstr "" "jedoch kein Wert angegeben.\n" "Fügen Sie einen Werkzeugversatz hinzu oder ändern Sie den Versatztyp." -#: FlatCAMObj.py:4537 flatcamTools/ToolSolderPaste.py:1107 +#: FlatCAMObj.py:4544 flatcamTools/ToolSolderPaste.py:1107 #: flatcamTools/ToolSolderPaste.py:1162 msgid "[ERROR_NOTCL] Cancelled. Empty file, it has no geometry..." msgstr "[ERROR_NOTCL] Cancelled. Empty file, it has no geometry..." -#: FlatCAMObj.py:4906 FlatCAMObj.py:4916 camlib.py:3348 camlib.py:3357 +#: FlatCAMObj.py:4913 FlatCAMObj.py:4923 camlib.py:3348 camlib.py:3357 msgid "[ERROR_NOTCL] Scale factor has to be a number: integer or float." msgstr "" "[ERROR_NOTCL] Der Skalierungsfaktor muss eine Zahl sein: Ganzzahl oder " "Fließkommazahl." -#: FlatCAMObj.py:4954 +#: FlatCAMObj.py:4961 msgid "[success] Geometry Scale done." msgstr "[success] Geometrie Skalierung fertig." -#: FlatCAMObj.py:4971 camlib.py:3426 +#: FlatCAMObj.py:4978 camlib.py:3426 msgid "" "[ERROR_NOTCL] An (x,y) pair of values are needed. Probable you entered only " "one value in the Offset field." @@ -1492,29 +1492,29 @@ msgstr "" "[ERROR_NOTCL] Ein (x, y) Wertepaar wird benötigt. Wahrscheinlich haben Sie " "im Feld Offset nur einen Wert eingegeben." -#: FlatCAMObj.py:4991 +#: FlatCAMObj.py:4998 msgid "[success] Geometry Offset done." msgstr "[success] Geometrie Offset fertig." -#: FlatCAMObj.py:5546 FlatCAMObj.py:5551 flatcamTools/ToolSolderPaste.py:1361 +#: FlatCAMObj.py:5553 FlatCAMObj.py:5558 flatcamTools/ToolSolderPaste.py:1361 msgid "Export Machine Code ..." msgstr "Maschinencode exportieren ..." -#: FlatCAMObj.py:5557 flatcamTools/ToolSolderPaste.py:1364 +#: FlatCAMObj.py:5564 flatcamTools/ToolSolderPaste.py:1364 msgid "[WARNING_NOTCL] Export Machine Code cancelled ..." msgstr "[WARNING_NOTCL] Export Machine Code cancelled ..." -#: FlatCAMObj.py:5570 +#: FlatCAMObj.py:5577 #, python-format msgid "[success] Machine Code file saved to: %s" msgstr "[success] Maschinencode-Datei gespeichert in: %s" -#: FlatCAMObj.py:5592 +#: FlatCAMObj.py:5599 #, python-format msgid "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" msgstr "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" -#: FlatCAMObj.py:5709 +#: FlatCAMObj.py:5716 #, python-format msgid "" "[WARNING_NOTCL] This CNCJob object can't be processed because it is a %s " @@ -1523,11 +1523,11 @@ msgstr "" "[WARNING_NOTCL] Dieses CNC-Auftrag Objekt kann nicht verarbeitet werden, da " "es sich um ein %s CNC-Auftrag Objekt handelt." -#: FlatCAMObj.py:5762 +#: FlatCAMObj.py:5769 msgid "[ERROR_NOTCL] G-code does not have a units code: either G20 or G21" msgstr "[ERROR_NOTCL] G-Code hat keinen Einheitencode: entweder G20 oder G21" -#: FlatCAMObj.py:5775 +#: FlatCAMObj.py:5782 msgid "" "[ERROR_NOTCL] Cancelled. The Toolchange Custom code is enabled but it's " "empty." @@ -1535,17 +1535,17 @@ msgstr "" "[ERROR_NOTCL] Abgebrochen. Der benutzerdefinierte Code zum Ändern des " "Werkzeugs ist aktiviert, aber er ist leer." -#: FlatCAMObj.py:5782 +#: FlatCAMObj.py:5789 msgid "[success] Toolchange G-code was replaced by a custom code." msgstr "" "[success] Der Werkzeugwechsel-G-Code wurde durch einen benutzerdefinierten " "Code ersetzt." -#: FlatCAMObj.py:5797 flatcamTools/ToolSolderPaste.py:1390 +#: FlatCAMObj.py:5804 flatcamTools/ToolSolderPaste.py:1390 msgid "[WARNING_NOTCL] No such file or directory" msgstr "[WARNING_NOTCL] Keine solche Datei oder Ordner" -#: FlatCAMObj.py:5817 FlatCAMObj.py:5829 +#: FlatCAMObj.py:5824 FlatCAMObj.py:5836 msgid "" "[WARNING_NOTCL] The used postprocessor file has to have in it's name: " "'toolchange_custom'" @@ -1553,7 +1553,7 @@ msgstr "" "[WARNING_NOTCL] Die verwendete Postprozessor-Datei muss im Namen enthalten " "sein: 'toolchange_custom'" -#: FlatCAMObj.py:5835 +#: FlatCAMObj.py:5842 msgid "[ERROR] There is no postprocessor file." msgstr "[ERROR] Es gibt keine Postprozessor-Datei." @@ -11284,11 +11284,11 @@ msgstr "" msgid "[ERROR_NOTCL] PaintTool.paint_poly() --> %s" msgstr "[ERROR_NOTCL] PaintTool.paint_poly() --> %s" -#: flatcamTools/ToolPaint.py:970 flatcamTools/ToolPaint.py:1263 +#: flatcamTools/ToolPaint.py:970 flatcamTools/ToolPaint.py:1267 msgid "Polygon Paint started ..." msgstr "Polygonfarbe gestartet ..." -#: flatcamTools/ToolPaint.py:1119 flatcamTools/ToolPaint.py:1208 +#: flatcamTools/ToolPaint.py:1123 flatcamTools/ToolPaint.py:1212 #, python-format msgid "" "[ERROR] Could not do Paint All. Try a different combination of parameters. " @@ -11299,7 +11299,7 @@ msgstr "" "Parametern. Oder eine andere Farbmethode\n" "%s" -#: flatcamTools/ToolPaint.py:1143 +#: flatcamTools/ToolPaint.py:1147 msgid "" "[ERROR] There is no Painting Geometry in the file.\n" "Usually it means that the tool diameter is too big for the painted " @@ -11311,11 +11311,11 @@ msgstr "" "Geometrie zu groß ist.\n" "Ändern Sie die Malparameter und versuchen Sie es erneut." -#: flatcamTools/ToolPaint.py:1152 +#: flatcamTools/ToolPaint.py:1156 msgid "[success] Paint All Done." msgstr "[success] 'Paint' Sie alles fertig." -#: flatcamTools/ToolPaint.py:1238 +#: flatcamTools/ToolPaint.py:1242 msgid "" "[ERROR_NOTCL] There is no Painting Geometry in the file.\n" "Usually it means that the tool diameter is too big for the painted " @@ -11327,7 +11327,7 @@ msgstr "" "Geometrie zu groß ist.\n" "Ändern Sie die Malparameter und versuchen Sie es erneut." -#: flatcamTools/ToolPaint.py:1247 +#: flatcamTools/ToolPaint.py:1251 msgid "[success] Paint All with Rest-Machining done." msgstr "[success] Paint All with Rest-Machining erledigt." diff --git a/locale/en/LC_MESSAGES/strings.mo b/locale/en/LC_MESSAGES/strings.mo index 8862065da70565ed9a2fa3f0ea5de85227b851a8..bdc5e4e3b31d6e822ce32aaef6fd992f32fc840f 100644 GIT binary patch delta 40 rcmZ3yUU2bx!G;#bElg46tVV`b2FBCl%bAoR%=Y$jrtR(J%rXxE6=Mx5 delta 40 rcmZ3yUU2bx!G;#bElg46tcGS*CWh1F%bAoR%=Y$jrtR(J%rXxE7Do*> diff --git a/locale/en/LC_MESSAGES/strings.po b/locale/en/LC_MESSAGES/strings.po index e63a42c2..a2b81b73 100644 --- a/locale/en/LC_MESSAGES/strings.po +++ b/locale/en/LC_MESSAGES/strings.po @@ -5,8 +5,8 @@ msgid "" msgstr "" "Project-Id-Version: \n" -"POT-Creation-Date: 2019-06-22 16:41+0300\n" -"PO-Revision-Date: 2019-06-22 16:41+0300\n" +"POT-Creation-Date: 2019-06-22 21:03+0300\n" +"PO-Revision-Date: 2019-06-22 21:03+0300\n" "Last-Translator: \n" "Language-Team: \n" "Language: en\n" @@ -40,11 +40,11 @@ msgstr "Open Config file failed." msgid "Open Script file failed." msgstr "Open Script file failed." -#: FlatCAMApp.py:2235 +#: FlatCAMApp.py:2234 msgid "[WARNING_NOTCL] Select a Geometry, Gerber or Excellon Object to edit." msgstr "[WARNING_NOTCL] Select a Geometry, Gerber or Excellon Object to edit." -#: FlatCAMApp.py:2245 +#: FlatCAMApp.py:2244 msgid "" "[WARNING_NOTCL] Simultanoeus editing of tools geometry in a MultiGeo " "Geometry is not possible.\n" @@ -54,96 +54,96 @@ msgstr "" "Geometry is not possible.\n" "Edit only one geometry at a time." -#: FlatCAMApp.py:2289 +#: FlatCAMApp.py:2299 msgid "[WARNING_NOTCL] Editor is activated ..." msgstr "[WARNING_NOTCL] Editor is activated ..." -#: FlatCAMApp.py:2307 +#: FlatCAMApp.py:2317 msgid "Do you want to save the edited object?" msgstr "Do you want to save the edited object?" -#: FlatCAMApp.py:2308 flatcamGUI/FlatCAMGUI.py:1618 +#: FlatCAMApp.py:2318 flatcamGUI/FlatCAMGUI.py:1618 msgid "Close Editor" msgstr "Close Editor" -#: FlatCAMApp.py:2311 FlatCAMApp.py:3403 FlatCAMApp.py:5908 +#: FlatCAMApp.py:2321 FlatCAMApp.py:3413 FlatCAMApp.py:5918 #: FlatCAMTranslation.py:89 flatcamGUI/FlatCAMGUI.py:3730 msgid "Yes" msgstr "Yes" -#: FlatCAMApp.py:2312 FlatCAMApp.py:3404 FlatCAMApp.py:5909 +#: FlatCAMApp.py:2322 FlatCAMApp.py:3414 FlatCAMApp.py:5919 #: FlatCAMTranslation.py:90 flatcamGUI/FlatCAMGUI.py:3731 msgid "No" msgstr "No" -#: FlatCAMApp.py:2313 FlatCAMApp.py:3405 FlatCAMApp.py:3754 FlatCAMApp.py:5910 +#: FlatCAMApp.py:2323 FlatCAMApp.py:3415 FlatCAMApp.py:3764 FlatCAMApp.py:5920 msgid "Cancel" msgstr "Cancel" -#: FlatCAMApp.py:2340 +#: FlatCAMApp.py:2350 msgid "[WARNING] Object empty after edit." msgstr "[WARNING] Object empty after edit." -#: FlatCAMApp.py:2362 FlatCAMApp.py:2381 FlatCAMApp.py:2393 +#: FlatCAMApp.py:2372 FlatCAMApp.py:2391 FlatCAMApp.py:2403 msgid "[WARNING_NOTCL] Select a Gerber, Geometry or Excellon Object to update." msgstr "" "[WARNING_NOTCL] Select a Gerber, Geometry or Excellon Object to update." -#: FlatCAMApp.py:2365 +#: FlatCAMApp.py:2375 #, python-format msgid "[selected] %s is updated, returning to App..." msgstr "[selected] %s is updated, returning to App..." -#: FlatCAMApp.py:2730 +#: FlatCAMApp.py:2740 msgid "[ERROR] Could not load defaults file." msgstr "[ERROR] Could not load defaults file." -#: FlatCAMApp.py:2742 +#: FlatCAMApp.py:2752 msgid "[ERROR] Failed to parse defaults file." msgstr "[ERROR] Failed to parse defaults file." -#: FlatCAMApp.py:2763 FlatCAMApp.py:2767 +#: FlatCAMApp.py:2773 FlatCAMApp.py:2777 msgid "Import FlatCAM Preferences" msgstr "Import FlatCAM Preferences" -#: FlatCAMApp.py:2773 +#: FlatCAMApp.py:2783 msgid "[WARNING_NOTCL] FlatCAM preferences import cancelled." msgstr "[WARNING_NOTCL] FlatCAM preferences import cancelled." -#: FlatCAMApp.py:2781 FlatCAMApp.py:2835 FlatCAMApp.py:3282 +#: FlatCAMApp.py:2791 FlatCAMApp.py:2845 FlatCAMApp.py:3292 msgid "[ERROR_NOTCL] Could not load defaults file." msgstr "[ERROR_NOTCL] Could not load defaults file." -#: FlatCAMApp.py:2789 FlatCAMApp.py:3291 +#: FlatCAMApp.py:2799 FlatCAMApp.py:3301 msgid "[ERROR_NOTCL] Failed to parse defaults file." msgstr "[ERROR_NOTCL] Failed to parse defaults file." -#: FlatCAMApp.py:2792 +#: FlatCAMApp.py:2802 #, python-format msgid "[success] Imported Defaults from %s" msgstr "[success] Imported Defaults from %s" -#: FlatCAMApp.py:2807 FlatCAMApp.py:2812 +#: FlatCAMApp.py:2817 FlatCAMApp.py:2822 msgid "Export FlatCAM Preferences" msgstr "Export FlatCAM Preferences" -#: FlatCAMApp.py:2819 +#: FlatCAMApp.py:2829 msgid "[WARNING_NOTCL] FlatCAM preferences export cancelled." msgstr "[WARNING_NOTCL] FlatCAM preferences export cancelled." -#: FlatCAMApp.py:2854 FlatCAMApp.py:3336 +#: FlatCAMApp.py:2864 FlatCAMApp.py:3346 msgid "[ERROR_NOTCL] Failed to write defaults to file." msgstr "[ERROR_NOTCL] Failed to write defaults to file." -#: FlatCAMApp.py:2907 +#: FlatCAMApp.py:2917 msgid "[ERROR_NOTCL] Failed to open recent files file for writing." msgstr "[ERROR_NOTCL] Failed to open recent files file for writing." -#: FlatCAMApp.py:2984 camlib.py:4457 +#: FlatCAMApp.py:2994 camlib.py:4457 msgid "[ERROR_NOTCL] An internal error has ocurred. See shell.\n" msgstr "[ERROR_NOTCL] An internal error has ocurred. See shell.\n" -#: FlatCAMApp.py:2985 +#: FlatCAMApp.py:2995 #, python-brace-format msgid "" "Object ({kind}) failed because: {error} \n" @@ -152,11 +152,11 @@ msgstr "" "Object ({kind}) failed because: {error} \n" "\n" -#: FlatCAMApp.py:3005 +#: FlatCAMApp.py:3015 msgid "Converting units to " msgstr "Converting units to " -#: FlatCAMApp.py:3084 FlatCAMApp.py:3087 FlatCAMApp.py:3090 FlatCAMApp.py:3093 +#: FlatCAMApp.py:3094 FlatCAMApp.py:3097 FlatCAMApp.py:3100 FlatCAMApp.py:3103 #, python-brace-format msgid "" "[selected] {kind} created/selected: {name}{name}" -#: FlatCAMApp.py:3187 +#: FlatCAMApp.py:3197 #, python-brace-format msgid "" "FlatCAM
Version {version} {beta} ({date}) - " @@ -188,31 +188,31 @@ msgstr "" "a>
DOWNLOAD area here.
" -#: FlatCAMApp.py:3340 +#: FlatCAMApp.py:3350 msgid "[success] Defaults saved." msgstr "[success] Defaults saved." -#: FlatCAMApp.py:3361 +#: FlatCAMApp.py:3371 msgid "[ERROR_NOTCL] Could not load factory defaults file." msgstr "[ERROR_NOTCL] Could not load factory defaults file." -#: FlatCAMApp.py:3370 +#: FlatCAMApp.py:3380 msgid "[ERROR_NOTCL] Failed to parse factory defaults file." msgstr "[ERROR_NOTCL] Failed to parse factory defaults file." -#: FlatCAMApp.py:3384 +#: FlatCAMApp.py:3394 msgid "[ERROR_NOTCL] Failed to write factory defaults to file." msgstr "[ERROR_NOTCL] Failed to write factory defaults to file." -#: FlatCAMApp.py:3388 +#: FlatCAMApp.py:3398 msgid "Factory defaults saved." msgstr "Factory defaults saved." -#: FlatCAMApp.py:3393 flatcamGUI/FlatCAMGUI.py:3106 +#: FlatCAMApp.py:3403 flatcamGUI/FlatCAMGUI.py:3106 msgid "[WARNING_NOTCL] Application is saving the project. Please wait ..." msgstr "[WARNING_NOTCL] Application is saving the project. Please wait ..." -#: FlatCAMApp.py:3398 +#: FlatCAMApp.py:3408 msgid "" "There are files/objects modified in FlatCAM. \n" "Do you want to Save the project?" @@ -220,11 +220,11 @@ msgstr "" "There are files/objects modified in FlatCAM. \n" "Do you want to Save the project?" -#: FlatCAMApp.py:3401 FlatCAMApp.py:5906 +#: FlatCAMApp.py:3411 FlatCAMApp.py:5916 msgid "Save changes" msgstr "Save changes" -#: FlatCAMApp.py:3468 +#: FlatCAMApp.py:3478 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 " @@ -240,67 +240,67 @@ msgstr "" "be lost and the result may not be what was expected. \n" "Check the generated GCODE." -#: FlatCAMApp.py:3509 +#: FlatCAMApp.py:3519 msgid "[ERROR_NOTCL] Failed. Excellon joining works only on Excellon objects." msgstr "[ERROR_NOTCL] Failed. Excellon joining works only on Excellon objects." -#: FlatCAMApp.py:3531 +#: FlatCAMApp.py:3541 msgid "[ERROR_NOTCL] Failed. Gerber joining works only on Gerber objects." msgstr "[ERROR_NOTCL] Failed. Gerber joining works only on Gerber objects." -#: FlatCAMApp.py:3546 FlatCAMApp.py:3571 +#: FlatCAMApp.py:3556 FlatCAMApp.py:3581 msgid "[ERROR_NOTCL] Failed. Select a Geometry Object and try again." msgstr "[ERROR_NOTCL] Failed. Select a Geometry Object and try again." -#: FlatCAMApp.py:3550 FlatCAMApp.py:3575 +#: FlatCAMApp.py:3560 FlatCAMApp.py:3585 #, python-format msgid "[ERROR_NOTCL] Expected a FlatCAMGeometry, got %s" msgstr "[ERROR_NOTCL] Expected a FlatCAMGeometry, got %s" -#: FlatCAMApp.py:3563 +#: FlatCAMApp.py:3573 msgid "[success] A Geometry object was converted to MultiGeo type." msgstr "[success] A Geometry object was converted to MultiGeo type." -#: FlatCAMApp.py:3589 +#: FlatCAMApp.py:3599 msgid "[success] A Geometry object was converted to SingleGeo type." msgstr "[success] A Geometry object was converted to SingleGeo type." -#: FlatCAMApp.py:3753 FlatCAMApp.py:4593 FlatCAMApp.py:6181 FlatCAMApp.py:6192 -#: FlatCAMApp.py:6432 FlatCAMApp.py:6442 +#: FlatCAMApp.py:3763 FlatCAMApp.py:4603 FlatCAMApp.py:6191 FlatCAMApp.py:6202 +#: FlatCAMApp.py:6442 FlatCAMApp.py:6452 msgid "Ok" msgstr "Ok" -#: FlatCAMApp.py:3799 +#: FlatCAMApp.py:3809 #, python-format msgid "[success] Converted units to %s" msgstr "[success] Converted units to %s" -#: FlatCAMApp.py:3810 +#: FlatCAMApp.py:3820 msgid "[WARNING_NOTCL] Units conversion cancelled." msgstr "[WARNING_NOTCL] Units conversion cancelled." -#: FlatCAMApp.py:4462 +#: FlatCAMApp.py:4472 msgid "Open file" msgstr "Open file" -#: FlatCAMApp.py:4493 FlatCAMApp.py:4498 +#: FlatCAMApp.py:4503 FlatCAMApp.py:4508 msgid "Export G-Code ..." msgstr "Export G-Code ..." -#: FlatCAMApp.py:4501 +#: FlatCAMApp.py:4511 msgid "[WARNING_NOTCL] Export Code cancelled." msgstr "[WARNING_NOTCL] Export Code cancelled." -#: FlatCAMApp.py:4511 +#: FlatCAMApp.py:4521 msgid "[WARNING] No such file or directory" msgstr "[WARNING] No such file or directory" -#: FlatCAMApp.py:4518 +#: FlatCAMApp.py:4528 #, python-format msgid "Saved to: %s" msgstr "Saved to: %s" -#: FlatCAMApp.py:4581 FlatCAMApp.py:4614 FlatCAMApp.py:4625 FlatCAMApp.py:4636 +#: FlatCAMApp.py:4591 FlatCAMApp.py:4624 FlatCAMApp.py:4635 FlatCAMApp.py:4646 #: flatcamTools/ToolNonCopperClear.py:489 flatcamTools/ToolSolderPaste.py:765 msgid "" "[WARNING_NOTCL] Please enter a tool diameter with non-zero value, in Float " @@ -309,12 +309,12 @@ msgstr "" "[WARNING_NOTCL] Please enter a tool diameter with non-zero value, in Float " "format." -#: FlatCAMApp.py:4586 FlatCAMApp.py:4619 FlatCAMApp.py:4630 FlatCAMApp.py:4641 +#: FlatCAMApp.py:4596 FlatCAMApp.py:4629 FlatCAMApp.py:4640 FlatCAMApp.py:4651 #: flatcamGUI/FlatCAMGUI.py:3001 msgid "[WARNING_NOTCL] Adding Tool cancelled ..." msgstr "[WARNING_NOTCL] Adding Tool cancelled ..." -#: FlatCAMApp.py:4589 +#: FlatCAMApp.py:4599 msgid "" "Adding Tool works only when Advanced is checked.\n" "Go to Preferences -> General - Show Advanced Options." @@ -322,35 +322,35 @@ msgstr "" "Adding Tool works only when Advanced is checked.\n" "Go to Preferences -> General - Show Advanced Options." -#: FlatCAMApp.py:4702 +#: FlatCAMApp.py:4712 msgid "Object(s) deleted ..." msgstr "Object(s) deleted ..." -#: FlatCAMApp.py:4706 +#: FlatCAMApp.py:4716 msgid "Failed. No object(s) selected..." msgstr "Failed. No object(s) selected..." -#: FlatCAMApp.py:4708 +#: FlatCAMApp.py:4718 msgid "Save the work in Editor and try again ..." msgstr "Save the work in Editor and try again ..." -#: FlatCAMApp.py:4721 +#: FlatCAMApp.py:4731 msgid "Click to set the origin ..." msgstr "Click to set the origin ..." -#: FlatCAMApp.py:4733 +#: FlatCAMApp.py:4743 msgid "Jump to ..." msgstr "Jump to ..." -#: FlatCAMApp.py:4734 +#: FlatCAMApp.py:4744 msgid "Enter the coordinates in format X,Y:" msgstr "Enter the coordinates in format X,Y:" -#: FlatCAMApp.py:4741 +#: FlatCAMApp.py:4751 msgid "Wrong coordinates. Enter coordinates in format: X,Y" msgstr "Wrong coordinates. Enter coordinates in format: X,Y" -#: FlatCAMApp.py:4759 flatcamEditors/FlatCAMExcEditor.py:2320 +#: FlatCAMApp.py:4769 flatcamEditors/FlatCAMExcEditor.py:2320 #: flatcamEditors/FlatCAMExcEditor.py:2327 #: flatcamEditors/FlatCAMGeoEditor.py:3648 #: flatcamEditors/FlatCAMGeoEditor.py:3662 @@ -364,84 +364,84 @@ msgstr "Wrong coordinates. Enter coordinates in format: X,Y" msgid "[success] Done." msgstr "[success] Done." -#: FlatCAMApp.py:4891 FlatCAMApp.py:4958 +#: FlatCAMApp.py:4901 FlatCAMApp.py:4968 msgid "[WARNING_NOTCL] No object is selected. Select an object and try again." msgstr "[WARNING_NOTCL] No object is selected. Select an object and try again." -#: FlatCAMApp.py:4999 +#: FlatCAMApp.py:5009 msgid "[success] Origin set ..." msgstr "[success] Origin set ..." -#: FlatCAMApp.py:5019 +#: FlatCAMApp.py:5029 msgid "Preferences" msgstr "Preferences" -#: FlatCAMApp.py:5039 +#: FlatCAMApp.py:5049 msgid "[WARNING_NOTCL] No object selected to Flip on Y axis." msgstr "[WARNING_NOTCL] No object selected to Flip on Y axis." -#: FlatCAMApp.py:5064 +#: FlatCAMApp.py:5074 msgid "[success] Flip on Y axis done." msgstr "[success] Flip on Y axis done." -#: FlatCAMApp.py:5066 FlatCAMApp.py:5106 +#: FlatCAMApp.py:5076 FlatCAMApp.py:5116 #: flatcamEditors/FlatCAMGeoEditor.py:1355 #: flatcamEditors/FlatCAMGrbEditor.py:5343 flatcamTools/ToolTransform.py:748 #, 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:5079 +#: FlatCAMApp.py:5089 msgid "[WARNING_NOTCL] No object selected to Flip on X axis." msgstr "[WARNING_NOTCL] No object selected to Flip on X axis." -#: FlatCAMApp.py:5104 +#: FlatCAMApp.py:5114 msgid "[success] Flip on X axis done." msgstr "[success] Flip on X axis done." -#: FlatCAMApp.py:5119 +#: FlatCAMApp.py:5129 msgid "[WARNING_NOTCL] No object selected to Rotate." msgstr "[WARNING_NOTCL] No object selected to Rotate." -#: FlatCAMApp.py:5122 FlatCAMApp.py:5167 FlatCAMApp.py:5198 +#: FlatCAMApp.py:5132 FlatCAMApp.py:5177 FlatCAMApp.py:5208 msgid "Transform" msgstr "Transform" -#: FlatCAMApp.py:5122 FlatCAMApp.py:5167 FlatCAMApp.py:5198 +#: FlatCAMApp.py:5132 FlatCAMApp.py:5177 FlatCAMApp.py:5208 msgid "Enter the Angle value:" msgstr "Enter the Angle value:" -#: FlatCAMApp.py:5152 +#: FlatCAMApp.py:5162 msgid "[success] Rotation done." msgstr "[success] Rotation done." -#: FlatCAMApp.py:5154 flatcamEditors/FlatCAMGeoEditor.py:1298 +#: FlatCAMApp.py:5164 flatcamEditors/FlatCAMGeoEditor.py:1298 #: flatcamEditors/FlatCAMGrbEditor.py:5272 flatcamTools/ToolTransform.py:677 #, 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:5165 +#: FlatCAMApp.py:5175 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:5186 +#: FlatCAMApp.py:5196 msgid "[success] Skew on X axis done." msgstr "[success] Skew on X axis done." -#: FlatCAMApp.py:5196 +#: FlatCAMApp.py:5206 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:5217 +#: FlatCAMApp.py:5227 msgid "[success] Skew on Y axis done." msgstr "[success] Skew on Y axis done." -#: FlatCAMApp.py:5287 +#: FlatCAMApp.py:5297 msgid "Grid On/Off" msgstr "Grid On/Off" -#: FlatCAMApp.py:5300 flatcamEditors/FlatCAMGeoEditor.py:937 +#: FlatCAMApp.py:5310 flatcamEditors/FlatCAMGeoEditor.py:937 #: flatcamEditors/FlatCAMGrbEditor.py:2381 #: flatcamEditors/FlatCAMGrbEditor.py:4861 flatcamGUI/ObjectUI.py:991 #: flatcamTools/ToolDblSided.py:160 flatcamTools/ToolDblSided.py:208 @@ -451,7 +451,7 @@ msgstr "Grid On/Off" msgid "Add" msgstr "Add" -#: FlatCAMApp.py:5301 FlatCAMObj.py:3296 +#: FlatCAMApp.py:5311 FlatCAMObj.py:3295 #: flatcamEditors/FlatCAMGrbEditor.py:2386 flatcamGUI/FlatCAMGUI.py:527 #: flatcamGUI/FlatCAMGUI.py:724 flatcamGUI/FlatCAMGUI.py:1616 #: flatcamGUI/FlatCAMGUI.py:1953 flatcamGUI/ObjectUI.py:1007 @@ -460,15 +460,15 @@ msgstr "Add" msgid "Delete" msgstr "Delete" -#: FlatCAMApp.py:5314 +#: FlatCAMApp.py:5324 msgid "New Grid ..." msgstr "New Grid ..." -#: FlatCAMApp.py:5315 +#: FlatCAMApp.py:5325 msgid "Enter a Grid Value:" msgstr "Enter a Grid Value:" -#: FlatCAMApp.py:5323 FlatCAMApp.py:5350 +#: FlatCAMApp.py:5333 FlatCAMApp.py:5360 msgid "" "[WARNING_NOTCL] Please enter a grid value with non-zero value, in Float " "format." @@ -476,52 +476,52 @@ msgstr "" "[WARNING_NOTCL] Please enter a grid value with non-zero value, in Float " "format." -#: FlatCAMApp.py:5329 +#: FlatCAMApp.py:5339 msgid "[success] New Grid added ..." msgstr "[success] New Grid added ..." -#: FlatCAMApp.py:5332 +#: FlatCAMApp.py:5342 msgid "[WARNING_NOTCL] Grid already exists ..." msgstr "[WARNING_NOTCL] Grid already exists ..." -#: FlatCAMApp.py:5335 +#: FlatCAMApp.py:5345 msgid "[WARNING_NOTCL] Adding New Grid cancelled ..." msgstr "[WARNING_NOTCL] Adding New Grid cancelled ..." -#: FlatCAMApp.py:5357 +#: FlatCAMApp.py:5367 msgid "[ERROR_NOTCL] Grid Value does not exist ..." msgstr "[ERROR_NOTCL] Grid Value does not exist ..." -#: FlatCAMApp.py:5360 +#: FlatCAMApp.py:5370 msgid "[success] Grid Value deleted ..." msgstr "[success] Grid Value deleted ..." -#: FlatCAMApp.py:5363 +#: FlatCAMApp.py:5373 msgid "[WARNING_NOTCL] Delete Grid value cancelled ..." msgstr "[WARNING_NOTCL] Delete Grid value cancelled ..." -#: FlatCAMApp.py:5402 +#: FlatCAMApp.py:5412 msgid "[WARNING_NOTCL] No object selected to copy it's name" msgstr "[WARNING_NOTCL] No object selected to copy it's name" -#: FlatCAMApp.py:5406 +#: FlatCAMApp.py:5416 msgid "Name copied on clipboard ..." msgstr "Name copied on clipboard ..." -#: FlatCAMApp.py:5448 flatcamEditors/FlatCAMGrbEditor.py:3901 +#: FlatCAMApp.py:5458 flatcamEditors/FlatCAMGrbEditor.py:3901 msgid "[success] Coordinates copied to clipboard." msgstr "[success] Coordinates copied to clipboard." -#: FlatCAMApp.py:5704 FlatCAMApp.py:5707 FlatCAMApp.py:5710 FlatCAMApp.py:5713 -#: FlatCAMApp.py:5728 FlatCAMApp.py:5731 FlatCAMApp.py:5734 FlatCAMApp.py:5737 -#: FlatCAMApp.py:5777 FlatCAMApp.py:5780 FlatCAMApp.py:5783 FlatCAMApp.py:5786 +#: FlatCAMApp.py:5714 FlatCAMApp.py:5717 FlatCAMApp.py:5720 FlatCAMApp.py:5723 +#: FlatCAMApp.py:5738 FlatCAMApp.py:5741 FlatCAMApp.py:5744 FlatCAMApp.py:5747 +#: FlatCAMApp.py:5787 FlatCAMApp.py:5790 FlatCAMApp.py:5793 FlatCAMApp.py:5796 #: ObjectCollection.py:719 ObjectCollection.py:722 ObjectCollection.py:725 #: ObjectCollection.py:728 #, python-brace-format msgid "[selected]{name} selected" msgstr "[selected]{name} selected" -#: FlatCAMApp.py:5903 +#: FlatCAMApp.py:5913 msgid "" "There are files/objects opened in FlatCAM.\n" "Creating a New project will delete them.\n" @@ -531,106 +531,106 @@ msgstr "" "Creating a New project will delete them.\n" "Do you want to Save the project?" -#: FlatCAMApp.py:5924 +#: FlatCAMApp.py:5934 msgid "[success] New Project created..." msgstr "[success] New Project created..." -#: FlatCAMApp.py:6040 FlatCAMApp.py:6043 flatcamGUI/FlatCAMGUI.py:608 +#: FlatCAMApp.py:6050 FlatCAMApp.py:6053 flatcamGUI/FlatCAMGUI.py:608 #: flatcamGUI/FlatCAMGUI.py:1832 msgid "Open Gerber" msgstr "Open Gerber" -#: FlatCAMApp.py:6048 +#: FlatCAMApp.py:6058 msgid "[WARNING_NOTCL] Open Gerber cancelled." msgstr "[WARNING_NOTCL] Open Gerber cancelled." -#: FlatCAMApp.py:6069 FlatCAMApp.py:6072 flatcamGUI/FlatCAMGUI.py:609 +#: FlatCAMApp.py:6079 FlatCAMApp.py:6082 flatcamGUI/FlatCAMGUI.py:609 #: flatcamGUI/FlatCAMGUI.py:1833 msgid "Open Excellon" msgstr "Open Excellon" -#: FlatCAMApp.py:6077 +#: FlatCAMApp.py:6087 msgid "[WARNING_NOTCL] Open Excellon cancelled." msgstr "[WARNING_NOTCL] Open Excellon cancelled." -#: FlatCAMApp.py:6099 FlatCAMApp.py:6102 +#: FlatCAMApp.py:6109 FlatCAMApp.py:6112 msgid "Open G-Code" msgstr "Open G-Code" -#: FlatCAMApp.py:6107 +#: FlatCAMApp.py:6117 msgid "[WARNING_NOTCL] Open G-Code cancelled." msgstr "[WARNING_NOTCL] Open G-Code cancelled." -#: FlatCAMApp.py:6125 FlatCAMApp.py:6128 +#: FlatCAMApp.py:6135 FlatCAMApp.py:6138 msgid "Open Project" msgstr "Open Project" -#: FlatCAMApp.py:6136 +#: FlatCAMApp.py:6146 msgid "[WARNING_NOTCL] Open Project cancelled." msgstr "[WARNING_NOTCL] Open Project cancelled." -#: FlatCAMApp.py:6155 FlatCAMApp.py:6158 +#: FlatCAMApp.py:6165 FlatCAMApp.py:6168 msgid "Open Configuration File" msgstr "Open Configuration File" -#: FlatCAMApp.py:6162 +#: FlatCAMApp.py:6172 msgid "[WARNING_NOTCL] Open Config cancelled." msgstr "[WARNING_NOTCL] Open Config cancelled." -#: FlatCAMApp.py:6177 FlatCAMApp.py:6428 FlatCAMApp.py:8581 FlatCAMApp.py:8601 -#: FlatCAMApp.py:8622 FlatCAMApp.py:8644 +#: FlatCAMApp.py:6187 FlatCAMApp.py:6438 FlatCAMApp.py:8591 FlatCAMApp.py:8611 +#: FlatCAMApp.py:8632 FlatCAMApp.py:8654 msgid "[WARNING_NOTCL] No object selected." msgstr "[WARNING_NOTCL] No object selected." -#: FlatCAMApp.py:6178 FlatCAMApp.py:6429 +#: FlatCAMApp.py:6188 FlatCAMApp.py:6439 msgid "Please Select a Geometry object to export" msgstr "Please Select a Geometry object to export" -#: FlatCAMApp.py:6189 +#: FlatCAMApp.py:6199 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:6202 FlatCAMApp.py:6206 +#: FlatCAMApp.py:6212 FlatCAMApp.py:6216 msgid "Export SVG" msgstr "Export SVG" -#: FlatCAMApp.py:6211 +#: FlatCAMApp.py:6221 msgid "[WARNING_NOTCL] Export SVG cancelled." msgstr "[WARNING_NOTCL] Export SVG cancelled." -#: FlatCAMApp.py:6230 +#: FlatCAMApp.py:6240 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:6236 FlatCAMApp.py:6240 +#: FlatCAMApp.py:6246 FlatCAMApp.py:6250 msgid "Export PNG Image" msgstr "Export PNG Image" -#: FlatCAMApp.py:6245 +#: FlatCAMApp.py:6255 msgid "Export PNG cancelled." msgstr "Export PNG cancelled." -#: FlatCAMApp.py:6264 +#: FlatCAMApp.py:6274 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:6269 FlatCAMApp.py:6392 +#: FlatCAMApp.py:6279 FlatCAMApp.py:6402 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:6281 +#: FlatCAMApp.py:6291 msgid "Save Gerber source file" msgstr "Save Gerber source file" -#: FlatCAMApp.py:6286 +#: FlatCAMApp.py:6296 msgid "[WARNING_NOTCL] Save Gerber source file cancelled." msgstr "[WARNING_NOTCL] Save Gerber source file cancelled." -#: FlatCAMApp.py:6305 +#: FlatCAMApp.py:6315 msgid "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." @@ -638,21 +638,21 @@ msgstr "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." -#: FlatCAMApp.py:6310 FlatCAMApp.py:6351 +#: FlatCAMApp.py:6320 FlatCAMApp.py:6361 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:6318 FlatCAMApp.py:6322 +#: FlatCAMApp.py:6328 FlatCAMApp.py:6332 msgid "Save Excellon source file" msgstr "Save Excellon source file" -#: FlatCAMApp.py:6327 +#: FlatCAMApp.py:6337 msgid "[WARNING_NOTCL] Saving Excellon source file cancelled." msgstr "[WARNING_NOTCL] Saving Excellon source file cancelled." -#: FlatCAMApp.py:6346 +#: FlatCAMApp.py:6356 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." @@ -660,68 +660,68 @@ msgstr "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." -#: FlatCAMApp.py:6359 FlatCAMApp.py:6363 +#: FlatCAMApp.py:6369 FlatCAMApp.py:6373 msgid "Export Excellon" msgstr "Export Excellon" -#: FlatCAMApp.py:6368 +#: FlatCAMApp.py:6378 msgid "[WARNING_NOTCL] Export Excellon cancelled." msgstr "[WARNING_NOTCL] Export Excellon cancelled." -#: FlatCAMApp.py:6387 +#: FlatCAMApp.py:6397 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:6400 FlatCAMApp.py:6404 +#: FlatCAMApp.py:6410 FlatCAMApp.py:6414 msgid "Export Gerber" msgstr "Export Gerber" -#: FlatCAMApp.py:6409 +#: FlatCAMApp.py:6419 msgid "[WARNING_NOTCL] Export Gerber cancelled." msgstr "[WARNING_NOTCL] Export Gerber cancelled." -#: FlatCAMApp.py:6439 +#: FlatCAMApp.py:6449 msgid "[ERROR_NOTCL] Only Geometry objects can be used." msgstr "[ERROR_NOTCL] Only Geometry objects can be used." -#: FlatCAMApp.py:6453 FlatCAMApp.py:6457 +#: FlatCAMApp.py:6463 FlatCAMApp.py:6467 msgid "Export DXF" msgstr "Export DXF" -#: FlatCAMApp.py:6463 +#: FlatCAMApp.py:6473 msgid "[WARNING_NOTCL] Export DXF cancelled." msgstr "[WARNING_NOTCL] Export DXF cancelled." -#: FlatCAMApp.py:6483 FlatCAMApp.py:6486 +#: FlatCAMApp.py:6493 FlatCAMApp.py:6496 msgid "Import SVG" msgstr "Import SVG" -#: FlatCAMApp.py:6495 +#: FlatCAMApp.py:6505 msgid "[WARNING_NOTCL] Open SVG cancelled." msgstr "[WARNING_NOTCL] Open SVG cancelled." -#: FlatCAMApp.py:6514 FlatCAMApp.py:6518 +#: FlatCAMApp.py:6524 FlatCAMApp.py:6528 msgid "Import DXF" msgstr "Import DXF" -#: FlatCAMApp.py:6527 +#: FlatCAMApp.py:6537 msgid "[WARNING_NOTCL] Open DXF cancelled." msgstr "[WARNING_NOTCL] Open DXF cancelled." -#: FlatCAMApp.py:6545 +#: FlatCAMApp.py:6555 #, python-format msgid "%s" msgstr "%s" -#: FlatCAMApp.py:6565 +#: FlatCAMApp.py:6575 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:6572 +#: FlatCAMApp.py:6582 msgid "" "[WARNING_NOTCL] There is no selected object for which to see it's source " "file code." @@ -729,25 +729,25 @@ msgstr "" "[WARNING_NOTCL] There is no selected object for which to see it's source " "file code." -#: FlatCAMApp.py:6580 +#: FlatCAMApp.py:6590 msgid "Source Editor" msgstr "Source Editor" -#: FlatCAMApp.py:6590 +#: FlatCAMApp.py:6600 #, python-format msgid "[ERROR]App.on_view_source() -->%s" msgstr "[ERROR]App.on_view_source() -->%s" -#: FlatCAMApp.py:6602 FlatCAMApp.py:7744 FlatCAMObj.py:5581 +#: FlatCAMApp.py:6612 FlatCAMApp.py:7754 FlatCAMObj.py:5588 #: flatcamTools/ToolSolderPaste.py:1278 msgid "Code Editor" msgstr "Code Editor" -#: FlatCAMApp.py:6614 +#: FlatCAMApp.py:6624 msgid "Script Editor" msgstr "Script Editor" -#: FlatCAMApp.py:6617 +#: FlatCAMApp.py:6627 msgid "" "#\n" "# CREATE A NEW FLATCAM TCL SCRIPT\n" @@ -791,98 +791,98 @@ msgstr "" "#\n" "\n" -#: FlatCAMApp.py:6640 FlatCAMApp.py:6643 +#: FlatCAMApp.py:6650 FlatCAMApp.py:6653 msgid "Open TCL script" msgstr "Open TCL script" -#: FlatCAMApp.py:6651 +#: FlatCAMApp.py:6661 msgid "[WARNING_NOTCL] Open TCL script cancelled." msgstr "[WARNING_NOTCL] Open TCL script cancelled." -#: FlatCAMApp.py:6663 +#: FlatCAMApp.py:6673 #, python-format msgid "[ERROR]App.on_fileopenscript() -->%s" msgstr "[ERROR]App.on_fileopenscript() -->%s" -#: FlatCAMApp.py:6689 FlatCAMApp.py:6692 +#: FlatCAMApp.py:6699 FlatCAMApp.py:6702 msgid "Run TCL script" msgstr "Run TCL script" -#: FlatCAMApp.py:6700 +#: FlatCAMApp.py:6710 msgid "[WARNING_NOTCL] Run TCL script cancelled." msgstr "[WARNING_NOTCL] Run TCL script cancelled." -#: FlatCAMApp.py:6750 FlatCAMApp.py:6754 +#: FlatCAMApp.py:6760 FlatCAMApp.py:6764 msgid "Save Project As ..." msgstr "Save Project As ..." -#: FlatCAMApp.py:6751 +#: FlatCAMApp.py:6761 #, python-brace-format msgid "{l_save}/Project_{date}" msgstr "{l_save}/Project_{date}" -#: FlatCAMApp.py:6759 +#: FlatCAMApp.py:6769 msgid "[WARNING_NOTCL] Save Project cancelled." msgstr "[WARNING_NOTCL] Save Project cancelled." -#: FlatCAMApp.py:6803 +#: FlatCAMApp.py:6813 msgid "Exporting SVG" msgstr "Exporting SVG" -#: FlatCAMApp.py:6837 FlatCAMApp.py:6943 FlatCAMApp.py:7058 +#: FlatCAMApp.py:6847 FlatCAMApp.py:6953 FlatCAMApp.py:7068 #, python-format msgid "[success] SVG file exported to %s" msgstr "[success] SVG file exported to %s" -#: FlatCAMApp.py:6868 FlatCAMApp.py:6989 +#: FlatCAMApp.py:6878 FlatCAMApp.py:6999 #, python-format msgid "[WARNING_NOTCL] No object Box. Using instead %s" msgstr "[WARNING_NOTCL] No object Box. Using instead %s" -#: FlatCAMApp.py:6946 FlatCAMApp.py:7061 +#: FlatCAMApp.py:6956 FlatCAMApp.py:7071 msgid "Generating Film ... Please wait." msgstr "Generating Film ... Please wait." -#: FlatCAMApp.py:7209 +#: FlatCAMApp.py:7219 #, python-format msgid "[success] Excellon file exported to %s" msgstr "[success] Excellon file exported to %s" -#: FlatCAMApp.py:7216 +#: FlatCAMApp.py:7226 msgid "Exporting Excellon" msgstr "Exporting Excellon" -#: FlatCAMApp.py:7221 FlatCAMApp.py:7228 +#: FlatCAMApp.py:7231 FlatCAMApp.py:7238 msgid "[ERROR_NOTCL] Could not export Excellon file." msgstr "[ERROR_NOTCL] Could not export Excellon file." -#: FlatCAMApp.py:7326 +#: FlatCAMApp.py:7336 #, python-format msgid "[success] Gerber file exported to %s" msgstr "[success] Gerber file exported to %s" -#: FlatCAMApp.py:7333 +#: FlatCAMApp.py:7343 msgid "Exporting Gerber" msgstr "Exporting Gerber" -#: FlatCAMApp.py:7338 FlatCAMApp.py:7345 +#: FlatCAMApp.py:7348 FlatCAMApp.py:7355 msgid "[ERROR_NOTCL] Could not export Gerber file." msgstr "[ERROR_NOTCL] Could not export Gerber file." -#: FlatCAMApp.py:7385 +#: FlatCAMApp.py:7395 #, python-format msgid "[success] DXF file exported to %s" msgstr "[success] DXF file exported to %s" -#: FlatCAMApp.py:7391 +#: FlatCAMApp.py:7401 msgid "Exporting DXF" msgstr "Exporting DXF" -#: FlatCAMApp.py:7396 FlatCAMApp.py:7403 +#: FlatCAMApp.py:7406 FlatCAMApp.py:7413 msgid "[[WARNING_NOTCL]] Could not export DXF file." msgstr "[[WARNING_NOTCL]] Could not export DXF file." -#: FlatCAMApp.py:7423 FlatCAMApp.py:7465 FlatCAMApp.py:7509 +#: FlatCAMApp.py:7433 FlatCAMApp.py:7475 FlatCAMApp.py:7519 msgid "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" @@ -890,95 +890,95 @@ msgstr "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" -#: FlatCAMApp.py:7433 +#: FlatCAMApp.py:7443 msgid "Importing SVG" msgstr "Importing SVG" -#: FlatCAMApp.py:7444 FlatCAMApp.py:7486 FlatCAMApp.py:7529 FlatCAMApp.py:7606 -#: FlatCAMApp.py:7667 FlatCAMApp.py:7730 flatcamTools/ToolPDF.py:212 +#: FlatCAMApp.py:7454 FlatCAMApp.py:7496 FlatCAMApp.py:7539 FlatCAMApp.py:7616 +#: FlatCAMApp.py:7677 FlatCAMApp.py:7740 flatcamTools/ToolPDF.py:212 #, python-format msgid "[success] Opened: %s" msgstr "[success] Opened: %s" -#: FlatCAMApp.py:7475 +#: FlatCAMApp.py:7485 msgid "Importing DXF" msgstr "Importing DXF" -#: FlatCAMApp.py:7517 +#: FlatCAMApp.py:7527 msgid "Importing Image" msgstr "Importing Image" -#: FlatCAMApp.py:7558 FlatCAMApp.py:7560 +#: FlatCAMApp.py:7568 FlatCAMApp.py:7570 #, python-format msgid "[ERROR_NOTCL] Failed to open file: %s" msgstr "[ERROR_NOTCL] Failed to open file: %s" -#: FlatCAMApp.py:7563 +#: FlatCAMApp.py:7573 #, python-brace-format msgid "[ERROR_NOTCL] Failed to parse file: {name}. {error}" msgstr "[ERROR_NOTCL] Failed to parse file: {name}. {error}" -#: FlatCAMApp.py:7570 FlatCAMObj.py:4259 +#: FlatCAMApp.py:7580 FlatCAMObj.py:4266 #: flatcamEditors/FlatCAMExcEditor.py:2077 msgid "[ERROR] An internal error has ocurred. See shell.\n" msgstr "[ERROR] An internal error has ocurred. See shell.\n" -#: FlatCAMApp.py:7579 +#: FlatCAMApp.py:7589 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:7587 +#: FlatCAMApp.py:7597 msgid "Opening Gerber" msgstr "Opening Gerber" -#: FlatCAMApp.py:7597 +#: FlatCAMApp.py:7607 msgid "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." msgstr "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." -#: FlatCAMApp.py:7630 flatcamTools/ToolPcbWizard.py:421 +#: FlatCAMApp.py:7640 flatcamTools/ToolPcbWizard.py:421 msgid "[ERROR_NOTCL] This is not Excellon file." msgstr "[ERROR_NOTCL] This is not Excellon file." -#: FlatCAMApp.py:7633 +#: FlatCAMApp.py:7643 #, python-format msgid "[ERROR_NOTCL] Cannot open file: %s" msgstr "[ERROR_NOTCL] Cannot open file: %s" -#: FlatCAMApp.py:7638 flatcamTools/ToolPcbWizard.py:429 +#: FlatCAMApp.py:7648 flatcamTools/ToolPcbWizard.py:429 msgid "[ERROR_NOTCL] An internal error has occurred. See shell.\n" msgstr "[ERROR_NOTCL] An internal error has occurred. See shell.\n" -#: FlatCAMApp.py:7651 flatcamTools/ToolPDF.py:262 +#: FlatCAMApp.py:7661 flatcamTools/ToolPDF.py:262 #: flatcamTools/ToolPcbWizard.py:442 #, python-format msgid "[ERROR_NOTCL] No geometry found in file: %s" msgstr "[ERROR_NOTCL] No geometry found in file: %s" -#: FlatCAMApp.py:7654 +#: FlatCAMApp.py:7664 msgid "Opening Excellon." msgstr "Opening Excellon." -#: FlatCAMApp.py:7660 +#: FlatCAMApp.py:7670 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:7697 +#: FlatCAMApp.py:7707 #, python-format msgid "[ERROR_NOTCL] Failed to open %s" msgstr "[ERROR_NOTCL] Failed to open %s" -#: FlatCAMApp.py:7707 +#: FlatCAMApp.py:7717 msgid "[ERROR_NOTCL] This is not GCODE" msgstr "[ERROR_NOTCL] This is not GCODE" -#: FlatCAMApp.py:7713 +#: FlatCAMApp.py:7723 msgid "Opening G-Code." msgstr "Opening G-Code." -#: FlatCAMApp.py:7721 +#: FlatCAMApp.py:7731 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 " @@ -988,26 +988,26 @@ msgstr "" " Attempting to create a FlatCAM CNCJob Object from G-Code file failed during " "processing" -#: FlatCAMApp.py:7761 +#: FlatCAMApp.py:7771 #, python-format msgid "[ERROR_NOTCL] Failed to open config file: %s" msgstr "[ERROR_NOTCL] Failed to open config file: %s" -#: FlatCAMApp.py:7787 FlatCAMApp.py:7804 +#: FlatCAMApp.py:7797 FlatCAMApp.py:7814 #, python-format msgid "[ERROR_NOTCL] Failed to open project file: %s" msgstr "[ERROR_NOTCL] Failed to open project file: %s" -#: FlatCAMApp.py:7827 +#: FlatCAMApp.py:7837 #, python-format msgid "[success] Project loaded from: %s" msgstr "[success] Project loaded from: %s" -#: FlatCAMApp.py:7932 +#: FlatCAMApp.py:7942 msgid "Available commands:\n" msgstr "Available commands:\n" -#: FlatCAMApp.py:7934 +#: FlatCAMApp.py:7944 msgid "" "\n" "\n" @@ -1019,27 +1019,27 @@ msgstr "" "Type help for usage.\n" " Example: help open_gerber" -#: FlatCAMApp.py:8084 +#: FlatCAMApp.py:8094 msgid "Shows list of commands." msgstr "Shows list of commands." -#: FlatCAMApp.py:8141 +#: FlatCAMApp.py:8151 msgid "[ERROR_NOTCL] Failed to load recent item list." msgstr "[ERROR_NOTCL] Failed to load recent item list." -#: FlatCAMApp.py:8148 +#: FlatCAMApp.py:8158 msgid "[ERROR_NOTCL] Failed to parse recent item list." msgstr "[ERROR_NOTCL] Failed to parse recent item list." -#: FlatCAMApp.py:8192 +#: FlatCAMApp.py:8202 msgid "Clear Recent files" msgstr "Clear Recent files" -#: FlatCAMApp.py:8209 flatcamGUI/FlatCAMGUI.py:968 +#: FlatCAMApp.py:8219 flatcamGUI/FlatCAMGUI.py:968 msgid "Shortcut Key List" msgstr "Shortcut Key List" -#: FlatCAMApp.py:8216 +#: FlatCAMApp.py:8226 msgid "" "\n" "

Selected Tab - Choose an Item from " @@ -1135,23 +1135,23 @@ msgstr "" "\n" " " -#: FlatCAMApp.py:8323 +#: FlatCAMApp.py:8333 msgid "[WARNING_NOTCL] Failed checking for latest version. Could not connect." msgstr "[WARNING_NOTCL] Failed checking for latest version. Could not connect." -#: FlatCAMApp.py:8330 +#: FlatCAMApp.py:8340 msgid "[ERROR_NOTCL] Could not parse information about latest version." msgstr "[ERROR_NOTCL] Could not parse information about latest version." -#: FlatCAMApp.py:8340 +#: FlatCAMApp.py:8350 msgid "[success] FlatCAM is up to date!" msgstr "[success] FlatCAM is up to date!" -#: FlatCAMApp.py:8345 +#: FlatCAMApp.py:8355 msgid "Newer Version Available" msgstr "Newer Version Available" -#: FlatCAMApp.py:8346 +#: FlatCAMApp.py:8356 msgid "" "There is a newer version of FlatCAM available for download:\n" "\n" @@ -1159,55 +1159,55 @@ msgstr "" "There is a newer version of FlatCAM available for download:\n" "\n" -#: FlatCAMApp.py:8348 +#: FlatCAMApp.py:8358 msgid "info" msgstr "info" -#: FlatCAMApp.py:8367 +#: FlatCAMApp.py:8377 msgid "[success] All plots disabled." msgstr "[success] All plots disabled." -#: FlatCAMApp.py:8373 +#: FlatCAMApp.py:8383 msgid "[success] All non selected plots disabled." msgstr "[success] All non selected plots disabled." -#: FlatCAMApp.py:8379 +#: FlatCAMApp.py:8389 msgid "[success] All plots enabled." msgstr "[success] All plots enabled." -#: FlatCAMApp.py:8385 +#: FlatCAMApp.py:8395 msgid "[success] Selected plots enabled..." msgstr "[success] Selected plots enabled..." -#: FlatCAMApp.py:8393 +#: FlatCAMApp.py:8403 msgid "[success] Selected plots disabled..." msgstr "[success] Selected plots disabled..." -#: FlatCAMApp.py:8403 FlatCAMApp.py:8416 +#: FlatCAMApp.py:8413 FlatCAMApp.py:8426 msgid "Working ..." msgstr "Working ..." -#: FlatCAMApp.py:8450 +#: FlatCAMApp.py:8460 msgid "Saving FlatCAM Project" msgstr "Saving FlatCAM Project" -#: FlatCAMApp.py:8471 FlatCAMApp.py:8502 +#: FlatCAMApp.py:8481 FlatCAMApp.py:8512 #, python-format msgid "[success] Project saved to: %s" msgstr "[success] Project saved to: %s" -#: FlatCAMApp.py:8489 +#: FlatCAMApp.py:8499 #, 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:8496 +#: FlatCAMApp.py:8506 #, 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:8504 +#: FlatCAMApp.py:8514 #, 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." @@ -1217,34 +1217,34 @@ msgstr "[ERROR_NOTCL] Failed to save project file: %s. Retry to save it." msgid "[success] Name changed from {old} to {new}" msgstr "[success] Name changed from {old} to {new}" -#: FlatCAMObj.py:553 FlatCAMObj.py:2035 FlatCAMObj.py:3301 FlatCAMObj.py:5478 +#: FlatCAMObj.py:553 FlatCAMObj.py:2034 FlatCAMObj.py:3300 FlatCAMObj.py:5485 msgid "Basic" msgstr "Basic" -#: FlatCAMObj.py:565 FlatCAMObj.py:2051 FlatCAMObj.py:3323 FlatCAMObj.py:5484 +#: FlatCAMObj.py:565 FlatCAMObj.py:2050 FlatCAMObj.py:3322 FlatCAMObj.py:5491 msgid "Advanced" msgstr "Advanced" -#: FlatCAMObj.py:928 FlatCAMObj.py:983 +#: FlatCAMObj.py:927 FlatCAMObj.py:982 #, python-format msgid "[success] Isolation geometry created: %s" msgstr "[success] Isolation geometry created: %s" -#: FlatCAMObj.py:1162 +#: FlatCAMObj.py:1161 msgid "Plotting Apertures" msgstr "Plotting Apertures" -#: FlatCAMObj.py:1878 flatcamEditors/FlatCAMExcEditor.py:1368 +#: FlatCAMObj.py:1877 flatcamEditors/FlatCAMExcEditor.py:1368 msgid "Total Drills" msgstr "Total Drills" -#: FlatCAMObj.py:1904 flatcamEditors/FlatCAMExcEditor.py:1400 +#: FlatCAMObj.py:1903 flatcamEditors/FlatCAMExcEditor.py:1400 msgid "Total Slots" msgstr "Total Slots" -#: FlatCAMObj.py:2107 FlatCAMObj.py:3375 FlatCAMObj.py:3675 FlatCAMObj.py:3862 -#: FlatCAMObj.py:3875 FlatCAMObj.py:3992 FlatCAMObj.py:4409 FlatCAMObj.py:4647 -#: FlatCAMObj.py:5060 flatcamEditors/FlatCAMExcEditor.py:1474 +#: FlatCAMObj.py:2106 FlatCAMObj.py:3374 FlatCAMObj.py:3674 FlatCAMObj.py:3869 +#: FlatCAMObj.py:3882 FlatCAMObj.py:3999 FlatCAMObj.py:4416 FlatCAMObj.py:4654 +#: FlatCAMObj.py:5067 flatcamEditors/FlatCAMExcEditor.py:1474 #: flatcamTools/ToolCalculators.py:307 flatcamTools/ToolCalculators.py:318 #: flatcamTools/ToolCalculators.py:330 flatcamTools/ToolCalculators.py:345 #: flatcamTools/ToolCalculators.py:358 flatcamTools/ToolCalculators.py:372 @@ -1263,23 +1263,23 @@ msgstr "Total Slots" msgid "[ERROR_NOTCL] Wrong value format entered, use a number." msgstr "[ERROR_NOTCL] Wrong value format entered, use a number." -#: FlatCAMObj.py:2331 FlatCAMObj.py:2423 FlatCAMObj.py:2546 +#: FlatCAMObj.py:2330 FlatCAMObj.py:2422 FlatCAMObj.py:2545 msgid "" "[ERROR_NOTCL] Please select one or more tools from the list and try again." msgstr "" "[ERROR_NOTCL] Please select one or more tools from the list and try again." -#: FlatCAMObj.py:2338 +#: FlatCAMObj.py:2337 msgid "" "[ERROR_NOTCL] Milling tool for DRILLS is larger than hole size. Cancelled." msgstr "" "[ERROR_NOTCL] Milling tool for DRILLS is larger than hole size. Cancelled." -#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 +#: FlatCAMObj.py:2351 FlatCAMObj.py:2446 FlatCAMObj.py:2565 msgid "Tool_nr" msgstr "Tool_nr" -#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 +#: FlatCAMObj.py:2351 FlatCAMObj.py:2446 FlatCAMObj.py:2565 #: flatcamEditors/FlatCAMExcEditor.py:819 #: flatcamEditors/FlatCAMExcEditor.py:2020 flatcamGUI/ObjectUI.py:556 #: flatcamTools/ToolNonCopperClear.py:83 flatcamTools/ToolPaint.py:80 @@ -1287,21 +1287,21 @@ msgstr "Tool_nr" msgid "Diameter" msgstr "Diameter" -#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 +#: FlatCAMObj.py:2351 FlatCAMObj.py:2446 FlatCAMObj.py:2565 msgid "Drills_Nr" msgstr "Drills_Nr" -#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 +#: FlatCAMObj.py:2351 FlatCAMObj.py:2446 FlatCAMObj.py:2565 msgid "Slots_Nr" msgstr "Slots_Nr" -#: FlatCAMObj.py:2433 +#: FlatCAMObj.py:2432 msgid "" "[ERROR_NOTCL] Milling tool for SLOTS is larger than hole size. Cancelled." msgstr "" "[ERROR_NOTCL] Milling tool for SLOTS is larger than hole size. Cancelled." -#: FlatCAMObj.py:2608 FlatCAMObj.py:4297 FlatCAMObj.py:4513 FlatCAMObj.py:4830 +#: FlatCAMObj.py:2607 FlatCAMObj.py:4304 FlatCAMObj.py:4520 FlatCAMObj.py:4837 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"z_pdepth\"] or self." "options[\"z_pdepth\"]" @@ -1309,7 +1309,7 @@ msgstr "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"z_pdepth\"] or self." "options[\"z_pdepth\"]" -#: FlatCAMObj.py:2620 FlatCAMObj.py:4309 FlatCAMObj.py:4525 FlatCAMObj.py:4842 +#: FlatCAMObj.py:2619 FlatCAMObj.py:4316 FlatCAMObj.py:4532 FlatCAMObj.py:4849 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"feedrate_probe\"] or " "self.options[\"feedrate_probe\"]" @@ -1317,11 +1317,11 @@ msgstr "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"feedrate_probe\"] or " "self.options[\"feedrate_probe\"]" -#: FlatCAMObj.py:2652 FlatCAMObj.py:4718 FlatCAMObj.py:4723 FlatCAMObj.py:4873 +#: FlatCAMObj.py:2651 FlatCAMObj.py:4725 FlatCAMObj.py:4730 FlatCAMObj.py:4880 msgid "Generating CNC Code" msgstr "Generating CNC Code" -#: FlatCAMObj.py:2678 FlatCAMObj.py:5019 camlib.py:5167 camlib.py:5626 +#: FlatCAMObj.py:2677 FlatCAMObj.py:5026 camlib.py:5167 camlib.py:5626 #: camlib.py:5889 msgid "" "[ERROR]The Toolchange X,Y field in Edit -> Preferences has to be in the " @@ -1332,77 +1332,77 @@ msgstr "" "format (x, y) \n" "but now there is only one value, not two. " -#: FlatCAMObj.py:2998 FlatCAMObj.py:3918 FlatCAMObj.py:3919 FlatCAMObj.py:3928 +#: FlatCAMObj.py:2997 FlatCAMObj.py:3925 FlatCAMObj.py:3926 FlatCAMObj.py:3935 msgid "Iso" msgstr "Iso" -#: FlatCAMObj.py:2998 FlatCAMObj.py:3258 FlatCAMObj.py:3540 +#: FlatCAMObj.py:2997 FlatCAMObj.py:3257 FlatCAMObj.py:3539 msgid "Rough" msgstr "Rough" -#: FlatCAMObj.py:2998 +#: FlatCAMObj.py:2997 msgid "Finish" msgstr "Finish" -#: FlatCAMObj.py:3294 flatcamGUI/FlatCAMGUI.py:526 flatcamGUI/FlatCAMGUI.py:722 +#: FlatCAMObj.py:3293 flatcamGUI/FlatCAMGUI.py:526 flatcamGUI/FlatCAMGUI.py:722 #: flatcamGUI/FlatCAMGUI.py:1615 flatcamGUI/FlatCAMGUI.py:1951 #: flatcamGUI/ObjectUI.py:999 msgid "Copy" msgstr "Copy" -#: FlatCAMObj.py:3510 +#: FlatCAMObj.py:3509 msgid "[ERROR_NOTCL] Please enter the desired tool diameter in Float format." msgstr "[ERROR_NOTCL] Please enter the desired tool diameter in Float format." -#: FlatCAMObj.py:3585 +#: FlatCAMObj.py:3584 msgid "[success] Tool added in Tool Table." msgstr "[success] Tool added in Tool Table." -#: FlatCAMObj.py:3590 +#: FlatCAMObj.py:3589 msgid "[ERROR_NOTCL] Default Tool added. Wrong value format entered." msgstr "[ERROR_NOTCL] Default Tool added. Wrong value format entered." -#: FlatCAMObj.py:3620 FlatCAMObj.py:3630 +#: FlatCAMObj.py:3619 FlatCAMObj.py:3629 msgid "[WARNING_NOTCL] Failed. Select a tool to copy." msgstr "[WARNING_NOTCL] Failed. Select a tool to copy." -#: FlatCAMObj.py:3659 +#: FlatCAMObj.py:3658 msgid "[success] Tool was copied in Tool Table." msgstr "[success] Tool was copied in Tool Table." -#: FlatCAMObj.py:3692 +#: FlatCAMObj.py:3691 msgid "[success] Tool was edited in Tool Table." msgstr "[success] Tool was edited in Tool Table." -#: FlatCAMObj.py:3723 FlatCAMObj.py:3733 +#: FlatCAMObj.py:3722 FlatCAMObj.py:3732 msgid "[WARNING_NOTCL] Failed. Select a tool to delete." msgstr "[WARNING_NOTCL] Failed. Select a tool to delete." -#: FlatCAMObj.py:3757 +#: FlatCAMObj.py:3756 msgid "[success] Tool was deleted in Tool Table." msgstr "[success] Tool was deleted in Tool Table." -#: FlatCAMObj.py:4178 +#: FlatCAMObj.py:4185 #, python-format msgid "" "[WARNING_NOTCL] This Geometry can't be processed because it is %s geometry." msgstr "" "[WARNING_NOTCL] This Geometry can't be processed because it is %s geometry." -#: FlatCAMObj.py:4195 +#: FlatCAMObj.py:4202 msgid "[ERROR_NOTCL] Wrong Tool Dia value format entered, use a number." msgstr "[ERROR_NOTCL] Wrong Tool Dia value format entered, use a number." -#: FlatCAMObj.py:4222 +#: FlatCAMObj.py:4229 msgid "[ERROR_NOTCL] Failed. No tool selected in the tool table ..." msgstr "[ERROR_NOTCL] Failed. No tool selected in the tool table ..." -#: FlatCAMObj.py:4260 +#: FlatCAMObj.py:4267 #, python-format msgid "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" msgstr "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" -#: FlatCAMObj.py:4418 FlatCAMObj.py:4656 +#: FlatCAMObj.py:4425 FlatCAMObj.py:4663 msgid "" "[WARNING] Tool Offset is selected in Tool Table but no value is provided.\n" "Add a Tool Offset or change the Offset Type." @@ -1410,20 +1410,20 @@ msgstr "" "[WARNING] Tool Offset is selected in Tool Table but no value is provided.\n" "Add a Tool Offset or change the Offset Type." -#: FlatCAMObj.py:4537 flatcamTools/ToolSolderPaste.py:1107 +#: FlatCAMObj.py:4544 flatcamTools/ToolSolderPaste.py:1107 #: flatcamTools/ToolSolderPaste.py:1162 msgid "[ERROR_NOTCL] Cancelled. Empty file, it has no geometry..." msgstr "[ERROR_NOTCL] Cancelled. Empty file, it has no geometry..." -#: FlatCAMObj.py:4906 FlatCAMObj.py:4916 camlib.py:3348 camlib.py:3357 +#: FlatCAMObj.py:4913 FlatCAMObj.py:4923 camlib.py:3348 camlib.py:3357 msgid "[ERROR_NOTCL] Scale factor has to be a number: integer or float." msgstr "[ERROR_NOTCL] Scale factor has to be a number: integer or float." -#: FlatCAMObj.py:4954 +#: FlatCAMObj.py:4961 msgid "[success] Geometry Scale done." msgstr "[success] Geometry Scale done." -#: FlatCAMObj.py:4971 camlib.py:3426 +#: FlatCAMObj.py:4978 camlib.py:3426 msgid "" "[ERROR_NOTCL] An (x,y) pair of values are needed. Probable you entered only " "one value in the Offset field." @@ -1431,29 +1431,29 @@ msgstr "" "[ERROR_NOTCL] An (x,y) pair of values are needed. Probable you entered only " "one value in the Offset field." -#: FlatCAMObj.py:4991 +#: FlatCAMObj.py:4998 msgid "[success] Geometry Offset done." msgstr "[success] Geometry Offset done." -#: FlatCAMObj.py:5546 FlatCAMObj.py:5551 flatcamTools/ToolSolderPaste.py:1361 +#: FlatCAMObj.py:5553 FlatCAMObj.py:5558 flatcamTools/ToolSolderPaste.py:1361 msgid "Export Machine Code ..." msgstr "Export Machine Code ..." -#: FlatCAMObj.py:5557 flatcamTools/ToolSolderPaste.py:1364 +#: FlatCAMObj.py:5564 flatcamTools/ToolSolderPaste.py:1364 msgid "[WARNING_NOTCL] Export Machine Code cancelled ..." msgstr "[WARNING_NOTCL] Export Machine Code cancelled ..." -#: FlatCAMObj.py:5570 +#: FlatCAMObj.py:5577 #, python-format msgid "[success] Machine Code file saved to: %s" msgstr "[success] Machine Code file saved to: %s" -#: FlatCAMObj.py:5592 +#: FlatCAMObj.py:5599 #, python-format msgid "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" msgstr "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" -#: FlatCAMObj.py:5709 +#: FlatCAMObj.py:5716 #, python-format msgid "" "[WARNING_NOTCL] This CNCJob object can't be processed because it is a %s " @@ -1462,11 +1462,11 @@ msgstr "" "[WARNING_NOTCL] This CNCJob object can't be processed because it is a %s " "CNCJob object." -#: FlatCAMObj.py:5762 +#: FlatCAMObj.py:5769 msgid "[ERROR_NOTCL] G-code does not have a units code: either G20 or G21" msgstr "[ERROR_NOTCL] G-code does not have a units code: either G20 or G21" -#: FlatCAMObj.py:5775 +#: FlatCAMObj.py:5782 msgid "" "[ERROR_NOTCL] Cancelled. The Toolchange Custom code is enabled but it's " "empty." @@ -1474,15 +1474,15 @@ msgstr "" "[ERROR_NOTCL] Cancelled. The Toolchange Custom code is enabled but it's " "empty." -#: FlatCAMObj.py:5782 +#: FlatCAMObj.py:5789 msgid "[success] Toolchange G-code was replaced by a custom code." msgstr "[success] Toolchange G-code was replaced by a custom code." -#: FlatCAMObj.py:5797 flatcamTools/ToolSolderPaste.py:1390 +#: FlatCAMObj.py:5804 flatcamTools/ToolSolderPaste.py:1390 msgid "[WARNING_NOTCL] No such file or directory" msgstr "[WARNING_NOTCL] No such file or directory" -#: FlatCAMObj.py:5817 FlatCAMObj.py:5829 +#: FlatCAMObj.py:5824 FlatCAMObj.py:5836 msgid "" "[WARNING_NOTCL] The used postprocessor file has to have in it's name: " "'toolchange_custom'" @@ -1490,7 +1490,7 @@ msgstr "" "[WARNING_NOTCL] The used postprocessor file has to have in it's name: " "'toolchange_custom'" -#: FlatCAMObj.py:5835 +#: FlatCAMObj.py:5842 msgid "[ERROR] There is no postprocessor file." msgstr "[ERROR] There is no postprocessor file." @@ -7469,7 +7469,6 @@ msgstr "" "circle and arc shapes linear approximation." #: flatcamGUI/FlatCAMGUI.py:5159 -#| msgid "Tools" msgid "Tools:" msgstr "Tools:" @@ -11047,11 +11046,11 @@ msgstr "" msgid "[ERROR_NOTCL] PaintTool.paint_poly() --> %s" msgstr "[ERROR_NOTCL] PaintTool.paint_poly() --> %s" -#: flatcamTools/ToolPaint.py:970 flatcamTools/ToolPaint.py:1263 +#: flatcamTools/ToolPaint.py:970 flatcamTools/ToolPaint.py:1267 msgid "Polygon Paint started ..." msgstr "Polygon Paint started ..." -#: flatcamTools/ToolPaint.py:1119 flatcamTools/ToolPaint.py:1208 +#: flatcamTools/ToolPaint.py:1123 flatcamTools/ToolPaint.py:1212 #, python-format msgid "" "[ERROR] Could not do Paint All. Try a different combination of parameters. " @@ -11062,7 +11061,7 @@ msgstr "" "Or a different Method of paint\n" "%s" -#: flatcamTools/ToolPaint.py:1143 +#: flatcamTools/ToolPaint.py:1147 msgid "" "[ERROR] There is no Painting Geometry in the file.\n" "Usually it means that the tool diameter is too big for the painted " @@ -11074,11 +11073,11 @@ msgstr "" "geometry.\n" "Change the painting parameters and try again." -#: flatcamTools/ToolPaint.py:1152 +#: flatcamTools/ToolPaint.py:1156 msgid "[success] Paint All Done." msgstr "[success] Paint All Done." -#: flatcamTools/ToolPaint.py:1238 +#: flatcamTools/ToolPaint.py:1242 msgid "" "[ERROR_NOTCL] There is no Painting Geometry in the file.\n" "Usually it means that the tool diameter is too big for the painted " @@ -11090,7 +11089,7 @@ msgstr "" "geometry.\n" "Change the painting parameters and try again." -#: flatcamTools/ToolPaint.py:1247 +#: flatcamTools/ToolPaint.py:1251 msgid "[success] Paint All with Rest-Machining done." msgstr "[success] Paint All with Rest-Machining done." diff --git a/locale/ro/LC_MESSAGES/strings.mo b/locale/ro/LC_MESSAGES/strings.mo index dd3a1c97c93b79216701461ac47d4701211e6394..8bbe5afc6d6287d3caca14e85b086b6df68f5e51 100644 GIT binary patch delta 44 ucmaESSm^O#p@tU5Elg46tVV`b2FBCl%bAoR%=Y$jCLm_s-d@fUqXhtH=MLup delta 44 vcmaESSm^O#p@tU5Elg46tcGS*CWh1F%bAqHOr!SpawZ^V-rio$5~BqGY6=eY diff --git a/locale/ro/LC_MESSAGES/strings.po b/locale/ro/LC_MESSAGES/strings.po index 7ad9f541..3bc7bfb9 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-06-22 16:41+0300\n" -"PO-Revision-Date: 2019-06-22 16:42+0300\n" +"POT-Creation-Date: 2019-06-22 21:03+0300\n" +"PO-Revision-Date: 2019-06-22 21:03+0300\n" "Last-Translator: \n" "Language-Team: \n" "Language: ro\n" @@ -41,13 +41,13 @@ msgstr "Deschiderea fişierului de configurare a eşuat." msgid "Open Script file failed." msgstr "Deschiderea fişierului Script eşuat." -#: FlatCAMApp.py:2235 +#: FlatCAMApp.py:2234 msgid "[WARNING_NOTCL] Select a Geometry, Gerber or Excellon Object to edit." msgstr "" "[WARNING_NOTCL] Selectează un obiect tip Geometrie Gerber sau Excellon " "pentru editare." -#: FlatCAMApp.py:2245 +#: FlatCAMApp.py:2244 msgid "" "[WARNING_NOTCL] Simultanoeus editing of tools geometry in a MultiGeo " "Geometry is not possible.\n" @@ -57,102 +57,102 @@ msgstr "" "obiect tip Geometrie MultiGeo nu este posibilă.\n" "Se poate edita numai o singură geometrie de fiecare dată." -#: FlatCAMApp.py:2289 +#: FlatCAMApp.py:2299 msgid "[WARNING_NOTCL] Editor is activated ..." msgstr "[WARNING_NOTCL] Editorul este activ. .." -#: FlatCAMApp.py:2307 +#: FlatCAMApp.py:2317 msgid "Do you want to save the edited object?" msgstr "Vrei sa salvezi obiectul editat?" -#: FlatCAMApp.py:2308 flatcamGUI/FlatCAMGUI.py:1618 +#: FlatCAMApp.py:2318 flatcamGUI/FlatCAMGUI.py:1618 msgid "Close Editor" msgstr "Inchide Editorul" -#: FlatCAMApp.py:2311 FlatCAMApp.py:3403 FlatCAMApp.py:5908 +#: FlatCAMApp.py:2321 FlatCAMApp.py:3413 FlatCAMApp.py:5918 #: FlatCAMTranslation.py:89 flatcamGUI/FlatCAMGUI.py:3730 msgid "Yes" msgstr "Da" -#: FlatCAMApp.py:2312 FlatCAMApp.py:3404 FlatCAMApp.py:5909 +#: FlatCAMApp.py:2322 FlatCAMApp.py:3414 FlatCAMApp.py:5919 #: FlatCAMTranslation.py:90 flatcamGUI/FlatCAMGUI.py:3731 msgid "No" msgstr "Nu" -#: FlatCAMApp.py:2313 FlatCAMApp.py:3405 FlatCAMApp.py:3754 FlatCAMApp.py:5910 +#: FlatCAMApp.py:2323 FlatCAMApp.py:3415 FlatCAMApp.py:3764 FlatCAMApp.py:5920 msgid "Cancel" msgstr "Anuleaza" -#: FlatCAMApp.py:2340 +#: FlatCAMApp.py:2350 msgid "[WARNING] Object empty after edit." msgstr "[WARNING] Obiectul nu are date dupa editare." -#: FlatCAMApp.py:2362 FlatCAMApp.py:2381 FlatCAMApp.py:2393 +#: FlatCAMApp.py:2372 FlatCAMApp.py:2391 FlatCAMApp.py:2403 msgid "[WARNING_NOTCL] Select a Gerber, Geometry or Excellon Object to update." msgstr "" "[WARNING_NOTCL] Selectează un obiect tip Gerber, Geometrie sau Excellon " "pentru salvare." -#: FlatCAMApp.py:2365 +#: FlatCAMApp.py:2375 #, python-format msgid "[selected] %s is updated, returning to App..." msgstr "[selected] %s este actualizat, intoarcere la aplicaţie." -#: FlatCAMApp.py:2730 +#: FlatCAMApp.py:2740 msgid "[ERROR] Could not load defaults file." msgstr "[ERROR] Nu am putut incărca fişierul cu valori default." -#: FlatCAMApp.py:2742 +#: FlatCAMApp.py:2752 msgid "[ERROR] Failed to parse defaults file." msgstr "[ERROR] Parsarea fişierului cu valori default a eșuat." -#: FlatCAMApp.py:2763 FlatCAMApp.py:2767 +#: FlatCAMApp.py:2773 FlatCAMApp.py:2777 msgid "Import FlatCAM Preferences" msgstr "Importa Preferințele FlatCAM" -#: FlatCAMApp.py:2773 +#: FlatCAMApp.py:2783 msgid "[WARNING_NOTCL] FlatCAM preferences import cancelled." msgstr "[WARNING_NOTCL] Importul preferințelor FlatCAM a eșuat." -#: FlatCAMApp.py:2781 FlatCAMApp.py:2835 FlatCAMApp.py:3282 +#: FlatCAMApp.py:2791 FlatCAMApp.py:2845 FlatCAMApp.py:3292 msgid "[ERROR_NOTCL] Could not load defaults file." msgstr "" "[ERROR_NOTCL] Nu a fost posibilă incărcarea fişierului cu valori default." -#: FlatCAMApp.py:2789 FlatCAMApp.py:3291 +#: FlatCAMApp.py:2799 FlatCAMApp.py:3301 msgid "[ERROR_NOTCL] Failed to parse defaults file." msgstr "[ERROR_NOTCL] Parsarea fişierului cu valori default a eșuat." -#: FlatCAMApp.py:2792 +#: FlatCAMApp.py:2802 #, python-format msgid "[success] Imported Defaults from %s" msgstr "[success] Valorile default au fost importate din %s" -#: FlatCAMApp.py:2807 FlatCAMApp.py:2812 +#: FlatCAMApp.py:2817 FlatCAMApp.py:2822 msgid "Export FlatCAM Preferences" msgstr "Exporta Preferințele FlatCAM" -#: FlatCAMApp.py:2819 +#: FlatCAMApp.py:2829 msgid "[WARNING_NOTCL] FlatCAM preferences export cancelled." msgstr "[WARNING_NOTCL] Exportul preferințelor FlatCAM este anulat." -#: FlatCAMApp.py:2854 FlatCAMApp.py:3336 +#: FlatCAMApp.py:2864 FlatCAMApp.py:3346 msgid "[ERROR_NOTCL] Failed to write defaults to file." msgstr "[ERROR_NOTCL] Salvarea valorilor default intr-un fişier a eșuat." -#: FlatCAMApp.py:2907 +#: FlatCAMApp.py:2917 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 eșuat." -#: FlatCAMApp.py:2984 camlib.py:4457 +#: FlatCAMApp.py:2994 camlib.py:4457 msgid "[ERROR_NOTCL] An internal error has ocurred. See shell.\n" msgstr "" "[ERROR_NOTCL] A apărut o eroare internă. Verifică in TCL Shell pt mai multe " "detalii.\n" -#: FlatCAMApp.py:2985 +#: FlatCAMApp.py:2995 #, python-brace-format msgid "" "Object ({kind}) failed because: {error} \n" @@ -161,11 +161,11 @@ msgstr "" "Obiectul ({kind}) a eșuat din cauza: {error} \n" "\n" -#: FlatCAMApp.py:3005 +#: FlatCAMApp.py:3015 msgid "Converting units to " msgstr "Se convertesc unitatile la " -#: FlatCAMApp.py:3084 FlatCAMApp.py:3087 FlatCAMApp.py:3090 FlatCAMApp.py:3093 +#: FlatCAMApp.py:3094 FlatCAMApp.py:3097 FlatCAMApp.py:3100 FlatCAMApp.py:3103 #, python-brace-format msgid "" "[selected] {kind} created/selected: {name}{name}" -#: FlatCAMApp.py:3187 +#: FlatCAMApp.py:3197 #, python-brace-format msgid "" "FlatCAM
Version {version} {beta} ({date}) - " @@ -196,35 +196,35 @@ msgstr "" "flatcam/src/Beta/\">aici.
Sectiunea DOWNLOAD este aici.
" -#: FlatCAMApp.py:3340 +#: FlatCAMApp.py:3350 msgid "[success] Defaults saved." msgstr "[success] Valorile default au fost salvate." -#: FlatCAMApp.py:3361 +#: FlatCAMApp.py:3371 msgid "[ERROR_NOTCL] Could not load factory defaults file." msgstr "" "[ERROR_NOTCL] Fişierul cu valori default de fabrică nu a putut fi deschis." -#: FlatCAMApp.py:3370 +#: FlatCAMApp.py:3380 msgid "[ERROR_NOTCL] Failed to parse factory defaults file." msgstr "" "[ERROR_NOTCL] Parsarea fişierului cu valori default de fabrică a eșuat." -#: FlatCAMApp.py:3384 +#: FlatCAMApp.py:3394 msgid "[ERROR_NOTCL] Failed to write factory defaults to file." msgstr "" "[ERROR_NOTCL]] Salvarea fişierului cu valori default de fabrică intr-un " "fişier a eșuat." -#: FlatCAMApp.py:3388 +#: FlatCAMApp.py:3398 msgid "Factory defaults saved." msgstr "Valori default de fabrică au fost salvate." -#: FlatCAMApp.py:3393 flatcamGUI/FlatCAMGUI.py:3106 +#: FlatCAMApp.py:3403 flatcamGUI/FlatCAMGUI.py:3106 msgid "[WARNING_NOTCL] Application is saving the project. Please wait ..." msgstr "[WARNING_NOTCL] Aplicația salvează proiectul. Vă rugăm aşteptați ..." -#: FlatCAMApp.py:3398 +#: FlatCAMApp.py:3408 msgid "" "There are files/objects modified in FlatCAM. \n" "Do you want to Save the project?" @@ -232,11 +232,11 @@ msgstr "" "FlatCAM are fişiere/obiecte care au fost modificate. \n" "Dorești să Salvezi proiectul?" -#: FlatCAMApp.py:3401 FlatCAMApp.py:5906 +#: FlatCAMApp.py:3411 FlatCAMApp.py:5916 msgid "Save changes" msgstr "Salvează modificarile." -#: FlatCAMApp.py:3468 +#: FlatCAMApp.py:3478 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 " @@ -253,72 +253,72 @@ msgstr "" "informatii și rezultatul ar putea să nu fie cel dorit. \n" "Verifică codul G-Code generat." -#: FlatCAMApp.py:3509 +#: FlatCAMApp.py:3519 msgid "[ERROR_NOTCL] Failed. Excellon joining works only on Excellon objects." msgstr "" "[ERROR_NOTCL] Eșuat. Fuzionarea Excellon functionează doar cu obiecte de tip " "Excellon." -#: FlatCAMApp.py:3531 +#: FlatCAMApp.py:3541 msgid "[ERROR_NOTCL] Failed. Gerber joining works only on Gerber objects." msgstr "" "[ERROR_NOTCL] Eșuat. Fuzionarea Gerber functionează doar cu obiecte de tip " "Gerber ." -#: FlatCAMApp.py:3546 FlatCAMApp.py:3571 +#: FlatCAMApp.py:3556 FlatCAMApp.py:3581 msgid "[ERROR_NOTCL] Failed. Select a Geometry Object and try again." msgstr "" "[ERROR_NOTCL] Eșuat. Selectează un obiect Geometrie și încearcă din nou." -#: FlatCAMApp.py:3550 FlatCAMApp.py:3575 +#: FlatCAMApp.py:3560 FlatCAMApp.py:3585 #, python-format msgid "[ERROR_NOTCL] Expected a FlatCAMGeometry, got %s" msgstr "[ERROR_NOTCL] Se astepta o Geometrie FlatCAM, s-a primit %s" -#: FlatCAMApp.py:3563 +#: FlatCAMApp.py:3573 msgid "[success] A Geometry object was converted to MultiGeo type." msgstr "[success] Un obiect Geometrie a fost convertit la tipul MultiGeo." -#: FlatCAMApp.py:3589 +#: FlatCAMApp.py:3599 msgid "[success] A Geometry object was converted to SingleGeo type." msgstr "[success] Un obiect Geometrie a fost convertit la tipul SingleGeo ." -#: FlatCAMApp.py:3753 FlatCAMApp.py:4593 FlatCAMApp.py:6181 FlatCAMApp.py:6192 -#: FlatCAMApp.py:6432 FlatCAMApp.py:6442 +#: FlatCAMApp.py:3763 FlatCAMApp.py:4603 FlatCAMApp.py:6191 FlatCAMApp.py:6202 +#: FlatCAMApp.py:6442 FlatCAMApp.py:6452 msgid "Ok" msgstr "Ok" -#: FlatCAMApp.py:3799 +#: FlatCAMApp.py:3809 #, python-format msgid "[success] Converted units to %s" msgstr "[success] Conversie unitati la %s" -#: FlatCAMApp.py:3810 +#: FlatCAMApp.py:3820 msgid "[WARNING_NOTCL] Units conversion cancelled." msgstr "[WARNING_NOTCL] Conversia unitatilor este anulată." -#: FlatCAMApp.py:4462 +#: FlatCAMApp.py:4472 msgid "Open file" msgstr "Deschide fişierul ..." -#: FlatCAMApp.py:4493 FlatCAMApp.py:4498 +#: FlatCAMApp.py:4503 FlatCAMApp.py:4508 msgid "Export G-Code ..." msgstr "Exporta G-Code ..." -#: FlatCAMApp.py:4501 +#: FlatCAMApp.py:4511 msgid "[WARNING_NOTCL] Export Code cancelled." msgstr "[WARNING_NOTCL Exportul GCode este anulat." -#: FlatCAMApp.py:4511 +#: FlatCAMApp.py:4521 msgid "[WARNING] No such file or directory" msgstr "[WARNING] Nu exista un aşa fişier sau director" -#: FlatCAMApp.py:4518 +#: FlatCAMApp.py:4528 #, python-format msgid "Saved to: %s" msgstr "Salvat in: %s" -#: FlatCAMApp.py:4581 FlatCAMApp.py:4614 FlatCAMApp.py:4625 FlatCAMApp.py:4636 +#: FlatCAMApp.py:4591 FlatCAMApp.py:4624 FlatCAMApp.py:4635 FlatCAMApp.py:4646 #: flatcamTools/ToolNonCopperClear.py:489 flatcamTools/ToolSolderPaste.py:765 msgid "" "[WARNING_NOTCL] Please enter a tool diameter with non-zero value, in Float " @@ -327,12 +327,12 @@ msgstr "" "[WARNING_NOTCL] Introdu un diametru al uneltei valid: valoare ne-nula in " "format Real." -#: FlatCAMApp.py:4586 FlatCAMApp.py:4619 FlatCAMApp.py:4630 FlatCAMApp.py:4641 +#: FlatCAMApp.py:4596 FlatCAMApp.py:4629 FlatCAMApp.py:4640 FlatCAMApp.py:4651 #: flatcamGUI/FlatCAMGUI.py:3001 msgid "[WARNING_NOTCL] Adding Tool cancelled ..." msgstr "[WARNING_NOTCL] Adăugarea unei unelte anulată ..." -#: FlatCAMApp.py:4589 +#: FlatCAMApp.py:4599 msgid "" "Adding Tool works only when Advanced is checked.\n" "Go to Preferences -> General - Show Advanced Options." @@ -340,35 +340,35 @@ msgstr "" "Adăugarea de unelte noi functionează doar in modul Avansat.\n" "Pentru aceasta mergi in Preferințe -> General - Activează Modul Avansat." -#: FlatCAMApp.py:4702 +#: FlatCAMApp.py:4712 msgid "Object(s) deleted ..." msgstr "Obiect(ele) șters(e)." -#: FlatCAMApp.py:4706 +#: FlatCAMApp.py:4716 msgid "Failed. No object(s) selected..." msgstr "Eșuat. Nici-un obiect nu este selectat." -#: FlatCAMApp.py:4708 +#: FlatCAMApp.py:4718 msgid "Save the work in Editor and try again ..." msgstr "Salvează continutul din Editor și încearcă din nou." -#: FlatCAMApp.py:4721 +#: FlatCAMApp.py:4731 msgid "Click to set the origin ..." msgstr "Click pentru a seta originea..." -#: FlatCAMApp.py:4733 +#: FlatCAMApp.py:4743 msgid "Jump to ..." msgstr "Sari la ..." -#: FlatCAMApp.py:4734 +#: FlatCAMApp.py:4744 msgid "Enter the coordinates in format X,Y:" msgstr "Introduceți coordonatele in format X,Y:" -#: FlatCAMApp.py:4741 +#: FlatCAMApp.py:4751 msgid "Wrong coordinates. Enter coordinates in format: X,Y" msgstr "Coordonate gresite. Introduceți coordonatele in format X,Y." -#: FlatCAMApp.py:4759 flatcamEditors/FlatCAMExcEditor.py:2320 +#: FlatCAMApp.py:4769 flatcamEditors/FlatCAMExcEditor.py:2320 #: flatcamEditors/FlatCAMExcEditor.py:2327 #: flatcamEditors/FlatCAMGeoEditor.py:3648 #: flatcamEditors/FlatCAMGeoEditor.py:3662 @@ -382,88 +382,88 @@ msgstr "Coordonate gresite. Introduceți coordonatele in format X,Y." msgid "[success] Done." msgstr "[success] Executat." -#: FlatCAMApp.py:4891 FlatCAMApp.py:4958 +#: FlatCAMApp.py:4901 FlatCAMApp.py:4968 msgid "[WARNING_NOTCL] No object is selected. Select an object and try again." msgstr "" "[WARNING_NOTCL] Nici-un obiect nu este selectat. Selectează un obiect și " "incearcă din nou." -#: FlatCAMApp.py:4999 +#: FlatCAMApp.py:5009 msgid "[success] Origin set ..." msgstr "[success] Originea a fost setată ..." -#: FlatCAMApp.py:5019 +#: FlatCAMApp.py:5029 msgid "Preferences" msgstr "Preferințe" -#: FlatCAMApp.py:5039 +#: FlatCAMApp.py:5049 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:5064 +#: FlatCAMApp.py:5074 msgid "[success] Flip on Y axis done." msgstr "[success] Oglindire pe axa Y executată." -#: FlatCAMApp.py:5066 FlatCAMApp.py:5106 +#: FlatCAMApp.py:5076 FlatCAMApp.py:5116 #: flatcamEditors/FlatCAMGeoEditor.py:1355 #: flatcamEditors/FlatCAMGrbEditor.py:5343 flatcamTools/ToolTransform.py:748 #, python-format msgid "[ERROR_NOTCL] Due of %s, Flip action was not executed." msgstr "[ERROR_NOTCL] Datorita %s, oglindirea a eșuat." -#: FlatCAMApp.py:5079 +#: FlatCAMApp.py:5089 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:5104 +#: FlatCAMApp.py:5114 msgid "[success] Flip on X axis done." msgstr "[success] Oglindirea pe axa X executată." -#: FlatCAMApp.py:5119 +#: FlatCAMApp.py:5129 msgid "[WARNING_NOTCL] No object selected to Rotate." msgstr "[WARNING_NOTCL] Nici-un obiect selectat pentru Rotaţie." -#: FlatCAMApp.py:5122 FlatCAMApp.py:5167 FlatCAMApp.py:5198 +#: FlatCAMApp.py:5132 FlatCAMApp.py:5177 FlatCAMApp.py:5208 msgid "Transform" msgstr "Transformare" -#: FlatCAMApp.py:5122 FlatCAMApp.py:5167 FlatCAMApp.py:5198 +#: FlatCAMApp.py:5132 FlatCAMApp.py:5177 FlatCAMApp.py:5208 msgid "Enter the Angle value:" msgstr "Introduceți valoaea Unghiului:" -#: FlatCAMApp.py:5152 +#: FlatCAMApp.py:5162 msgid "[success] Rotation done." msgstr "[success] Rotaţie executată." -#: FlatCAMApp.py:5154 flatcamEditors/FlatCAMGeoEditor.py:1298 +#: FlatCAMApp.py:5164 flatcamEditors/FlatCAMGeoEditor.py:1298 #: flatcamEditors/FlatCAMGrbEditor.py:5272 flatcamTools/ToolTransform.py:677 #, python-format msgid "[ERROR_NOTCL] Due of %s, rotation movement was not executed." msgstr "[ERROR_NOTCL] Datorita %s, Rotatia a eșuat." -#: FlatCAMApp.py:5165 +#: FlatCAMApp.py:5175 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:5186 +#: FlatCAMApp.py:5196 msgid "[success] Skew on X axis done." msgstr "[success] Deformare pe axa X executată." -#: FlatCAMApp.py:5196 +#: FlatCAMApp.py:5206 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:5217 +#: FlatCAMApp.py:5227 msgid "[success] Skew on Y axis done." msgstr "[success] Deformare pe axa Y executată." -#: FlatCAMApp.py:5287 +#: FlatCAMApp.py:5297 msgid "Grid On/Off" msgstr "Grid On/Off" -#: FlatCAMApp.py:5300 flatcamEditors/FlatCAMGeoEditor.py:937 +#: FlatCAMApp.py:5310 flatcamEditors/FlatCAMGeoEditor.py:937 #: flatcamEditors/FlatCAMGrbEditor.py:2381 #: flatcamEditors/FlatCAMGrbEditor.py:4861 flatcamGUI/ObjectUI.py:991 #: flatcamTools/ToolDblSided.py:160 flatcamTools/ToolDblSided.py:208 @@ -473,7 +473,7 @@ msgstr "Grid On/Off" msgid "Add" msgstr "Adaugă" -#: FlatCAMApp.py:5301 FlatCAMObj.py:3296 +#: FlatCAMApp.py:5311 FlatCAMObj.py:3295 #: flatcamEditors/FlatCAMGrbEditor.py:2386 flatcamGUI/FlatCAMGUI.py:527 #: flatcamGUI/FlatCAMGUI.py:724 flatcamGUI/FlatCAMGUI.py:1616 #: flatcamGUI/FlatCAMGUI.py:1953 flatcamGUI/ObjectUI.py:1007 @@ -482,68 +482,68 @@ msgstr "Adaugă" msgid "Delete" msgstr "Șterge" -#: FlatCAMApp.py:5314 +#: FlatCAMApp.py:5324 msgid "New Grid ..." msgstr "Grid nou ..." -#: FlatCAMApp.py:5315 +#: FlatCAMApp.py:5325 msgid "Enter a Grid Value:" msgstr "Introduceti of valoare pt Grid:" -#: FlatCAMApp.py:5323 FlatCAMApp.py:5350 +#: FlatCAMApp.py:5333 FlatCAMApp.py:5360 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:5329 +#: FlatCAMApp.py:5339 msgid "[success] New Grid added ..." msgstr "[success] O noua valoare pt Grila a fost adăugată..." -#: FlatCAMApp.py:5332 +#: FlatCAMApp.py:5342 msgid "[WARNING_NOTCL] Grid already exists ..." msgstr "[WARNING_NOTCL] Grila există deja." -#: FlatCAMApp.py:5335 +#: FlatCAMApp.py:5345 msgid "[WARNING_NOTCL] Adding New Grid cancelled ..." msgstr "[WARNING_NOTCL] Adăugarea unei valori de Grilă a fost anulată ..." -#: FlatCAMApp.py:5357 +#: FlatCAMApp.py:5367 msgid "[ERROR_NOTCL] Grid Value does not exist ..." msgstr "[ERROR_NOTCL] Valoarea Grilei nu există ..." -#: FlatCAMApp.py:5360 +#: FlatCAMApp.py:5370 msgid "[success] Grid Value deleted ..." msgstr "[success] Valoarea Grila a fost stearsă." -#: FlatCAMApp.py:5363 +#: FlatCAMApp.py:5373 msgid "[WARNING_NOTCL] Delete Grid value cancelled ..." msgstr "[WARNING_NOTCL] Ștergerea unei valori de Grilă a fost anulată ..." -#: FlatCAMApp.py:5402 +#: FlatCAMApp.py:5412 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:5406 +#: FlatCAMApp.py:5416 msgid "Name copied on clipboard ..." msgstr "Numele a fost copiat pe Clipboard ..." -#: FlatCAMApp.py:5448 flatcamEditors/FlatCAMGrbEditor.py:3901 +#: FlatCAMApp.py:5458 flatcamEditors/FlatCAMGrbEditor.py:3901 msgid "[success] Coordinates copied to clipboard." msgstr "[success] Coordonatele au fost copiate in clipboard." -#: FlatCAMApp.py:5704 FlatCAMApp.py:5707 FlatCAMApp.py:5710 FlatCAMApp.py:5713 -#: FlatCAMApp.py:5728 FlatCAMApp.py:5731 FlatCAMApp.py:5734 FlatCAMApp.py:5737 -#: FlatCAMApp.py:5777 FlatCAMApp.py:5780 FlatCAMApp.py:5783 FlatCAMApp.py:5786 +#: FlatCAMApp.py:5714 FlatCAMApp.py:5717 FlatCAMApp.py:5720 FlatCAMApp.py:5723 +#: FlatCAMApp.py:5738 FlatCAMApp.py:5741 FlatCAMApp.py:5744 FlatCAMApp.py:5747 +#: FlatCAMApp.py:5787 FlatCAMApp.py:5790 FlatCAMApp.py:5793 FlatCAMApp.py:5796 #: ObjectCollection.py:719 ObjectCollection.py:722 ObjectCollection.py:725 #: ObjectCollection.py:728 #, python-brace-format msgid "[selected]{name} selected" msgstr "[selected]{name} selectat" -#: FlatCAMApp.py:5903 +#: FlatCAMApp.py:5913 msgid "" "There are files/objects opened in FlatCAM.\n" "Creating a New project will delete them.\n" @@ -553,111 +553,111 @@ msgstr "" "Crearea unui nou Proiect le va șterge..\n" "Doriti să Salvati proiectul curentt?" -#: FlatCAMApp.py:5924 +#: FlatCAMApp.py:5934 msgid "[success] New Project created..." msgstr "[success] Un nou Proiect a fost creat..." -#: FlatCAMApp.py:6040 FlatCAMApp.py:6043 flatcamGUI/FlatCAMGUI.py:608 +#: FlatCAMApp.py:6050 FlatCAMApp.py:6053 flatcamGUI/FlatCAMGUI.py:608 #: flatcamGUI/FlatCAMGUI.py:1832 msgid "Open Gerber" msgstr "Încarcă Gerber" -#: FlatCAMApp.py:6048 +#: FlatCAMApp.py:6058 msgid "[WARNING_NOTCL] Open Gerber cancelled." msgstr "[WARNING_NOTCL] Incărcarea unui fişier Gerber este anulată." -#: FlatCAMApp.py:6069 FlatCAMApp.py:6072 flatcamGUI/FlatCAMGUI.py:609 +#: FlatCAMApp.py:6079 FlatCAMApp.py:6082 flatcamGUI/FlatCAMGUI.py:609 #: flatcamGUI/FlatCAMGUI.py:1833 msgid "Open Excellon" msgstr "Încarcă Excellon" -#: FlatCAMApp.py:6077 +#: FlatCAMApp.py:6087 msgid "[WARNING_NOTCL] Open Excellon cancelled." msgstr "[WARNING_NOTCL] Incărcarea unui fişier Excellon este anulată." -#: FlatCAMApp.py:6099 FlatCAMApp.py:6102 +#: FlatCAMApp.py:6109 FlatCAMApp.py:6112 msgid "Open G-Code" msgstr "Încarcă G-Code" -#: FlatCAMApp.py:6107 +#: FlatCAMApp.py:6117 msgid "[WARNING_NOTCL] Open G-Code cancelled." msgstr "[WARNING_NOTCL] Incărcarea unui fişier G-Code este anulată." -#: FlatCAMApp.py:6125 FlatCAMApp.py:6128 +#: FlatCAMApp.py:6135 FlatCAMApp.py:6138 msgid "Open Project" msgstr "Încarcă Project" -#: FlatCAMApp.py:6136 +#: FlatCAMApp.py:6146 msgid "[WARNING_NOTCL] Open Project cancelled." msgstr "[WARNING_NOTCL] Incărcarea unui Proiect a fost anulată." -#: FlatCAMApp.py:6155 FlatCAMApp.py:6158 +#: FlatCAMApp.py:6165 FlatCAMApp.py:6168 msgid "Open Configuration File" msgstr "Încarcă un fişier de Configurare" -#: FlatCAMApp.py:6162 +#: FlatCAMApp.py:6172 msgid "[WARNING_NOTCL] Open Config cancelled." msgstr "[WARNING_NOTCL] Incărcarea unui fişier de Configurare este anulată." -#: FlatCAMApp.py:6177 FlatCAMApp.py:6428 FlatCAMApp.py:8581 FlatCAMApp.py:8601 -#: FlatCAMApp.py:8622 FlatCAMApp.py:8644 +#: FlatCAMApp.py:6187 FlatCAMApp.py:6438 FlatCAMApp.py:8591 FlatCAMApp.py:8611 +#: FlatCAMApp.py:8632 FlatCAMApp.py:8654 msgid "[WARNING_NOTCL] No object selected." msgstr "[WARNING_NOTCL] Nici-un obiect selectat." -#: FlatCAMApp.py:6178 FlatCAMApp.py:6429 +#: FlatCAMApp.py:6188 FlatCAMApp.py:6439 msgid "Please Select a Geometry object to export" msgstr "Selectează un obiect Geometrie pentru export" -#: FlatCAMApp.py:6189 +#: FlatCAMApp.py:6199 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:6202 FlatCAMApp.py:6206 +#: FlatCAMApp.py:6212 FlatCAMApp.py:6216 msgid "Export SVG" msgstr "Exporta SVG" -#: FlatCAMApp.py:6211 +#: FlatCAMApp.py:6221 msgid "[WARNING_NOTCL] Export SVG cancelled." msgstr "[WARNING_NOTCL] Exportul SVG este anulat." -#: FlatCAMApp.py:6230 +#: FlatCAMApp.py:6240 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:6236 FlatCAMApp.py:6240 +#: FlatCAMApp.py:6246 FlatCAMApp.py:6250 msgid "Export PNG Image" msgstr "Exporta imagine PNG" -#: FlatCAMApp.py:6245 +#: FlatCAMApp.py:6255 msgid "Export PNG cancelled." msgstr "Exportul imagine PNG este anulat." -#: FlatCAMApp.py:6264 +#: FlatCAMApp.py:6274 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:6269 FlatCAMApp.py:6392 +#: FlatCAMApp.py:6279 FlatCAMApp.py:6402 msgid "" "[ERROR_NOTCL] Failed. Only Gerber objects can be saved as Gerber files..." msgstr "" "[ERROR_NOTCL] Eșuat. Doar obiectele tip Gerber pot fi salvate ca fişiere " "Gerber..." -#: FlatCAMApp.py:6281 +#: FlatCAMApp.py:6291 msgid "Save Gerber source file" msgstr "Salvează codul sursa Gerber ca fişier" -#: FlatCAMApp.py:6286 +#: FlatCAMApp.py:6296 msgid "[WARNING_NOTCL] Save Gerber source file cancelled." msgstr "[WARNING_NOTCL] Salvarea codului sursa Gerber este anulată." -#: FlatCAMApp.py:6305 +#: FlatCAMApp.py:6315 msgid "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." @@ -665,22 +665,22 @@ msgstr "" "[WARNING_NOTCL] Nici-un obiect selectat. Selectează un obiect Excellon " "pentru export." -#: FlatCAMApp.py:6310 FlatCAMApp.py:6351 +#: FlatCAMApp.py:6320 FlatCAMApp.py:6361 msgid "" "[ERROR_NOTCL] Failed. Only Excellon objects can be saved as Excellon files..." msgstr "" "[ERROR_NOTCL] Eșuat. Doar obiectele tip Excellon pot fi salvate ca fişiere " "Excellon ..." -#: FlatCAMApp.py:6318 FlatCAMApp.py:6322 +#: FlatCAMApp.py:6328 FlatCAMApp.py:6332 msgid "Save Excellon source file" msgstr "Salvează codul sursa Excellon ca fişier" -#: FlatCAMApp.py:6327 +#: FlatCAMApp.py:6337 msgid "[WARNING_NOTCL] Saving Excellon source file cancelled." msgstr "[WARNING_NOTCL] Salvarea codului sursa Excellon este anulată." -#: FlatCAMApp.py:6346 +#: FlatCAMApp.py:6356 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." @@ -688,94 +688,94 @@ msgstr "" "[WARNING_NOTCL] Nici-un obiect selectat. Selectează un obiect Excellon " "pentru export." -#: FlatCAMApp.py:6359 FlatCAMApp.py:6363 +#: FlatCAMApp.py:6369 FlatCAMApp.py:6373 msgid "Export Excellon" msgstr "Exporta Excellon" -#: FlatCAMApp.py:6368 +#: FlatCAMApp.py:6378 msgid "[WARNING_NOTCL] Export Excellon cancelled." msgstr "[WARNING_NOTCL] Exportul Excellon anulat." -#: FlatCAMApp.py:6387 +#: FlatCAMApp.py:6397 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:6400 FlatCAMApp.py:6404 +#: FlatCAMApp.py:6410 FlatCAMApp.py:6414 msgid "Export Gerber" msgstr "Exporta Gerber" -#: FlatCAMApp.py:6409 +#: FlatCAMApp.py:6419 msgid "[WARNING_NOTCL] Export Gerber cancelled." msgstr "[WARNING_NOTCL] Exportul Gerber este anulat." -#: FlatCAMApp.py:6439 +#: FlatCAMApp.py:6449 msgid "[ERROR_NOTCL] Only Geometry objects can be used." msgstr "[ERROR_NOTCL] Doar obiecte tip Geometrie pot fi folosite." -#: FlatCAMApp.py:6453 FlatCAMApp.py:6457 +#: FlatCAMApp.py:6463 FlatCAMApp.py:6467 msgid "Export DXF" msgstr "Exporta DXF" -#: FlatCAMApp.py:6463 +#: FlatCAMApp.py:6473 msgid "[WARNING_NOTCL] Export DXF cancelled." msgstr "[WARNING_NOTCL] Exportul DXF anulat." -#: FlatCAMApp.py:6483 FlatCAMApp.py:6486 +#: FlatCAMApp.py:6493 FlatCAMApp.py:6496 msgid "Import SVG" msgstr "Importa SVG" -#: FlatCAMApp.py:6495 +#: FlatCAMApp.py:6505 msgid "[WARNING_NOTCL] Open SVG cancelled." msgstr "[WARNING_NOTCL] Importul SVG anulat." -#: FlatCAMApp.py:6514 FlatCAMApp.py:6518 +#: FlatCAMApp.py:6524 FlatCAMApp.py:6528 msgid "Import DXF" msgstr "Importa DXF" -#: FlatCAMApp.py:6527 +#: FlatCAMApp.py:6537 msgid "[WARNING_NOTCL] Open DXF cancelled." msgstr "[WARNING_NOTCL] Incărcarea fişier DXF anulată." -#: FlatCAMApp.py:6545 +#: FlatCAMApp.py:6555 #, python-format msgid "%s" msgstr "%s" -#: FlatCAMApp.py:6565 +#: FlatCAMApp.py:6575 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:6572 +#: FlatCAMApp.py:6582 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:6580 +#: FlatCAMApp.py:6590 msgid "Source Editor" msgstr "Editor Cod" -#: FlatCAMApp.py:6590 +#: FlatCAMApp.py:6600 #, python-format msgid "[ERROR]App.on_view_source() -->%s" msgstr "[ERROR]App.on_view_source() -->%s" -#: FlatCAMApp.py:6602 FlatCAMApp.py:7744 FlatCAMObj.py:5581 +#: FlatCAMApp.py:6612 FlatCAMApp.py:7754 FlatCAMObj.py:5588 #: flatcamTools/ToolSolderPaste.py:1278 msgid "Code Editor" msgstr "Editor Cod" -#: FlatCAMApp.py:6614 +#: FlatCAMApp.py:6624 msgid "Script Editor" msgstr "Editor Script." -#: FlatCAMApp.py:6617 +#: FlatCAMApp.py:6627 msgid "" "#\n" "# CREATE A NEW FLATCAM TCL SCRIPT\n" @@ -819,99 +819,99 @@ msgstr "" "#\n" "\n" -#: FlatCAMApp.py:6640 FlatCAMApp.py:6643 +#: FlatCAMApp.py:6650 FlatCAMApp.py:6653 msgid "Open TCL script" msgstr "Încarcă TCL script" -#: FlatCAMApp.py:6651 +#: FlatCAMApp.py:6661 msgid "[WARNING_NOTCL] Open TCL script cancelled." msgstr "[WARNING_NOTCL] Incărcarea TCL script anulată." -#: FlatCAMApp.py:6663 +#: FlatCAMApp.py:6673 #, python-format msgid "[ERROR]App.on_fileopenscript() -->%s" msgstr "[ERROR]App.on_fileopenscript() -->%s" -#: FlatCAMApp.py:6689 FlatCAMApp.py:6692 +#: FlatCAMApp.py:6699 FlatCAMApp.py:6702 msgid "Run TCL script" msgstr "Ruleaza TCL script" -#: FlatCAMApp.py:6700 +#: FlatCAMApp.py:6710 msgid "[WARNING_NOTCL] Run TCL script cancelled." msgstr "[WARNING_NOTCL] Rularea fisierului Script a fost anulată." -#: FlatCAMApp.py:6750 FlatCAMApp.py:6754 +#: FlatCAMApp.py:6760 FlatCAMApp.py:6764 msgid "Save Project As ..." msgstr "Salvează Proiectul ca ..." -#: FlatCAMApp.py:6751 +#: FlatCAMApp.py:6761 #, python-brace-format msgid "{l_save}/Project_{date}" msgstr "{l_save}/Proiect_{date}" -#: FlatCAMApp.py:6759 +#: FlatCAMApp.py:6769 msgid "[WARNING_NOTCL] Save Project cancelled." msgstr "[WARNING_NOTCL] Salvarea Proiect anulată." -#: FlatCAMApp.py:6803 +#: FlatCAMApp.py:6813 msgid "Exporting SVG" msgstr "SVG in curs de export" -#: FlatCAMApp.py:6837 FlatCAMApp.py:6943 FlatCAMApp.py:7058 +#: FlatCAMApp.py:6847 FlatCAMApp.py:6953 FlatCAMApp.py:7068 #, python-format msgid "[success] SVG file exported to %s" msgstr "[success] Fişier SVG exportat in %s" -#: FlatCAMApp.py:6868 FlatCAMApp.py:6989 +#: FlatCAMApp.py:6878 FlatCAMApp.py:6999 #, 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:6946 FlatCAMApp.py:7061 +#: FlatCAMApp.py:6956 FlatCAMApp.py:7071 msgid "Generating Film ... Please wait." msgstr "Filmul se generează ... Aşteaptă!" -#: FlatCAMApp.py:7209 +#: FlatCAMApp.py:7219 #, python-format msgid "[success] Excellon file exported to %s" msgstr "[success] Fişierul Excellon exportat in %s" -#: FlatCAMApp.py:7216 +#: FlatCAMApp.py:7226 msgid "Exporting Excellon" msgstr "Excellon in curs de export" -#: FlatCAMApp.py:7221 FlatCAMApp.py:7228 +#: FlatCAMApp.py:7231 FlatCAMApp.py:7238 msgid "[ERROR_NOTCL] Could not export Excellon file." msgstr "[ERROR_NOTCL] Fişierul Excellon nu a putut fi exportat." -#: FlatCAMApp.py:7326 +#: FlatCAMApp.py:7336 #, python-format msgid "[success] Gerber file exported to %s" msgstr "[success] Fişier Gerber exportat in %s" -#: FlatCAMApp.py:7333 +#: FlatCAMApp.py:7343 msgid "Exporting Gerber" msgstr "Gerber in curs de export" -#: FlatCAMApp.py:7338 FlatCAMApp.py:7345 +#: FlatCAMApp.py:7348 FlatCAMApp.py:7355 msgid "[ERROR_NOTCL] Could not export Gerber file." msgstr "[ERROR_NOTCL] Fişierul Gerber nu a putut fi exportat." -#: FlatCAMApp.py:7385 +#: FlatCAMApp.py:7395 #, python-format msgid "[success] DXF file exported to %s" msgstr "[success] Fişierul DXF exportat in %s" -#: FlatCAMApp.py:7391 +#: FlatCAMApp.py:7401 msgid "Exporting DXF" msgstr "DXF in curs de export" -#: FlatCAMApp.py:7396 FlatCAMApp.py:7403 +#: FlatCAMApp.py:7406 FlatCAMApp.py:7413 msgid "[[WARNING_NOTCL]] Could not export DXF file." msgstr "[[WARNING_NOTCL]] Fişierul DXF nu a putut fi exportat." -#: FlatCAMApp.py:7423 FlatCAMApp.py:7465 FlatCAMApp.py:7509 +#: FlatCAMApp.py:7433 FlatCAMApp.py:7475 FlatCAMApp.py:7519 msgid "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" @@ -919,102 +919,102 @@ msgstr "" "[ERROR_NOTCL] Typul parametrului nu este compatibil. Doar Geometrie is " "Gerber sunt acceptate." -#: FlatCAMApp.py:7433 +#: FlatCAMApp.py:7443 msgid "Importing SVG" msgstr "SVG in curs de ia fi importat" -#: FlatCAMApp.py:7444 FlatCAMApp.py:7486 FlatCAMApp.py:7529 FlatCAMApp.py:7606 -#: FlatCAMApp.py:7667 FlatCAMApp.py:7730 flatcamTools/ToolPDF.py:212 +#: FlatCAMApp.py:7454 FlatCAMApp.py:7496 FlatCAMApp.py:7539 FlatCAMApp.py:7616 +#: FlatCAMApp.py:7677 FlatCAMApp.py:7740 flatcamTools/ToolPDF.py:212 #, python-format msgid "[success] Opened: %s" msgstr "[success] Incărcat: %s" -#: FlatCAMApp.py:7475 +#: FlatCAMApp.py:7485 msgid "Importing DXF" msgstr "DXF in curs de a fi importat" -#: FlatCAMApp.py:7517 +#: FlatCAMApp.py:7527 msgid "Importing Image" msgstr "Imaginea in curs de a fi importata" -#: FlatCAMApp.py:7558 FlatCAMApp.py:7560 +#: FlatCAMApp.py:7568 FlatCAMApp.py:7570 #, python-format msgid "[ERROR_NOTCL] Failed to open file: %s" msgstr "[ERROR_NOTCL] Eşec in incărcarea fişierului %s" -#: FlatCAMApp.py:7563 +#: FlatCAMApp.py:7573 #, python-brace-format msgid "[ERROR_NOTCL] Failed to parse file: {name}. {error}" msgstr "[ERROR_NOTCL] Eşec in parsarea fişierului: {name}. {error}" -#: FlatCAMApp.py:7570 FlatCAMObj.py:4259 +#: FlatCAMApp.py:7580 FlatCAMObj.py:4266 #: flatcamEditors/FlatCAMExcEditor.py:2077 msgid "[ERROR] An internal error has ocurred. See shell.\n" msgstr "" "[ERROR] A apărut o eroare interna. Verifică in TCL Shell pt mai multe " "detalii.\n" -#: FlatCAMApp.py:7579 +#: FlatCAMApp.py:7589 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:7587 +#: FlatCAMApp.py:7597 msgid "Opening Gerber" msgstr "Gerber in curs de incărcare" -#: FlatCAMApp.py:7597 +#: FlatCAMApp.py:7607 msgid "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." msgstr "" "[ERROR_NOTCL] Incărcarea Gerber a eșuat. Probabil nu este de tip Gerber." -#: FlatCAMApp.py:7630 flatcamTools/ToolPcbWizard.py:421 +#: FlatCAMApp.py:7640 flatcamTools/ToolPcbWizard.py:421 msgid "[ERROR_NOTCL] This is not Excellon file." msgstr "[ERROR_NOTCL] Acesta nu este un fişier Excellon." -#: FlatCAMApp.py:7633 +#: FlatCAMApp.py:7643 #, python-format msgid "[ERROR_NOTCL] Cannot open file: %s" msgstr "[ERROR_NOTCL] Fişierul %s nu se poate incărca." -#: FlatCAMApp.py:7638 flatcamTools/ToolPcbWizard.py:429 +#: FlatCAMApp.py:7648 flatcamTools/ToolPcbWizard.py:429 msgid "[ERROR_NOTCL] An internal error has occurred. See shell.\n" msgstr "" "[ERROR_NOTCL] A apărut o eroare interna. Verifică in TCL Shell pt mai multe " "detalii.\n" -#: FlatCAMApp.py:7651 flatcamTools/ToolPDF.py:262 +#: FlatCAMApp.py:7661 flatcamTools/ToolPDF.py:262 #: flatcamTools/ToolPcbWizard.py:442 #, python-format msgid "[ERROR_NOTCL] No geometry found in file: %s" msgstr "" "[ERROR_NOTCL] Nici-o informaţie de tip geometrie nu s-a gasit in fişierul: %s" -#: FlatCAMApp.py:7654 +#: FlatCAMApp.py:7664 msgid "Opening Excellon." msgstr "Excellon in curs de incărcare" -#: FlatCAMApp.py:7660 +#: FlatCAMApp.py:7670 msgid "[ERROR_NOTCL] Open Excellon file failed. Probable not an Excellon file." msgstr "" "[ERROR_NOTCL] Incărcarea Excellon a eșuat. Probabil nu este de tip Excellon." -#: FlatCAMApp.py:7697 +#: FlatCAMApp.py:7707 #, python-format msgid "[ERROR_NOTCL] Failed to open %s" msgstr "[ERROR_NOTCL] Incărcarea fişierului %s a eșuat." -#: FlatCAMApp.py:7707 +#: FlatCAMApp.py:7717 msgid "[ERROR_NOTCL] This is not GCODE" msgstr "[ERROR_NOTCL] Acest obiect nu este de tip GCode" -#: FlatCAMApp.py:7713 +#: FlatCAMApp.py:7723 msgid "Opening G-Code." msgstr "G-Code in curs de incărcare" -#: FlatCAMApp.py:7721 +#: FlatCAMApp.py:7731 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 " @@ -1025,26 +1025,26 @@ msgstr "" "Incercarea de a crea un obiect CNCJob din G-Code a eșuat in timpul " "procesarii." -#: FlatCAMApp.py:7761 +#: FlatCAMApp.py:7771 #, python-format msgid "[ERROR_NOTCL] Failed to open config file: %s" msgstr "[ERROR_NOTCL] Eşec in incărcarea fişierului de configurare: %s" -#: FlatCAMApp.py:7787 FlatCAMApp.py:7804 +#: FlatCAMApp.py:7797 FlatCAMApp.py:7814 #, python-format msgid "[ERROR_NOTCL] Failed to open project file: %s" msgstr "[ERROR_NOTCL] Eşec in incărcarea fişierului proiect: %s" -#: FlatCAMApp.py:7827 +#: FlatCAMApp.py:7837 #, python-format msgid "[success] Project loaded from: %s" msgstr "[success] Proeictul a fost incărcat din: %s" -#: FlatCAMApp.py:7932 +#: FlatCAMApp.py:7942 msgid "Available commands:\n" msgstr "Comenzi disponibile:\n" -#: FlatCAMApp.py:7934 +#: FlatCAMApp.py:7944 msgid "" "\n" "\n" @@ -1056,27 +1056,27 @@ msgstr "" "Introduceți help pentru utilizare.\n" "Exemplu: help open_gerber" -#: FlatCAMApp.py:8084 +#: FlatCAMApp.py:8094 msgid "Shows list of commands." msgstr "Arata o lista de comenzi." -#: FlatCAMApp.py:8141 +#: FlatCAMApp.py:8151 msgid "[ERROR_NOTCL] Failed to load recent item list." msgstr "[ERROR_NOTCL] Eşec in incărcarea listei cu obiecte recente." -#: FlatCAMApp.py:8148 +#: FlatCAMApp.py:8158 msgid "[ERROR_NOTCL] Failed to parse recent item list." msgstr "[ERROR_NOTCL] Eşec in parsarea listei cu obiecte recente." -#: FlatCAMApp.py:8192 +#: FlatCAMApp.py:8202 msgid "Clear Recent files" msgstr "Sterge fişierele recente" -#: FlatCAMApp.py:8209 flatcamGUI/FlatCAMGUI.py:968 +#: FlatCAMApp.py:8219 flatcamGUI/FlatCAMGUI.py:968 msgid "Shortcut Key List" msgstr "Lista cu taste Shortcut" -#: FlatCAMApp.py:8216 +#: FlatCAMApp.py:8226 msgid "" "\n" "

Selected Tab - Choose an Item from " @@ -1173,27 +1173,27 @@ msgstr "" "\n" " " -#: FlatCAMApp.py:8323 +#: FlatCAMApp.py:8333 msgid "[WARNING_NOTCL] Failed checking for latest version. Could not connect." msgstr "" "[WARNING_NOTCL] Verificarea pentru ultima versiune a eșuat. Nu a fost " "posibilă conectarea la server." -#: FlatCAMApp.py:8330 +#: FlatCAMApp.py:8340 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:8340 +#: FlatCAMApp.py:8350 msgid "[success] FlatCAM is up to date!" msgstr "[success] FlatCAM este la ultima versiune!" -#: FlatCAMApp.py:8345 +#: FlatCAMApp.py:8355 msgid "Newer Version Available" msgstr "O nouă versiune este disponibila" -#: FlatCAMApp.py:8346 +#: FlatCAMApp.py:8356 msgid "" "There is a newer version of FlatCAM available for download:\n" "\n" @@ -1201,58 +1201,58 @@ msgstr "" "O nouă versiune de FlatCAM este disponibilă pentru download::\n" "\n" -#: FlatCAMApp.py:8348 +#: FlatCAMApp.py:8358 msgid "info" msgstr "Informaţie" -#: FlatCAMApp.py:8367 +#: FlatCAMApp.py:8377 msgid "[success] All plots disabled." msgstr "[success] Toate afişările sunt dezactivate." -#: FlatCAMApp.py:8373 +#: FlatCAMApp.py:8383 msgid "[success] All non selected plots disabled." msgstr "[success] Toate afişările care nu sunt selectate sunt dezactivate." -#: FlatCAMApp.py:8379 +#: FlatCAMApp.py:8389 msgid "[success] All plots enabled." msgstr "[success] Toate afişările sunt activate." -#: FlatCAMApp.py:8385 +#: FlatCAMApp.py:8395 msgid "[success] Selected plots enabled..." msgstr "[success] Toate afişările sunt activate..." -#: FlatCAMApp.py:8393 +#: FlatCAMApp.py:8403 msgid "[success] Selected plots disabled..." msgstr "[success] Toate afişările sunt dezactivate..." -#: FlatCAMApp.py:8403 FlatCAMApp.py:8416 +#: FlatCAMApp.py:8413 FlatCAMApp.py:8426 msgid "Working ..." msgstr "Se lucrează..." -#: FlatCAMApp.py:8450 +#: FlatCAMApp.py:8460 msgid "Saving FlatCAM Project" msgstr "Proiectul FlatCAM este in curs de salvare" -#: FlatCAMApp.py:8471 FlatCAMApp.py:8502 +#: FlatCAMApp.py:8481 FlatCAMApp.py:8512 #, python-format msgid "[success] Project saved to: %s" msgstr "[success] Proiectul s-a salvat in: %s" -#: FlatCAMApp.py:8489 +#: FlatCAMApp.py:8499 #, python-format msgid "[ERROR_NOTCL] Failed to verify project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Verificarea proiectului salvat a eșuat: %s. Incearcă să il " "salvezi din nou." -#: FlatCAMApp.py:8496 +#: FlatCAMApp.py:8506 #, python-format msgid "[ERROR_NOTCL] Failed to parse saved project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Parsarea proiectului salvat a eșuat: %s. Incearcă să il " "salvezi din nou." -#: FlatCAMApp.py:8504 +#: FlatCAMApp.py:8514 #, python-format msgid "[ERROR_NOTCL] Failed to save project file: %s. Retry to save it." msgstr "" @@ -1264,34 +1264,34 @@ msgstr "" msgid "[success] Name changed from {old} to {new}" msgstr "[success] Numele schimbat din {old} in {new}" -#: FlatCAMObj.py:553 FlatCAMObj.py:2035 FlatCAMObj.py:3301 FlatCAMObj.py:5478 +#: FlatCAMObj.py:553 FlatCAMObj.py:2034 FlatCAMObj.py:3300 FlatCAMObj.py:5485 msgid "Basic" msgstr "Baza" -#: FlatCAMObj.py:565 FlatCAMObj.py:2051 FlatCAMObj.py:3323 FlatCAMObj.py:5484 +#: FlatCAMObj.py:565 FlatCAMObj.py:2050 FlatCAMObj.py:3322 FlatCAMObj.py:5491 msgid "Advanced" msgstr "Avansat" -#: FlatCAMObj.py:928 FlatCAMObj.py:983 +#: FlatCAMObj.py:927 FlatCAMObj.py:982 #, python-format msgid "[success] Isolation geometry created: %s" msgstr "[success] Geometria de izolare creată: %s" -#: FlatCAMObj.py:1162 +#: FlatCAMObj.py:1161 msgid "Plotting Apertures" msgstr "Aperturile sunt in curs de afișare" -#: FlatCAMObj.py:1878 flatcamEditors/FlatCAMExcEditor.py:1368 +#: FlatCAMObj.py:1877 flatcamEditors/FlatCAMExcEditor.py:1368 msgid "Total Drills" msgstr "Nr. Tot. Op. Găurire" -#: FlatCAMObj.py:1904 flatcamEditors/FlatCAMExcEditor.py:1400 +#: FlatCAMObj.py:1903 flatcamEditors/FlatCAMExcEditor.py:1400 msgid "Total Slots" msgstr "Nr. Tot. Sloturi" -#: FlatCAMObj.py:2107 FlatCAMObj.py:3375 FlatCAMObj.py:3675 FlatCAMObj.py:3862 -#: FlatCAMObj.py:3875 FlatCAMObj.py:3992 FlatCAMObj.py:4409 FlatCAMObj.py:4647 -#: FlatCAMObj.py:5060 flatcamEditors/FlatCAMExcEditor.py:1474 +#: FlatCAMObj.py:2106 FlatCAMObj.py:3374 FlatCAMObj.py:3674 FlatCAMObj.py:3869 +#: FlatCAMObj.py:3882 FlatCAMObj.py:3999 FlatCAMObj.py:4416 FlatCAMObj.py:4654 +#: FlatCAMObj.py:5067 flatcamEditors/FlatCAMExcEditor.py:1474 #: flatcamTools/ToolCalculators.py:307 flatcamTools/ToolCalculators.py:318 #: flatcamTools/ToolCalculators.py:330 flatcamTools/ToolCalculators.py:345 #: flatcamTools/ToolCalculators.py:358 flatcamTools/ToolCalculators.py:372 @@ -1310,25 +1310,25 @@ msgstr "Nr. Tot. Sloturi" msgid "[ERROR_NOTCL] Wrong value format entered, use a number." msgstr "[ERROR_NOTCL] O valoare gresita a fost introdusa. Foloseşte un număr." -#: FlatCAMObj.py:2331 FlatCAMObj.py:2423 FlatCAMObj.py:2546 +#: FlatCAMObj.py:2330 FlatCAMObj.py:2422 FlatCAMObj.py:2545 msgid "" "[ERROR_NOTCL] Please select one or more tools from the list and try again." msgstr "" "[ERROR_NOTCL] Selectează una sau mai multe unelte din lista și încearcă din " "nou." -#: FlatCAMObj.py:2338 +#: FlatCAMObj.py:2337 msgid "" "[ERROR_NOTCL] Milling tool for DRILLS is larger than hole size. Cancelled." msgstr "" "[ERROR_NOTCL] Anulat. Freza pt frezarea găurilor este mai mare decat " "diametrul găurii." -#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 +#: FlatCAMObj.py:2351 FlatCAMObj.py:2446 FlatCAMObj.py:2565 msgid "Tool_nr" msgstr "Nr. Unealtă" -#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 +#: FlatCAMObj.py:2351 FlatCAMObj.py:2446 FlatCAMObj.py:2565 #: flatcamEditors/FlatCAMExcEditor.py:819 #: flatcamEditors/FlatCAMExcEditor.py:2020 flatcamGUI/ObjectUI.py:556 #: flatcamTools/ToolNonCopperClear.py:83 flatcamTools/ToolPaint.py:80 @@ -1336,21 +1336,21 @@ msgstr "Nr. Unealtă" msgid "Diameter" msgstr "Diametru" -#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 +#: FlatCAMObj.py:2351 FlatCAMObj.py:2446 FlatCAMObj.py:2565 msgid "Drills_Nr" msgstr "Nr. gaura" -#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 +#: FlatCAMObj.py:2351 FlatCAMObj.py:2446 FlatCAMObj.py:2565 msgid "Slots_Nr" msgstr "Nr. slot" -#: FlatCAMObj.py:2433 +#: FlatCAMObj.py:2432 msgid "" "[ERROR_NOTCL] Milling tool for SLOTS is larger than hole size. Cancelled." msgstr "" "[ERROR_NOTCL] Anulat. Freza este mai mare decat diametrul slotului de frezat." -#: FlatCAMObj.py:2608 FlatCAMObj.py:4297 FlatCAMObj.py:4513 FlatCAMObj.py:4830 +#: FlatCAMObj.py:2607 FlatCAMObj.py:4304 FlatCAMObj.py:4520 FlatCAMObj.py:4837 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"z_pdepth\"] or self." "options[\"z_pdepth\"]" @@ -1358,7 +1358,7 @@ msgstr "" "[ERROR_NOTCL] Valoare gresita pt self.defaults[\"z_pdepth\"] sau self." "options[\"z_pdepth\"]" -#: FlatCAMObj.py:2620 FlatCAMObj.py:4309 FlatCAMObj.py:4525 FlatCAMObj.py:4842 +#: FlatCAMObj.py:2619 FlatCAMObj.py:4316 FlatCAMObj.py:4532 FlatCAMObj.py:4849 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"feedrate_probe\"] or " "self.options[\"feedrate_probe\"]" @@ -1366,11 +1366,11 @@ msgstr "" "[ERROR_NOTCL] Valoare gresita pt self.defaults[\"feedrate_probe\"] sau self." "options[\"feedrate_probe\"]" -#: FlatCAMObj.py:2652 FlatCAMObj.py:4718 FlatCAMObj.py:4723 FlatCAMObj.py:4873 +#: FlatCAMObj.py:2651 FlatCAMObj.py:4725 FlatCAMObj.py:4730 FlatCAMObj.py:4880 msgid "Generating CNC Code" msgstr "CNC Code in curs de generare" -#: FlatCAMObj.py:2678 FlatCAMObj.py:5019 camlib.py:5167 camlib.py:5626 +#: FlatCAMObj.py:2677 FlatCAMObj.py:5026 camlib.py:5167 camlib.py:5626 #: camlib.py:5889 msgid "" "[ERROR]The Toolchange X,Y field in Edit -> Preferences has to be in the " @@ -1381,58 +1381,58 @@ msgstr "" "să fie in formatul (x, y) \n" "dar are o singură valoare in loc de doua. " -#: FlatCAMObj.py:2998 FlatCAMObj.py:3918 FlatCAMObj.py:3919 FlatCAMObj.py:3928 +#: FlatCAMObj.py:2997 FlatCAMObj.py:3925 FlatCAMObj.py:3926 FlatCAMObj.py:3935 msgid "Iso" msgstr "Izo." -#: FlatCAMObj.py:2998 FlatCAMObj.py:3258 FlatCAMObj.py:3540 +#: FlatCAMObj.py:2997 FlatCAMObj.py:3257 FlatCAMObj.py:3539 msgid "Rough" msgstr "Grosier" -#: FlatCAMObj.py:2998 +#: FlatCAMObj.py:2997 msgid "Finish" msgstr "Finisare" -#: FlatCAMObj.py:3294 flatcamGUI/FlatCAMGUI.py:526 flatcamGUI/FlatCAMGUI.py:722 +#: FlatCAMObj.py:3293 flatcamGUI/FlatCAMGUI.py:526 flatcamGUI/FlatCAMGUI.py:722 #: flatcamGUI/FlatCAMGUI.py:1615 flatcamGUI/FlatCAMGUI.py:1951 #: flatcamGUI/ObjectUI.py:999 msgid "Copy" msgstr "Copiază" -#: FlatCAMObj.py:3510 +#: FlatCAMObj.py:3509 msgid "[ERROR_NOTCL] Please enter the desired tool diameter in Float format." msgstr "[ERROR_NOTCL] Introdu diametrul dorit pt unealtă in format Real." -#: FlatCAMObj.py:3585 +#: FlatCAMObj.py:3584 msgid "[success] Tool added in Tool Table." msgstr "[success] Unealtă adăugată in Tabela de Unelte." -#: FlatCAMObj.py:3590 +#: FlatCAMObj.py:3589 msgid "[ERROR_NOTCL] Default Tool added. Wrong value format entered." msgstr "" "[ERROR_NOTCL] Unealta implicita adăugată dar valoarea are un format gresit." -#: FlatCAMObj.py:3620 FlatCAMObj.py:3630 +#: FlatCAMObj.py:3619 FlatCAMObj.py:3629 msgid "[WARNING_NOTCL] Failed. Select a tool to copy." msgstr "[WARNING_NOTCL] Eșuat. Selectează o unealtă pt copiere." -#: FlatCAMObj.py:3659 +#: FlatCAMObj.py:3658 msgid "[success] Tool was copied in Tool Table." msgstr "[success] Unealta a fost copiata in Tabela de Unelte." -#: FlatCAMObj.py:3692 +#: FlatCAMObj.py:3691 msgid "[success] Tool was edited in Tool Table." msgstr "[success] Unealta a fost editata in Tabela de Unelte." -#: FlatCAMObj.py:3723 FlatCAMObj.py:3733 +#: FlatCAMObj.py:3722 FlatCAMObj.py:3732 msgid "[WARNING_NOTCL] Failed. Select a tool to delete." msgstr "[WARNING_NOTCL] Eșuat. Selectează o unealtă pentru ștergere." -#: FlatCAMObj.py:3757 +#: FlatCAMObj.py:3756 msgid "[success] Tool was deleted in Tool Table." msgstr "[success] Unealta a fost stearsa din Tabela de Unelte." -#: FlatCAMObj.py:4178 +#: FlatCAMObj.py:4185 #, python-format msgid "" "[WARNING_NOTCL] This Geometry can't be processed because it is %s geometry." @@ -1440,23 +1440,23 @@ msgstr "" "[WARNING_NOTCL] Acest obiect Geometrie nu poate fi procesar decoarece este " "Geometrie %s." -#: FlatCAMObj.py:4195 +#: FlatCAMObj.py:4202 msgid "[ERROR_NOTCL] Wrong Tool Dia value format entered, use a number." msgstr "" "[ERROR_NOTCL] Diametrul uneltei este in format gresit, foloseşte un număr " "Real." -#: FlatCAMObj.py:4222 +#: FlatCAMObj.py:4229 msgid "[ERROR_NOTCL] Failed. No tool selected in the tool table ..." msgstr "" "[ERROR_NOTCL] Eșuat. Nici-o unealtă nu este selectată in Tabela de Unelte ..." -#: FlatCAMObj.py:4260 +#: FlatCAMObj.py:4267 #, python-format msgid "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" msgstr "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" -#: FlatCAMObj.py:4418 FlatCAMObj.py:4656 +#: FlatCAMObj.py:4425 FlatCAMObj.py:4663 msgid "" "[WARNING] Tool Offset is selected in Tool Table but no value is provided.\n" "Add a Tool Offset or change the Offset Type." @@ -1465,21 +1465,21 @@ msgstr "" "val. nu este oferita.\n" "Adaugă un ofset pt unealtă sau schimbă Tipul Ofset." -#: FlatCAMObj.py:4537 flatcamTools/ToolSolderPaste.py:1107 +#: FlatCAMObj.py:4544 flatcamTools/ToolSolderPaste.py:1107 #: flatcamTools/ToolSolderPaste.py:1162 msgid "[ERROR_NOTCL] Cancelled. Empty file, it has no geometry..." msgstr "[ERROR_NOTCL] Anulat. Fişier gol, nu are date geometrice." -#: FlatCAMObj.py:4906 FlatCAMObj.py:4916 camlib.py:3348 camlib.py:3357 +#: FlatCAMObj.py:4913 FlatCAMObj.py:4923 camlib.py:3348 camlib.py:3357 msgid "[ERROR_NOTCL] Scale factor has to be a number: integer or float." msgstr "" "[ERROR_NOTCL] Factorul de scalare trebuie să fie un număr: natural sau real." -#: FlatCAMObj.py:4954 +#: FlatCAMObj.py:4961 msgid "[success] Geometry Scale done." msgstr "[success] Scalare Geometrie executată." -#: FlatCAMObj.py:4971 camlib.py:3426 +#: FlatCAMObj.py:4978 camlib.py:3426 msgid "" "[ERROR_NOTCL] An (x,y) pair of values are needed. Probable you entered only " "one value in the Offset field." @@ -1487,29 +1487,29 @@ msgstr "" "[ERROR_NOTCL] O pereche de valori (x,y) este necesară. Probabil că ai " "introdus numai o singură valoare in câmpul Offset." -#: FlatCAMObj.py:4991 +#: FlatCAMObj.py:4998 msgid "[success] Geometry Offset done." msgstr "[success] Ofset Geometrie executat." -#: FlatCAMObj.py:5546 FlatCAMObj.py:5551 flatcamTools/ToolSolderPaste.py:1361 +#: FlatCAMObj.py:5553 FlatCAMObj.py:5558 flatcamTools/ToolSolderPaste.py:1361 msgid "Export Machine Code ..." msgstr "Exporta CNC Cod Masina ..." -#: FlatCAMObj.py:5557 flatcamTools/ToolSolderPaste.py:1364 +#: FlatCAMObj.py:5564 flatcamTools/ToolSolderPaste.py:1364 msgid "[WARNING_NOTCL] Export Machine Code cancelled ..." msgstr "[WARNING_NOTCL] Exportul codului masina CNC a fost anulat ..." -#: FlatCAMObj.py:5570 +#: FlatCAMObj.py:5577 #, python-format msgid "[success] Machine Code file saved to: %s" msgstr "[success] Fişierul cu cod CNC este salvat in: %s" -#: FlatCAMObj.py:5592 +#: FlatCAMObj.py:5599 #, python-format msgid "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" msgstr "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" -#: FlatCAMObj.py:5709 +#: FlatCAMObj.py:5716 #, python-format msgid "" "[WARNING_NOTCL] This CNCJob object can't be processed because it is a %s " @@ -1518,11 +1518,11 @@ msgstr "" "[WARNING_NOTCL] Acest obiect CNCJob nu poate fi procesar deoarece este un " "obiect CNCJob tip %s." -#: FlatCAMObj.py:5762 +#: FlatCAMObj.py:5769 msgid "[ERROR_NOTCL] G-code does not have a units code: either G20 or G21" msgstr "[ERROR_NOTCL] G-code nu contine codul pt unitati: G20 sau G21" -#: FlatCAMObj.py:5775 +#: FlatCAMObj.py:5782 msgid "" "[ERROR_NOTCL] Cancelled. The Toolchange Custom code is enabled but it's " "empty." @@ -1530,17 +1530,17 @@ msgstr "" "[ERROR_NOTCL] Anulat. Codul G-Code din Macro-ul Schimbare unealtă este " "activat dar nuc contine nimic." -#: FlatCAMObj.py:5782 +#: FlatCAMObj.py:5789 msgid "[success] Toolchange G-code was replaced by a custom code." msgstr "" "[success] G-Code-ul pt schimbare unealtă a fost inlocuit cu un cod " "pesonalizat." -#: FlatCAMObj.py:5797 flatcamTools/ToolSolderPaste.py:1390 +#: FlatCAMObj.py:5804 flatcamTools/ToolSolderPaste.py:1390 msgid "[WARNING_NOTCL] No such file or directory" msgstr "[WARNING_NOTCL] Nu exista un asemenea fişier sau director" -#: FlatCAMObj.py:5817 FlatCAMObj.py:5829 +#: FlatCAMObj.py:5824 FlatCAMObj.py:5836 msgid "" "[WARNING_NOTCL] The used postprocessor file has to have in it's name: " "'toolchange_custom'" @@ -1548,7 +1548,7 @@ msgstr "" "[WARNING_NOTCL] Postprocesorul folosit trebuie să aibă in numele sau: " "'toolchange_custom'" -#: FlatCAMObj.py:5835 +#: FlatCAMObj.py:5842 msgid "[ERROR] There is no postprocessor file." msgstr "[ERROR] Nu exista nici-un fişier postprocesor." @@ -11289,11 +11289,11 @@ msgstr "" msgid "[ERROR_NOTCL] PaintTool.paint_poly() --> %s" msgstr "[ERROR_NOTCL] PaintTool.paint_poly() --> %s" -#: flatcamTools/ToolPaint.py:970 flatcamTools/ToolPaint.py:1263 +#: flatcamTools/ToolPaint.py:970 flatcamTools/ToolPaint.py:1267 msgid "Polygon Paint started ..." msgstr "Paint pt poligon a inceput ..." -#: flatcamTools/ToolPaint.py:1119 flatcamTools/ToolPaint.py:1208 +#: flatcamTools/ToolPaint.py:1123 flatcamTools/ToolPaint.py:1212 #, python-format msgid "" "[ERROR] Could not do Paint All. Try a different combination of parameters. " @@ -11304,7 +11304,7 @@ msgstr "" "combinaţie diferita de parametri. Sau încearcă o alta metoda de 'pictat'\n" "%s" -#: flatcamTools/ToolPaint.py:1143 +#: flatcamTools/ToolPaint.py:1147 msgid "" "[ERROR] There is no Painting Geometry in the file.\n" "Usually it means that the tool diameter is too big for the painted " @@ -11316,11 +11316,11 @@ msgstr "" "geometrice.\n" "Schimbă parametrii de 'pictare' și încearcă din nou." -#: flatcamTools/ToolPaint.py:1152 +#: flatcamTools/ToolPaint.py:1156 msgid "[success] Paint All Done." msgstr "[success] 'Paint' pt toate poligoanele a fost efectuata." -#: flatcamTools/ToolPaint.py:1238 +#: flatcamTools/ToolPaint.py:1242 msgid "" "[ERROR_NOTCL] There is no Painting Geometry in the file.\n" "Usually it means that the tool diameter is too big for the painted " @@ -11332,7 +11332,7 @@ msgstr "" "pt a fi folosit in obiectul Geometrie de 'pictat'.\n" "Schimbă parametrii de 'pictat' și încearcă din nou." -#: flatcamTools/ToolPaint.py:1247 +#: flatcamTools/ToolPaint.py:1251 msgid "[success] Paint All with Rest-Machining done." msgstr "" "[success] 'Paint' pentru toate poligoanele cu strategia Rest a fost " diff --git a/locale/ru/LC_MESSAGES/strings.mo b/locale/ru/LC_MESSAGES/strings.mo index 185f7c2b25d395c8a29421071bfb02bccac772fc..d003669f7ec9cb88baa779fed0369666618a9dda 100644 GIT binary patch delta 53876 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 delta 28269 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\n" "Language-Team: \n" "Language: ru\n" @@ -41,13 +41,13 @@ msgstr "Не удалось открыть файл конфигурации." msgid "Open Script file failed." msgstr "Ошибка открытия файла сценария." -#: FlatCAMApp.py:2235 +#: FlatCAMApp.py:2234 msgid "[WARNING_NOTCL] Select a Geometry, Gerber or Excellon Object to edit." msgstr "" "[WARNING_NOTCL] Выберите объект Geometry, Gerber или Excellon для " "редактирования." -#: FlatCAMApp.py:2245 +#: FlatCAMApp.py:2244 msgid "" "[WARNING_NOTCL] Simultanoeus editing of tools geometry in a MultiGeo " "Geometry is not possible.\n" @@ -57,97 +57,97 @@ msgstr "" "невозможно.\n" "Редактируйте только одну геометрию за раз." -#: FlatCAMApp.py:2289 +#: FlatCAMApp.py:2299 msgid "[WARNING_NOTCL] Editor is activated ..." msgstr "[WARNING_NOTCL] Редактор активирован ..." -#: FlatCAMApp.py:2307 +#: FlatCAMApp.py:2317 msgid "Do you want to save the edited object?" msgstr "Вы хотите сохранить редактируемый объект?" -#: FlatCAMApp.py:2308 flatcamGUI/FlatCAMGUI.py:1618 +#: FlatCAMApp.py:2318 flatcamGUI/FlatCAMGUI.py:1618 msgid "Close Editor" msgstr "Закрыть редактор" -#: FlatCAMApp.py:2311 FlatCAMApp.py:3403 FlatCAMApp.py:5908 +#: FlatCAMApp.py:2321 FlatCAMApp.py:3413 FlatCAMApp.py:5918 #: FlatCAMTranslation.py:89 flatcamGUI/FlatCAMGUI.py:3730 msgid "Yes" msgstr "Да" -#: FlatCAMApp.py:2312 FlatCAMApp.py:3404 FlatCAMApp.py:5909 +#: FlatCAMApp.py:2322 FlatCAMApp.py:3414 FlatCAMApp.py:5919 #: FlatCAMTranslation.py:90 flatcamGUI/FlatCAMGUI.py:3731 msgid "No" msgstr "Нет" -#: FlatCAMApp.py:2313 FlatCAMApp.py:3405 FlatCAMApp.py:3754 FlatCAMApp.py:5910 +#: FlatCAMApp.py:2323 FlatCAMApp.py:3415 FlatCAMApp.py:3764 FlatCAMApp.py:5920 msgid "Cancel" msgstr "Отмена" -#: FlatCAMApp.py:2340 +#: FlatCAMApp.py:2350 msgid "[WARNING] Object empty after edit." msgstr "[WARNING] Объект пуст после редактирования." -#: FlatCAMApp.py:2362 FlatCAMApp.py:2381 FlatCAMApp.py:2393 +#: FlatCAMApp.py:2372 FlatCAMApp.py:2391 FlatCAMApp.py:2403 msgid "[WARNING_NOTCL] Select a Gerber, Geometry or Excellon Object to update." msgstr "" "[WARNING_NOTCL] Выберите объект Gerber, Geometry или Excellon для обновления." -#: FlatCAMApp.py:2365 +#: FlatCAMApp.py:2375 #, python-format msgid "[selected] %s is updated, returning to App..." msgstr "[selected] %s обновлён, возврат в приложение ..." -#: FlatCAMApp.py:2730 +#: FlatCAMApp.py:2740 msgid "[ERROR] Could not load defaults file." msgstr "[ERROR] Не удаётся загрузить файл настроек." -#: FlatCAMApp.py:2742 +#: FlatCAMApp.py:2752 msgid "[ERROR] Failed to parse defaults file." msgstr "[ERRORr] Не удаётся прочитать файл настроек." -#: FlatCAMApp.py:2763 FlatCAMApp.py:2767 +#: FlatCAMApp.py:2773 FlatCAMApp.py:2777 msgid "Import FlatCAM Preferences" msgstr "Импорт настроек FlatCAM" -#: FlatCAMApp.py:2773 +#: FlatCAMApp.py:2783 msgid "[WARNING_NOTCL] FlatCAM preferences import cancelled." msgstr "[WARNING_NOTCL] Импорт настроек FlatCAM отменен." -#: FlatCAMApp.py:2781 FlatCAMApp.py:2835 FlatCAMApp.py:3282 +#: FlatCAMApp.py:2791 FlatCAMApp.py:2845 FlatCAMApp.py:3292 msgid "[ERROR_NOTCL] Could not load defaults file." msgstr "[ERROR_NOTCL] Не удалось загрузить файл значений по умолчанию." -#: FlatCAMApp.py:2789 FlatCAMApp.py:3291 +#: FlatCAMApp.py:2799 FlatCAMApp.py:3301 msgid "[ERROR_NOTCL] Failed to parse defaults file." msgstr "[ERROR_NOTCL] Не удалось прочитать файл значений по умолчанию." -#: FlatCAMApp.py:2792 +#: FlatCAMApp.py:2802 #, python-format msgid "[success] Imported Defaults from %s" msgstr "[success] Значения по умолчанию импортированы из %s" -#: FlatCAMApp.py:2807 FlatCAMApp.py:2812 +#: FlatCAMApp.py:2817 FlatCAMApp.py:2822 msgid "Export FlatCAM Preferences" msgstr "Экспорт настроек FlatCAM" -#: FlatCAMApp.py:2819 +#: FlatCAMApp.py:2829 msgid "[WARNING_NOTCL] FlatCAM preferences export cancelled." msgstr "[WARNING_NOTCL] Экспорт настроек FlatCAM завершён." -#: FlatCAMApp.py:2854 FlatCAMApp.py:3336 +#: FlatCAMApp.py:2864 FlatCAMApp.py:3346 msgid "[ERROR_NOTCL] Failed to write defaults to file." msgstr "[ERROR_NOTCL] Не удалось записать значения по умолчанию в файл." -#: FlatCAMApp.py:2907 +#: FlatCAMApp.py:2917 msgid "[ERROR_NOTCL] Failed to open recent files file for writing." msgstr "[ERROR_NOTCL] Не удалось открыть файл истории файлов для записи." -#: FlatCAMApp.py:2984 camlib.py:4457 +#: FlatCAMApp.py:2994 camlib.py:4457 msgid "[ERROR_NOTCL] An internal error has ocurred. See shell.\n" msgstr "" "[ERROR_NOTCL] Произошла внутренняя ошибка. Посмотрите в командную строку.\n" -#: FlatCAMApp.py:2985 +#: FlatCAMApp.py:2995 #, python-brace-format msgid "" "Object ({kind}) failed because: {error} \n" @@ -156,11 +156,11 @@ msgstr "" "Объект ({kind}) не выполнен, потому что: {error} \n" "\n" -#: FlatCAMApp.py:3005 +#: FlatCAMApp.py:3015 msgid "Converting units to " msgstr "Конвертирование единиц в " -#: FlatCAMApp.py:3084 FlatCAMApp.py:3087 FlatCAMApp.py:3090 FlatCAMApp.py:3093 +#: FlatCAMApp.py:3094 FlatCAMApp.py:3097 FlatCAMApp.py:3100 FlatCAMApp.py:3103 #, python-brace-format msgid "" "[selected] {kind} created/selected: {name}{name}" -#: FlatCAMApp.py:3187 +#: FlatCAMApp.py:3197 #, python-brace-format msgid "" "FlatCAM
Version {version} {beta} ({date}) - " @@ -191,31 +191,31 @@ msgstr "" "a>
ЗАГРУЗИТЬ можно отсюда.
" -#: FlatCAMApp.py:3340 +#: FlatCAMApp.py:3350 msgid "[success] Defaults saved." msgstr "[success] Значения по умолчанию сохранены." -#: FlatCAMApp.py:3361 +#: FlatCAMApp.py:3371 msgid "[ERROR_NOTCL] Could not load factory defaults file." msgstr "[ERROR_NOTCL] Не удалось загрузить файл с исходными значениями." -#: FlatCAMApp.py:3370 +#: FlatCAMApp.py:3380 msgid "[ERROR_NOTCL] Failed to parse factory defaults file." msgstr "[ERROR_NOTCL] Не удалось прочитать файл с исходными значениями." -#: FlatCAMApp.py:3384 +#: FlatCAMApp.py:3394 msgid "[ERROR_NOTCL] Failed to write factory defaults to file." msgstr "[ERROR_NOTCL] Не удалось записать исходные значения в файл." -#: FlatCAMApp.py:3388 +#: FlatCAMApp.py:3398 msgid "Factory defaults saved." msgstr "Исходные значения сохранены." -#: FlatCAMApp.py:3393 flatcamGUI/FlatCAMGUI.py:3106 +#: FlatCAMApp.py:3403 flatcamGUI/FlatCAMGUI.py:3106 msgid "[WARNING_NOTCL] Application is saving the project. Please wait ..." msgstr "[WARNING_NOTCL] Приложение сохраняет проект. Пожалуйста, подождите ..." -#: FlatCAMApp.py:3398 +#: FlatCAMApp.py:3408 msgid "" "There are files/objects modified in FlatCAM. \n" "Do you want to Save the project?" @@ -223,11 +223,11 @@ msgstr "" "Есть файлы/объекты, измененные в FlatCAM.\n" "Вы хотите сохранить проект?" -#: FlatCAMApp.py:3401 FlatCAMApp.py:5906 +#: FlatCAMApp.py:3411 FlatCAMApp.py:5916 msgid "Save changes" msgstr "Сохранить изменения" -#: FlatCAMApp.py:3468 +#: FlatCAMApp.py:3478 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 " @@ -243,70 +243,70 @@ msgstr "" "потеряна, и результат может не соответствовать ожидаемому. \n" "Проверьте сгенерированный GCODE." -#: FlatCAMApp.py:3509 +#: FlatCAMApp.py:3519 msgid "[ERROR_NOTCL] Failed. Excellon joining works only on Excellon objects." msgstr "" "[ERROR_NOTCL] Неудача. Присоединение Excellon работает только на объектах " "Excellon." -#: FlatCAMApp.py:3531 +#: FlatCAMApp.py:3541 msgid "[ERROR_NOTCL] Failed. Gerber joining works only on Gerber objects." msgstr "" "[ERROR_NOTCL] Неудача. Объединение Gerber работает только на объектах Gerber." -#: FlatCAMApp.py:3546 FlatCAMApp.py:3571 +#: FlatCAMApp.py:3556 FlatCAMApp.py:3581 msgid "[ERROR_NOTCL] Failed. Select a Geometry Object and try again." msgstr "[ERROR_NOTCL] Неудалось. Выберите объект Geometry и попробуйте снова." -#: FlatCAMApp.py:3550 FlatCAMApp.py:3575 +#: FlatCAMApp.py:3560 FlatCAMApp.py:3585 #, python-format msgid "[ERROR_NOTCL] Expected a FlatCAMGeometry, got %s" msgstr "[ERROR_NOTCL] Ожидается FlatCAMGeometry, получено %s" -#: FlatCAMApp.py:3563 +#: FlatCAMApp.py:3573 msgid "[success] A Geometry object was converted to MultiGeo type." msgstr "[success] Объект Geometry был преобразован в тип MultiGeo." -#: FlatCAMApp.py:3589 +#: FlatCAMApp.py:3599 msgid "[success] A Geometry object was converted to SingleGeo type." msgstr "[success] Объект Geometry был преобразован в тип SingleGeo." -#: FlatCAMApp.py:3753 FlatCAMApp.py:4593 FlatCAMApp.py:6181 FlatCAMApp.py:6192 -#: FlatCAMApp.py:6432 FlatCAMApp.py:6442 +#: FlatCAMApp.py:3763 FlatCAMApp.py:4603 FlatCAMApp.py:6191 FlatCAMApp.py:6202 +#: FlatCAMApp.py:6442 FlatCAMApp.py:6452 msgid "Ok" msgstr "Да" -#: FlatCAMApp.py:3799 +#: FlatCAMApp.py:3809 #, python-format msgid "[success] Converted units to %s" msgstr "[success] Конвертирование единиц в %s" -#: FlatCAMApp.py:3810 +#: FlatCAMApp.py:3820 msgid "[WARNING_NOTCL] Units conversion cancelled." msgstr "[WARNING_NOTCL] Преобразование единиц завершено." -#: FlatCAMApp.py:4462 +#: FlatCAMApp.py:4472 msgid "Open file" msgstr "Открыть файл" -#: FlatCAMApp.py:4493 FlatCAMApp.py:4498 +#: FlatCAMApp.py:4503 FlatCAMApp.py:4508 msgid "Export G-Code ..." msgstr "Экспорт G-Code …" -#: FlatCAMApp.py:4501 +#: FlatCAMApp.py:4511 msgid "[WARNING_NOTCL] Export Code cancelled." msgstr "[WARNING_NOTCL] Экспорт Code завершён." -#: FlatCAMApp.py:4511 +#: FlatCAMApp.py:4521 msgid "[WARNING] No such file or directory" msgstr "[WARNING] Нет такого файла или каталога" -#: FlatCAMApp.py:4518 +#: FlatCAMApp.py:4528 #, python-format msgid "Saved to: %s" msgstr "Сохранёно в: %s" -#: FlatCAMApp.py:4581 FlatCAMApp.py:4614 FlatCAMApp.py:4625 FlatCAMApp.py:4636 +#: FlatCAMApp.py:4591 FlatCAMApp.py:4624 FlatCAMApp.py:4635 FlatCAMApp.py:4646 #: flatcamTools/ToolNonCopperClear.py:489 flatcamTools/ToolSolderPaste.py:765 msgid "" "[WARNING_NOTCL] Please enter a tool diameter with non-zero value, in Float " @@ -315,12 +315,12 @@ msgstr "" "[WARNING_NOTCL] Пожалуйста, введите диаметр инструмента с ненулевым " "значением в float формате." -#: FlatCAMApp.py:4586 FlatCAMApp.py:4619 FlatCAMApp.py:4630 FlatCAMApp.py:4641 +#: FlatCAMApp.py:4596 FlatCAMApp.py:4629 FlatCAMApp.py:4640 FlatCAMApp.py:4651 #: flatcamGUI/FlatCAMGUI.py:3001 msgid "[WARNING_NOTCL] Adding Tool cancelled ..." msgstr "[WARNING_NOTCL] Добавление инструмента завершено ..." -#: FlatCAMApp.py:4589 +#: FlatCAMApp.py:4599 msgid "" "Adding Tool works only when Advanced is checked.\n" "Go to Preferences -> General - Show Advanced Options." @@ -329,35 +329,35 @@ msgstr "" "«Дополнительно».\n" "Перейдите в Настройки -> Основные парам. - Показать дополнительные параметры." -#: FlatCAMApp.py:4702 +#: FlatCAMApp.py:4712 msgid "Object(s) deleted ..." msgstr "Объект(ы) удален ..." -#: FlatCAMApp.py:4706 +#: FlatCAMApp.py:4716 msgid "Failed. No object(s) selected..." msgstr "Нудача. Объекты не выбраны ..." -#: FlatCAMApp.py:4708 +#: FlatCAMApp.py:4718 msgid "Save the work in Editor and try again ..." msgstr "Сохраните работу в редакторе и попробуйте снова ..." -#: FlatCAMApp.py:4721 +#: FlatCAMApp.py:4731 msgid "Click to set the origin ..." msgstr "Кликните, чтобы указать начало ..." -#: FlatCAMApp.py:4733 +#: FlatCAMApp.py:4743 msgid "Jump to ..." msgstr "Перейти к ..." -#: FlatCAMApp.py:4734 +#: FlatCAMApp.py:4744 msgid "Enter the coordinates in format X,Y:" msgstr "Введите координаты в формате X, Y:" -#: FlatCAMApp.py:4741 +#: FlatCAMApp.py:4751 msgid "Wrong coordinates. Enter coordinates in format: X,Y" msgstr "Неверные координаты. Введите координаты в формате: X, Y" -#: FlatCAMApp.py:4759 flatcamEditors/FlatCAMExcEditor.py:2320 +#: FlatCAMApp.py:4769 flatcamEditors/FlatCAMExcEditor.py:2320 #: flatcamEditors/FlatCAMExcEditor.py:2327 #: flatcamEditors/FlatCAMGeoEditor.py:3648 #: flatcamEditors/FlatCAMGeoEditor.py:3662 @@ -371,85 +371,85 @@ msgstr "Неверные координаты. Введите координат msgid "[success] Done." msgstr "[success] Готово." -#: FlatCAMApp.py:4891 FlatCAMApp.py:4958 +#: FlatCAMApp.py:4901 FlatCAMApp.py:4968 msgid "[WARNING_NOTCL] No object is selected. Select an object and try again." msgstr "[WARNING_NOTCL] Объект не выбран. Выберите объект и попробуйте снова." -#: FlatCAMApp.py:4999 +#: FlatCAMApp.py:5009 msgid "[success] Origin set ..." msgstr "[success] Начало установлено ..." -#: FlatCAMApp.py:5019 +#: FlatCAMApp.py:5029 msgid "Preferences" msgstr "Настройки" -#: FlatCAMApp.py:5039 +#: FlatCAMApp.py:5049 msgid "[WARNING_NOTCL] No object selected to Flip on Y axis." msgstr "[WARNING_NOTCL] Не выбран объект для отражения по оси Y." -#: FlatCAMApp.py:5064 +#: FlatCAMApp.py:5074 msgid "[success] Flip on Y axis done." msgstr "[success] Отражение по оси Y завершено." -#: FlatCAMApp.py:5066 FlatCAMApp.py:5106 +#: FlatCAMApp.py:5076 FlatCAMApp.py:5116 #: flatcamEditors/FlatCAMGeoEditor.py:1355 #: flatcamEditors/FlatCAMGrbEditor.py:5343 flatcamTools/ToolTransform.py:748 #, python-format msgid "[ERROR_NOTCL] Due of %s, Flip action was not executed." msgstr "[ERROR_NOTCL] Из-за %s, операция переворота не была выполнена." -#: FlatCAMApp.py:5079 +#: FlatCAMApp.py:5089 msgid "[WARNING_NOTCL] No object selected to Flip on X axis." msgstr "[WARNING_NOTCL] Не выбран объект для отражения по оси Х." -#: FlatCAMApp.py:5104 +#: FlatCAMApp.py:5114 msgid "[success] Flip on X axis done." msgstr "[success] Отражение по оси Х завершено." -#: FlatCAMApp.py:5119 +#: FlatCAMApp.py:5129 msgid "[WARNING_NOTCL] No object selected to Rotate." msgstr "[WARNING_NOTCL] Не выбран ни один объект для вращения." -#: FlatCAMApp.py:5122 FlatCAMApp.py:5167 FlatCAMApp.py:5198 +#: FlatCAMApp.py:5132 FlatCAMApp.py:5177 FlatCAMApp.py:5208 msgid "Transform" msgstr "Трансформация" -#: FlatCAMApp.py:5122 FlatCAMApp.py:5167 FlatCAMApp.py:5198 +#: FlatCAMApp.py:5132 FlatCAMApp.py:5177 FlatCAMApp.py:5208 msgid "Enter the Angle value:" msgstr "Введите значение угла:" -#: FlatCAMApp.py:5152 +#: FlatCAMApp.py:5162 msgid "[success] Rotation done." msgstr "[success] Вращение завершено." -#: FlatCAMApp.py:5154 flatcamEditors/FlatCAMGeoEditor.py:1298 +#: FlatCAMApp.py:5164 flatcamEditors/FlatCAMGeoEditor.py:1298 #: flatcamEditors/FlatCAMGrbEditor.py:5272 flatcamTools/ToolTransform.py:677 #, python-format msgid "[ERROR_NOTCL] Due of %s, rotation movement was not executed." msgstr "[ERROR_NOTCL] Из-за %s вращение не было выполнено." -#: FlatCAMApp.py:5165 +#: FlatCAMApp.py:5175 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on X axis." msgstr "[WARNING_NOTCL] Не выбран ни один объект для наклона/сдвига по оси X." -#: FlatCAMApp.py:5186 +#: FlatCAMApp.py:5196 msgid "[success] Skew on X axis done." msgstr "[success] Наклон по оси X выполнен." -#: FlatCAMApp.py:5196 +#: FlatCAMApp.py:5206 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on Y axis." msgstr "" "[WARNING_NOTCL] Нет объекта, выбранного для перекоса / сдвига по оси Y." -#: FlatCAMApp.py:5217 +#: FlatCAMApp.py:5227 msgid "[success] Skew on Y axis done." msgstr "[success] Наклон по оси Y сделано." -#: FlatCAMApp.py:5287 +#: FlatCAMApp.py:5297 msgid "Grid On/Off" msgstr "Сетка вкл/откл" -#: FlatCAMApp.py:5300 flatcamEditors/FlatCAMGeoEditor.py:937 +#: FlatCAMApp.py:5310 flatcamEditors/FlatCAMGeoEditor.py:937 #: flatcamEditors/FlatCAMGrbEditor.py:2381 #: flatcamEditors/FlatCAMGrbEditor.py:4861 flatcamGUI/ObjectUI.py:991 #: flatcamTools/ToolDblSided.py:160 flatcamTools/ToolDblSided.py:208 @@ -459,7 +459,7 @@ msgstr "Сетка вкл/откл" msgid "Add" msgstr "Добавить" -#: FlatCAMApp.py:5301 FlatCAMObj.py:3296 +#: FlatCAMApp.py:5311 FlatCAMObj.py:3295 #: flatcamEditors/FlatCAMGrbEditor.py:2386 flatcamGUI/FlatCAMGUI.py:527 #: flatcamGUI/FlatCAMGUI.py:724 flatcamGUI/FlatCAMGUI.py:1616 #: flatcamGUI/FlatCAMGUI.py:1953 flatcamGUI/ObjectUI.py:1007 @@ -468,15 +468,15 @@ msgstr "Добавить" msgid "Delete" msgstr "Удалить" -#: FlatCAMApp.py:5314 +#: FlatCAMApp.py:5324 msgid "New Grid ..." msgstr "Новая сетка ..." -#: FlatCAMApp.py:5315 +#: FlatCAMApp.py:5325 msgid "Enter a Grid Value:" msgstr "Введите размер сетки:" -#: FlatCAMApp.py:5323 FlatCAMApp.py:5350 +#: FlatCAMApp.py:5333 FlatCAMApp.py:5360 msgid "" "[WARNING_NOTCL] Please enter a grid value with non-zero value, in Float " "format." @@ -484,53 +484,52 @@ msgstr "" "[WARNING_NOTCL] Пожалуйста, введите значение сетки с ненулевым значением в " "float формате." -#: FlatCAMApp.py:5329 +#: FlatCAMApp.py:5339 msgid "[success] New Grid added ..." msgstr "[success] Новая сетка добавлена ..." -#: FlatCAMApp.py:5332 +#: FlatCAMApp.py:5342 msgid "[WARNING_NOTCL] Grid already exists ..." msgstr "[WARNING_NOTCL] Сетка уже существует ..." -#: FlatCAMApp.py:5335 +#: FlatCAMApp.py:5345 msgid "[WARNING_NOTCL] Adding New Grid cancelled ..." msgstr "[WARNING_NOTCL] Добавление новой сетки отменено ..." -#: FlatCAMApp.py:5357 +#: FlatCAMApp.py:5367 msgid "[ERROR_NOTCL] Grid Value does not exist ..." msgstr "[ERROR_NOTCL] Значение сетки не существует ..." -#: FlatCAMApp.py:5360 +#: FlatCAMApp.py:5370 msgid "[success] Grid Value deleted ..." msgstr "[success] Значение сетки удалено ..." -#: FlatCAMApp.py:5363 +#: FlatCAMApp.py:5373 msgid "[WARNING_NOTCL] Delete Grid value cancelled ..." msgstr "[WARNING_NOTCL] Удалить отмененное значение сетки ..." -#: FlatCAMApp.py:5402 +#: FlatCAMApp.py:5412 msgid "[WARNING_NOTCL] No object selected to copy it's name" msgstr "[WARNING_NOTCL] Нет объекта, выбранного для копирования его имени." -#: FlatCAMApp.py:5406 +#: FlatCAMApp.py:5416 msgid "Name copied on clipboard ..." msgstr "Имя скопировано в буфер обмена ..." -#: FlatCAMApp.py:5448 flatcamEditors/FlatCAMGrbEditor.py:3901 -#| msgid "Name copied on clipboard ..." +#: FlatCAMApp.py:5458 flatcamEditors/FlatCAMGrbEditor.py:3901 msgid "[success] Coordinates copied to clipboard." msgstr "[success] Координаты копируются в буфер обмена." -#: FlatCAMApp.py:5704 FlatCAMApp.py:5707 FlatCAMApp.py:5710 FlatCAMApp.py:5713 -#: FlatCAMApp.py:5728 FlatCAMApp.py:5731 FlatCAMApp.py:5734 FlatCAMApp.py:5737 -#: FlatCAMApp.py:5777 FlatCAMApp.py:5780 FlatCAMApp.py:5783 FlatCAMApp.py:5786 +#: FlatCAMApp.py:5714 FlatCAMApp.py:5717 FlatCAMApp.py:5720 FlatCAMApp.py:5723 +#: FlatCAMApp.py:5738 FlatCAMApp.py:5741 FlatCAMApp.py:5744 FlatCAMApp.py:5747 +#: FlatCAMApp.py:5787 FlatCAMApp.py:5790 FlatCAMApp.py:5793 FlatCAMApp.py:5796 #: ObjectCollection.py:719 ObjectCollection.py:722 ObjectCollection.py:725 #: ObjectCollection.py:728 #, python-brace-format msgid "[selected]{name} selected" msgstr "[selected]{name} выбран" -#: FlatCAMApp.py:5903 +#: FlatCAMApp.py:5913 msgid "" "There are files/objects opened in FlatCAM.\n" "Creating a New project will delete them.\n" @@ -540,111 +539,111 @@ msgstr "" "Создание нового проекта удалит их.\n" "Вы хотите сохранить проект?" -#: FlatCAMApp.py:5924 +#: FlatCAMApp.py:5934 msgid "[success] New Project created..." msgstr "[success] Новый проект создан ..." -#: FlatCAMApp.py:6040 FlatCAMApp.py:6043 flatcamGUI/FlatCAMGUI.py:608 +#: FlatCAMApp.py:6050 FlatCAMApp.py:6053 flatcamGUI/FlatCAMGUI.py:608 #: flatcamGUI/FlatCAMGUI.py:1832 msgid "Open Gerber" msgstr "Открыть Gerber" -#: FlatCAMApp.py:6048 +#: FlatCAMApp.py:6058 msgid "[WARNING_NOTCL] Open Gerber cancelled." msgstr "[WARNING_NOTCL] Открытый Gerber отменен." -#: FlatCAMApp.py:6069 FlatCAMApp.py:6072 flatcamGUI/FlatCAMGUI.py:609 +#: FlatCAMApp.py:6079 FlatCAMApp.py:6082 flatcamGUI/FlatCAMGUI.py:609 #: flatcamGUI/FlatCAMGUI.py:1833 msgid "Open Excellon" msgstr "Открыть Excellon" -#: FlatCAMApp.py:6077 +#: FlatCAMApp.py:6087 msgid "[WARNING_NOTCL] Open Excellon cancelled." msgstr "[WARNING_NOTCL] Открытый Excellon отменен." -#: FlatCAMApp.py:6099 FlatCAMApp.py:6102 +#: FlatCAMApp.py:6109 FlatCAMApp.py:6112 msgid "Open G-Code" msgstr "Открыть G-Code" -#: FlatCAMApp.py:6107 +#: FlatCAMApp.py:6117 msgid "[WARNING_NOTCL] Open G-Code cancelled." msgstr "[WARNING_NOTCL] Открытый G-код отменен." -#: FlatCAMApp.py:6125 FlatCAMApp.py:6128 +#: FlatCAMApp.py:6135 FlatCAMApp.py:6138 msgid "Open Project" msgstr "Открыть проект" -#: FlatCAMApp.py:6136 +#: FlatCAMApp.py:6146 msgid "[WARNING_NOTCL] Open Project cancelled." msgstr "[WARNING_NOTCL] Открытый проект отменен." -#: FlatCAMApp.py:6155 FlatCAMApp.py:6158 +#: FlatCAMApp.py:6165 FlatCAMApp.py:6168 msgid "Open Configuration File" msgstr "Открыть файл конфигурации" -#: FlatCAMApp.py:6162 +#: FlatCAMApp.py:6172 msgid "[WARNING_NOTCL] Open Config cancelled." msgstr "[WARNING_NOTCL] Открытие конфигурации завершено." -#: FlatCAMApp.py:6177 FlatCAMApp.py:6428 FlatCAMApp.py:8581 FlatCAMApp.py:8601 -#: FlatCAMApp.py:8622 FlatCAMApp.py:8644 +#: FlatCAMApp.py:6187 FlatCAMApp.py:6438 FlatCAMApp.py:8591 FlatCAMApp.py:8611 +#: FlatCAMApp.py:8632 FlatCAMApp.py:8654 msgid "[WARNING_NOTCL] No object selected." msgstr "[WARNING_NOTCL] Нет выбранных объектов." -#: FlatCAMApp.py:6178 FlatCAMApp.py:6429 +#: FlatCAMApp.py:6188 FlatCAMApp.py:6439 msgid "Please Select a Geometry object to export" msgstr "Выберите объект Geometry для экспорта" -#: FlatCAMApp.py:6189 +#: FlatCAMApp.py:6199 msgid "[ERROR_NOTCL] Only Geometry, Gerber and CNCJob objects can be used." msgstr "" "[ERROR_NOTCL] Можно использовать только объекты Geometry, Gerber и CNC " "работа." -#: FlatCAMApp.py:6202 FlatCAMApp.py:6206 +#: FlatCAMApp.py:6212 FlatCAMApp.py:6216 msgid "Export SVG" msgstr "Экспорт SVG" -#: FlatCAMApp.py:6211 +#: FlatCAMApp.py:6221 msgid "[WARNING_NOTCL] Export SVG cancelled." msgstr "[WARNING_NOTCL] Экспорт SVG отменен." -#: FlatCAMApp.py:6230 +#: FlatCAMApp.py:6240 msgid "[[WARNING_NOTCL]] Data must be a 3D array with last dimension 3 or 4" msgstr "" "[[WARNING_NOTCL]] Данные должны быть 3D массивом с последним размером 3 или 4" -#: FlatCAMApp.py:6236 FlatCAMApp.py:6240 +#: FlatCAMApp.py:6246 FlatCAMApp.py:6250 msgid "Export PNG Image" msgstr "Экспорт PNG изображения" -#: FlatCAMApp.py:6245 +#: FlatCAMApp.py:6255 msgid "Export PNG cancelled." msgstr "Экспорт PNG завершён." -#: FlatCAMApp.py:6264 +#: FlatCAMApp.py:6274 msgid "" "[WARNING_NOTCL] No object selected. Please select an Gerber object to export." msgstr "" "[WARNING_NOTCL] Нет выбранных объектов. Пожалуйста, выберите Gerber объект " "для экспорта." -#: FlatCAMApp.py:6269 FlatCAMApp.py:6392 +#: FlatCAMApp.py:6279 FlatCAMApp.py:6402 msgid "" "[ERROR_NOTCL] Failed. Only Gerber objects can be saved as Gerber files..." msgstr "" "[ERROR_NOTCL] Неудачный. Только объекты Gerber могут быть сохранены как " "файлы Gerber..." -#: FlatCAMApp.py:6281 +#: FlatCAMApp.py:6291 msgid "Save Gerber source file" msgstr "Сохранить исходный файл Gerber" -#: FlatCAMApp.py:6286 +#: FlatCAMApp.py:6296 msgid "[WARNING_NOTCL] Save Gerber source file cancelled." msgstr "[WARNING_NOTCL] Сохранить исходный файл Gerber отменено." -#: FlatCAMApp.py:6305 +#: FlatCAMApp.py:6315 msgid "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." @@ -652,22 +651,22 @@ msgstr "" "[WARNING_NOTCL] Объект не выбран. Пожалуйста, выберите отличный объект для " "экспорта." -#: FlatCAMApp.py:6310 FlatCAMApp.py:6351 +#: FlatCAMApp.py:6320 FlatCAMApp.py:6361 msgid "" "[ERROR_NOTCL] Failed. Only Excellon objects can be saved as Excellon files..." msgstr "" "[ERROR_NOTCL] Неудачный. Только объекты Excellon могут быть сохранены как " "файлы Excellon..." -#: FlatCAMApp.py:6318 FlatCAMApp.py:6322 +#: FlatCAMApp.py:6328 FlatCAMApp.py:6332 msgid "Save Excellon source file" msgstr "Сохранить исходный файл Excellon" -#: FlatCAMApp.py:6327 +#: FlatCAMApp.py:6337 msgid "[WARNING_NOTCL] Saving Excellon source file cancelled." msgstr "[WARNING_NOTCL] Сохранение исходного файла Excellon отменено." -#: FlatCAMApp.py:6346 +#: FlatCAMApp.py:6356 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." @@ -675,70 +674,70 @@ msgstr "" "[WARNING_NOTCL] Объект не выбран. Пожалуйста, выберите отличный объект для " "экспорта." -#: FlatCAMApp.py:6359 FlatCAMApp.py:6363 +#: FlatCAMApp.py:6369 FlatCAMApp.py:6373 msgid "Export Excellon" msgstr "Экспорт Excellon" -#: FlatCAMApp.py:6368 +#: FlatCAMApp.py:6378 msgid "[WARNING_NOTCL] Export Excellon cancelled." msgstr "[WARNING_NOTCL] Экспорт Excellon отменен." -#: FlatCAMApp.py:6387 +#: FlatCAMApp.py:6397 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Gerber object to export." msgstr "" "[WARNING_NOTCL] Нет выбранных объектов. Пожалуйста, выберите Gerber объект " "для экспорта." -#: FlatCAMApp.py:6400 FlatCAMApp.py:6404 +#: FlatCAMApp.py:6410 FlatCAMApp.py:6414 msgid "Export Gerber" msgstr "Экспорт Gerber" -#: FlatCAMApp.py:6409 +#: FlatCAMApp.py:6419 msgid "[WARNING_NOTCL] Export Gerber cancelled." msgstr "[WARNING_NOTCL] Экспорт Гербера отменен." -#: FlatCAMApp.py:6439 +#: FlatCAMApp.py:6449 msgid "[ERROR_NOTCL] Only Geometry objects can be used." msgstr "[ERROR_NOTCL] Можно использовать только геометрические объекты." -#: FlatCAMApp.py:6453 FlatCAMApp.py:6457 +#: FlatCAMApp.py:6463 FlatCAMApp.py:6467 msgid "Export DXF" msgstr "Экспорт DXF" -#: FlatCAMApp.py:6463 +#: FlatCAMApp.py:6473 msgid "[WARNING_NOTCL] Export DXF cancelled." msgstr "[WARNING_NOTCL] Экспорт DXF отменен." -#: FlatCAMApp.py:6483 FlatCAMApp.py:6486 +#: FlatCAMApp.py:6493 FlatCAMApp.py:6496 msgid "Import SVG" msgstr "Импорт SVG" -#: FlatCAMApp.py:6495 +#: FlatCAMApp.py:6505 msgid "[WARNING_NOTCL] Open SVG cancelled." msgstr "[WARNING_NOTCL] Открытие СВГ отменен." -#: FlatCAMApp.py:6514 FlatCAMApp.py:6518 +#: FlatCAMApp.py:6524 FlatCAMApp.py:6528 msgid "Import DXF" msgstr "Импорт DXF" -#: FlatCAMApp.py:6527 +#: FlatCAMApp.py:6537 msgid "[WARNING_NOTCL] Open DXF cancelled." msgstr "[WARNING_NOTCL] Открытие DXF отменено." -#: FlatCAMApp.py:6545 +#: FlatCAMApp.py:6555 #, python-format msgid "%s" msgstr "%s" -#: FlatCAMApp.py:6565 +#: FlatCAMApp.py:6575 msgid "" "[WARNING_NOTCL] Select an Gerber or Excellon file to view it's source file." msgstr "" "[WARNING_NOTCL] Выберите файл Gerber или Excellon для просмотра исходного " "файла." -#: FlatCAMApp.py:6572 +#: FlatCAMApp.py:6582 msgid "" "[WARNING_NOTCL] There is no selected object for which to see it's source " "file code." @@ -746,25 +745,25 @@ msgstr "" "[WARNING_NOTCL] Нет выбранного объекта, для которого можно увидеть исходный " "код файла." -#: FlatCAMApp.py:6580 +#: FlatCAMApp.py:6590 msgid "Source Editor" msgstr "Редактор исходного кода" -#: FlatCAMApp.py:6590 +#: FlatCAMApp.py:6600 #, python-format msgid "[ERROR]App.on_view_source() -->%s" msgstr "[ERROR] Приложение.on_view_source() -->%s" -#: FlatCAMApp.py:6602 FlatCAMApp.py:7744 FlatCAMObj.py:5581 +#: FlatCAMApp.py:6612 FlatCAMApp.py:7754 FlatCAMObj.py:5588 #: flatcamTools/ToolSolderPaste.py:1278 msgid "Code Editor" msgstr "Редактор кода" -#: FlatCAMApp.py:6614 +#: FlatCAMApp.py:6624 msgid "Script Editor" msgstr "Редактор сценариев" -#: FlatCAMApp.py:6617 +#: FlatCAMApp.py:6627 msgid "" "#\n" "# CREATE A NEW FLATCAM TCL SCRIPT\n" @@ -808,98 +807,98 @@ msgstr "" "#\n" "\n" -#: FlatCAMApp.py:6640 FlatCAMApp.py:6643 +#: FlatCAMApp.py:6650 FlatCAMApp.py:6653 msgid "Open TCL script" msgstr "Открыть сценарий TCL" -#: FlatCAMApp.py:6651 +#: FlatCAMApp.py:6661 msgid "[WARNING_NOTCL] Open TCL script cancelled." msgstr "[WARNING_NOTCL] Открытый сценарий TCL отменен." -#: FlatCAMApp.py:6663 +#: FlatCAMApp.py:6673 #, python-format msgid "[ERROR]App.on_fileopenscript() -->%s" msgstr "[ERROR]App.on_fileopenscript() -->%s" -#: FlatCAMApp.py:6689 FlatCAMApp.py:6692 +#: FlatCAMApp.py:6699 FlatCAMApp.py:6702 msgid "Run TCL script" msgstr "Запустить сценарий TCL" -#: FlatCAMApp.py:6700 +#: FlatCAMApp.py:6710 msgid "[WARNING_NOTCL] Run TCL script cancelled." msgstr "[WARNING_NOTCL] Запуск скрипта отменен." -#: FlatCAMApp.py:6750 FlatCAMApp.py:6754 +#: FlatCAMApp.py:6760 FlatCAMApp.py:6764 msgid "Save Project As ..." msgstr "Сохранить проект как..." -#: FlatCAMApp.py:6751 +#: FlatCAMApp.py:6761 #, python-brace-format msgid "{l_save}/Project_{date}" msgstr "{l_save}/Project_{date}" -#: FlatCAMApp.py:6759 +#: FlatCAMApp.py:6769 msgid "[WARNING_NOTCL] Save Project cancelled." msgstr "[WARNING_NOTCL] Сохранить проект отменен." -#: FlatCAMApp.py:6803 +#: FlatCAMApp.py:6813 msgid "Exporting SVG" msgstr "Экспортирование SVG" -#: FlatCAMApp.py:6837 FlatCAMApp.py:6943 FlatCAMApp.py:7058 +#: FlatCAMApp.py:6847 FlatCAMApp.py:6953 FlatCAMApp.py:7068 #, python-format msgid "[success] SVG file exported to %s" msgstr "[success] SVG-файл экспортируется в %s" -#: FlatCAMApp.py:6868 FlatCAMApp.py:6989 +#: FlatCAMApp.py:6878 FlatCAMApp.py:6999 #, python-format msgid "[WARNING_NOTCL] No object Box. Using instead %s" msgstr "[WARNING_NOTCL] Нет поле объекта. Использование вместо %s" -#: FlatCAMApp.py:6946 FlatCAMApp.py:7061 +#: FlatCAMApp.py:6956 FlatCAMApp.py:7071 msgid "Generating Film ... Please wait." msgstr "Создание фильма ... Пожалуйста, подождите." -#: FlatCAMApp.py:7209 +#: FlatCAMApp.py:7219 #, python-format msgid "[success] Excellon file exported to %s" msgstr "[success] Файл Excellon экспортируется в %s" -#: FlatCAMApp.py:7216 +#: FlatCAMApp.py:7226 msgid "Exporting Excellon" msgstr "Экспорт Excellon" -#: FlatCAMApp.py:7221 FlatCAMApp.py:7228 +#: FlatCAMApp.py:7231 FlatCAMApp.py:7238 msgid "[ERROR_NOTCL] Could not export Excellon file." msgstr "[ERROR_NOTCL] Не удалось экспортировать файл Excellon." -#: FlatCAMApp.py:7326 +#: FlatCAMApp.py:7336 #, python-format msgid "[success] Gerber file exported to %s" msgstr "[success] Gerber файл экспортируется в %s" -#: FlatCAMApp.py:7333 +#: FlatCAMApp.py:7343 msgid "Exporting Gerber" msgstr "Экспортирование Gerber" -#: FlatCAMApp.py:7338 FlatCAMApp.py:7345 +#: FlatCAMApp.py:7348 FlatCAMApp.py:7355 msgid "[ERROR_NOTCL] Could not export Gerber file." msgstr "[ERROR_NOTCL] Не удалось экспортировать файл Gerber." -#: FlatCAMApp.py:7385 +#: FlatCAMApp.py:7395 #, python-format msgid "[success] DXF file exported to %s" msgstr "[success] Файл DXF экспортируется в %s" -#: FlatCAMApp.py:7391 +#: FlatCAMApp.py:7401 msgid "Exporting DXF" msgstr "Экспорт DXF" -#: FlatCAMApp.py:7396 FlatCAMApp.py:7403 +#: FlatCAMApp.py:7406 FlatCAMApp.py:7413 msgid "[[WARNING_NOTCL]] Could not export DXF file." msgstr "[[WARNING_NOTCL]] Не удалось экспортировать файл DXF." -#: FlatCAMApp.py:7423 FlatCAMApp.py:7465 FlatCAMApp.py:7509 +#: FlatCAMApp.py:7433 FlatCAMApp.py:7475 FlatCAMApp.py:7519 msgid "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" @@ -907,96 +906,96 @@ msgstr "" "[ERROR_NOTCL] В качестве параметра выбран не поддерживаемый тип. " "Поддерживаются только Geometry и Gerber." -#: FlatCAMApp.py:7433 +#: FlatCAMApp.py:7443 msgid "Importing SVG" msgstr "Импортирование SVG" -#: FlatCAMApp.py:7444 FlatCAMApp.py:7486 FlatCAMApp.py:7529 FlatCAMApp.py:7606 -#: FlatCAMApp.py:7667 FlatCAMApp.py:7730 flatcamTools/ToolPDF.py:212 +#: FlatCAMApp.py:7454 FlatCAMApp.py:7496 FlatCAMApp.py:7539 FlatCAMApp.py:7616 +#: FlatCAMApp.py:7677 FlatCAMApp.py:7740 flatcamTools/ToolPDF.py:212 #, python-format msgid "[success] Opened: %s" msgstr "[success] Открыт: %s" -#: FlatCAMApp.py:7475 +#: FlatCAMApp.py:7485 msgid "Importing DXF" msgstr "Импорт DXF" -#: FlatCAMApp.py:7517 +#: FlatCAMApp.py:7527 msgid "Importing Image" msgstr "Импорт изображения" -#: FlatCAMApp.py:7558 FlatCAMApp.py:7560 +#: FlatCAMApp.py:7568 FlatCAMApp.py:7570 #, python-format msgid "[ERROR_NOTCL] Failed to open file: %s" msgstr "[ERROR_NOTCL] Не удалось открыть файл: %s" -#: FlatCAMApp.py:7563 +#: FlatCAMApp.py:7573 #, python-brace-format msgid "[ERROR_NOTCL] Failed to parse file: {name}. {error}" msgstr "[ERROR_NOTCL] Не удалось проанализировать файл: {name}. {error}" -#: FlatCAMApp.py:7570 FlatCAMObj.py:4259 +#: FlatCAMApp.py:7580 FlatCAMObj.py:4266 #: flatcamEditors/FlatCAMExcEditor.py:2077 msgid "[ERROR] An internal error has ocurred. See shell.\n" msgstr "[ERROR] Произошла внутренняя ошибка. Посмотрите в командную строку.\n" -#: FlatCAMApp.py:7579 +#: FlatCAMApp.py:7589 msgid "" "[ERROR_NOTCL] Object is not Gerber file or empty. Aborting object creation." msgstr "" "[ERROR_NOTCL] Объект не является файлом Gerber или пустым. Прерывание " "создания объекта." -#: FlatCAMApp.py:7587 +#: FlatCAMApp.py:7597 msgid "Opening Gerber" msgstr "Открытие Gerber" -#: FlatCAMApp.py:7597 +#: FlatCAMApp.py:7607 msgid "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." msgstr "[ERROR_NOTCL] Открыть Gerber не удалось. Вероятно, не файл Gerber." -#: FlatCAMApp.py:7630 flatcamTools/ToolPcbWizard.py:421 +#: FlatCAMApp.py:7640 flatcamTools/ToolPcbWizard.py:421 msgid "[ERROR_NOTCL] This is not Excellon file." msgstr "[ERROR_NOTCL] Это не Excellon файл." -#: FlatCAMApp.py:7633 +#: FlatCAMApp.py:7643 #, python-format msgid "[ERROR_NOTCL] Cannot open file: %s" msgstr "[ERROR_NOTCL] Не удается открыть файл: %s" -#: FlatCAMApp.py:7638 flatcamTools/ToolPcbWizard.py:429 +#: FlatCAMApp.py:7648 flatcamTools/ToolPcbWizard.py:429 msgid "[ERROR_NOTCL] An internal error has occurred. See shell.\n" msgstr "[ERROR_NOTCL] Произошла внутренняя ошибка. Вижу оболочки.\n" -#: FlatCAMApp.py:7651 flatcamTools/ToolPDF.py:262 +#: FlatCAMApp.py:7661 flatcamTools/ToolPDF.py:262 #: flatcamTools/ToolPcbWizard.py:442 #, python-format msgid "[ERROR_NOTCL] No geometry found in file: %s" msgstr "[ERROR_NOTCL] Geometry не найдена в файле: %s" -#: FlatCAMApp.py:7654 +#: FlatCAMApp.py:7664 msgid "Opening Excellon." msgstr "Открытие Excellon." -#: FlatCAMApp.py:7660 +#: FlatCAMApp.py:7670 msgid "[ERROR_NOTCL] Open Excellon file failed. Probable not an Excellon file." msgstr "" "[ERROR_NOTCL] Не удалось открыть файл Excellon. Вероятно, не файл Excellon." -#: FlatCAMApp.py:7697 +#: FlatCAMApp.py:7707 #, python-format msgid "[ERROR_NOTCL] Failed to open %s" msgstr "[ERROR_NOTCL] Не удалось открыть: %s" -#: FlatCAMApp.py:7707 +#: FlatCAMApp.py:7717 msgid "[ERROR_NOTCL] This is not GCODE" msgstr "[ERROR_NOTCL] Это не G-код" -#: FlatCAMApp.py:7713 +#: FlatCAMApp.py:7723 msgid "Opening G-Code." msgstr "Открытие G-Code." -#: FlatCAMApp.py:7721 +#: FlatCAMApp.py:7731 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 " @@ -1007,26 +1006,26 @@ msgstr "" "Попытка создать объект задания ЧПУ с плоским кулачком из файла G-кода не " "удалась во время обработки" -#: FlatCAMApp.py:7761 +#: FlatCAMApp.py:7771 #, python-format msgid "[ERROR_NOTCL] Failed to open config file: %s" msgstr "[ERROR_NOTCL] Не удалось открыть файл конфигурации: %s" -#: FlatCAMApp.py:7787 FlatCAMApp.py:7804 +#: FlatCAMApp.py:7797 FlatCAMApp.py:7814 #, python-format msgid "[ERROR_NOTCL] Failed to open project file: %s" msgstr "[ERROR_NOTCL] Не удалось открыть файл проекта : %s" -#: FlatCAMApp.py:7827 +#: FlatCAMApp.py:7837 #, python-format msgid "[success] Project loaded from: %s" msgstr "[success] Проект загружен из: %s" -#: FlatCAMApp.py:7932 +#: FlatCAMApp.py:7942 msgid "Available commands:\n" msgstr "Доступные команды:\n" -#: FlatCAMApp.py:7934 +#: FlatCAMApp.py:7944 msgid "" "\n" "\n" @@ -1038,27 +1037,27 @@ msgstr "" "Для дополнительной информации ведите help <имя_команды> .\n" "Пример: help open_gerber" -#: FlatCAMApp.py:8084 +#: FlatCAMApp.py:8094 msgid "Shows list of commands." msgstr "Показывает список команд." -#: FlatCAMApp.py:8141 +#: FlatCAMApp.py:8151 msgid "[ERROR_NOTCL] Failed to load recent item list." msgstr "[ERROR_NOTCL] Не удалось загрузить список номенклатуры." -#: FlatCAMApp.py:8148 +#: FlatCAMApp.py:8158 msgid "[ERROR_NOTCL] Failed to parse recent item list." msgstr "[ERROR_NOTCL] Не удалось проанализировать список последних элементов." -#: FlatCAMApp.py:8192 +#: FlatCAMApp.py:8202 msgid "Clear Recent files" msgstr "Очистить список" -#: FlatCAMApp.py:8209 flatcamGUI/FlatCAMGUI.py:968 +#: FlatCAMApp.py:8219 flatcamGUI/FlatCAMGUI.py:968 msgid "Shortcut Key List" msgstr "Список сочетаний клавиш" -#: FlatCAMApp.py:8216 +#: FlatCAMApp.py:8226 msgid "" "\n" "

Selected Tab - Choose an Item from " @@ -1108,26 +1107,26 @@ msgid "" " " msgstr "" -#: FlatCAMApp.py:8323 +#: FlatCAMApp.py:8333 msgid "[WARNING_NOTCL] Failed checking for latest version. Could not connect." msgstr "" "[WARNING_NOTCL] Не удалось проверить последнюю версию. Не удалось " "подключиться." -#: FlatCAMApp.py:8330 +#: FlatCAMApp.py:8340 msgid "[ERROR_NOTCL] Could not parse information about latest version." msgstr "" "[ERROR_NOTCL] Не удалось проанализировать информацию о последней версии." -#: FlatCAMApp.py:8340 +#: FlatCAMApp.py:8350 msgid "[success] FlatCAM is up to date!" msgstr "[success] FlatCAM в актуальном состоянии!" -#: FlatCAMApp.py:8345 +#: FlatCAMApp.py:8355 msgid "Newer Version Available" msgstr "Доступна новая версия" -#: FlatCAMApp.py:8346 +#: FlatCAMApp.py:8356 msgid "" "There is a newer version of FlatCAM available for download:\n" "\n" @@ -1135,58 +1134,58 @@ msgstr "" "Новая версия FlatCAM доступна для загрузки:\n" "\n" -#: FlatCAMApp.py:8348 +#: FlatCAMApp.py:8358 msgid "info" msgstr "инфо" -#: FlatCAMApp.py:8367 +#: FlatCAMApp.py:8377 msgid "[success] All plots disabled." msgstr "[success] Все участки отключены." -#: FlatCAMApp.py:8373 +#: FlatCAMApp.py:8383 msgid "[success] All non selected plots disabled." msgstr "[success] Все невыбранные участки отключены." -#: FlatCAMApp.py:8379 +#: FlatCAMApp.py:8389 msgid "[success] All plots enabled." msgstr "[success] Все участки включены." -#: FlatCAMApp.py:8385 +#: FlatCAMApp.py:8395 msgid "[success] Selected plots enabled..." msgstr "[success] Выбранные участки включены..." -#: FlatCAMApp.py:8393 +#: FlatCAMApp.py:8403 msgid "[success] Selected plots disabled..." msgstr "[success] Выбранные участки отключены..." -#: FlatCAMApp.py:8403 FlatCAMApp.py:8416 +#: FlatCAMApp.py:8413 FlatCAMApp.py:8426 msgid "Working ..." msgstr "Обработка…" -#: FlatCAMApp.py:8450 +#: FlatCAMApp.py:8460 msgid "Saving FlatCAM Project" msgstr "Сохранение проекта FlatCAM" -#: FlatCAMApp.py:8471 FlatCAMApp.py:8502 +#: FlatCAMApp.py:8481 FlatCAMApp.py:8512 #, python-format msgid "[success] Project saved to: %s" msgstr "[success] Проект, сохраненный на: %s" -#: FlatCAMApp.py:8489 +#: FlatCAMApp.py:8499 #, python-format msgid "[ERROR_NOTCL] Failed to verify project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Не удалось проверить файл проекта: %s. Повторите попытку " "сохранить его." -#: FlatCAMApp.py:8496 +#: FlatCAMApp.py:8506 #, python-format msgid "[ERROR_NOTCL] Failed to parse saved project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Не удалось проанализировать сохраненный файл проекта: %s. " "Повторите попытку сохранить его." -#: FlatCAMApp.py:8504 +#: FlatCAMApp.py:8514 #, python-format msgid "[ERROR_NOTCL] Failed to save project file: %s. Retry to save it." msgstr "" @@ -1198,34 +1197,34 @@ msgstr "" msgid "[success] Name changed from {old} to {new}" msgstr "[success] Имя изменено с {old} K {new}" -#: FlatCAMObj.py:553 FlatCAMObj.py:2035 FlatCAMObj.py:3301 FlatCAMObj.py:5478 +#: FlatCAMObj.py:553 FlatCAMObj.py:2034 FlatCAMObj.py:3300 FlatCAMObj.py:5485 msgid "Basic" msgstr "Базовый" -#: FlatCAMObj.py:565 FlatCAMObj.py:2051 FlatCAMObj.py:3323 FlatCAMObj.py:5484 +#: FlatCAMObj.py:565 FlatCAMObj.py:2050 FlatCAMObj.py:3322 FlatCAMObj.py:5491 msgid "Advanced" msgstr "Расширенный" -#: FlatCAMObj.py:928 FlatCAMObj.py:983 +#: FlatCAMObj.py:927 FlatCAMObj.py:982 #, python-format msgid "[success] Isolation geometry created: %s" msgstr "[success] Созданная геометрия изоляции: %s" -#: FlatCAMObj.py:1162 +#: FlatCAMObj.py:1161 msgid "Plotting Apertures" msgstr "Построение Отверстия" -#: FlatCAMObj.py:1878 flatcamEditors/FlatCAMExcEditor.py:1368 +#: FlatCAMObj.py:1877 flatcamEditors/FlatCAMExcEditor.py:1368 msgid "Total Drills" msgstr "Всего отверстий" -#: FlatCAMObj.py:1904 flatcamEditors/FlatCAMExcEditor.py:1400 +#: FlatCAMObj.py:1903 flatcamEditors/FlatCAMExcEditor.py:1400 msgid "Total Slots" msgstr "Всего ячеек" -#: FlatCAMObj.py:2107 FlatCAMObj.py:3375 FlatCAMObj.py:3675 FlatCAMObj.py:3862 -#: FlatCAMObj.py:3875 FlatCAMObj.py:3992 FlatCAMObj.py:4409 FlatCAMObj.py:4647 -#: FlatCAMObj.py:5060 flatcamEditors/FlatCAMExcEditor.py:1474 +#: FlatCAMObj.py:2106 FlatCAMObj.py:3374 FlatCAMObj.py:3674 FlatCAMObj.py:3869 +#: FlatCAMObj.py:3882 FlatCAMObj.py:3999 FlatCAMObj.py:4416 FlatCAMObj.py:4654 +#: FlatCAMObj.py:5067 flatcamEditors/FlatCAMExcEditor.py:1474 #: flatcamTools/ToolCalculators.py:307 flatcamTools/ToolCalculators.py:318 #: flatcamTools/ToolCalculators.py:330 flatcamTools/ToolCalculators.py:345 #: flatcamTools/ToolCalculators.py:358 flatcamTools/ToolCalculators.py:372 @@ -1244,25 +1243,25 @@ msgstr "Всего ячеек" msgid "[ERROR_NOTCL] Wrong value format entered, use a number." msgstr "[ERROR_NOTCL] Неправильно введен формат значения, используйте число." -#: FlatCAMObj.py:2331 FlatCAMObj.py:2423 FlatCAMObj.py:2546 +#: FlatCAMObj.py:2330 FlatCAMObj.py:2422 FlatCAMObj.py:2545 msgid "" "[ERROR_NOTCL] Please select one or more tools from the list and try again." msgstr "" "[ERROR_NOTCL] Выберите один или несколько инструментов из списка и повторите " "попытку." -#: FlatCAMObj.py:2338 +#: FlatCAMObj.py:2337 msgid "" "[ERROR_NOTCL] Milling tool for DRILLS is larger than hole size. Cancelled." msgstr "" "[ERROR_NOTCL] Фрезерный инструмент для сверл больше размера отверстия. " "Отмененный." -#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 +#: FlatCAMObj.py:2351 FlatCAMObj.py:2446 FlatCAMObj.py:2565 msgid "Tool_nr" msgstr "№ инструмента" -#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 +#: FlatCAMObj.py:2351 FlatCAMObj.py:2446 FlatCAMObj.py:2565 #: flatcamEditors/FlatCAMExcEditor.py:819 #: flatcamEditors/FlatCAMExcEditor.py:2020 flatcamGUI/ObjectUI.py:556 #: flatcamTools/ToolNonCopperClear.py:83 flatcamTools/ToolPaint.py:80 @@ -1270,22 +1269,22 @@ msgstr "№ инструмента" msgid "Diameter" msgstr "Диаметр" -#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 +#: FlatCAMObj.py:2351 FlatCAMObj.py:2446 FlatCAMObj.py:2565 msgid "Drills_Nr" msgstr "№ сверла" -#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 +#: FlatCAMObj.py:2351 FlatCAMObj.py:2446 FlatCAMObj.py:2565 msgid "Slots_Nr" msgstr "№ ячейки" -#: FlatCAMObj.py:2433 +#: FlatCAMObj.py:2432 msgid "" "[ERROR_NOTCL] Milling tool for SLOTS is larger than hole size. Cancelled." msgstr "" "[ERROR_NOTCL] Фрезерный инструмент для пазов больше размера отверстия. " "Отмененный." -#: FlatCAMObj.py:2608 FlatCAMObj.py:4297 FlatCAMObj.py:4513 FlatCAMObj.py:4830 +#: FlatCAMObj.py:2607 FlatCAMObj.py:4304 FlatCAMObj.py:4520 FlatCAMObj.py:4837 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"z_pdepth\"] or self." "options[\"z_pdepth\"]" @@ -1293,7 +1292,7 @@ msgstr "" "[ERROR_NOTCL] Неправильный формат значения для self.defaults[\"z_pdepth\"] " "или self.options[\"z_pdepth\"]" -#: FlatCAMObj.py:2620 FlatCAMObj.py:4309 FlatCAMObj.py:4525 FlatCAMObj.py:4842 +#: FlatCAMObj.py:2619 FlatCAMObj.py:4316 FlatCAMObj.py:4532 FlatCAMObj.py:4849 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"feedrate_probe\"] or " "self.options[\"feedrate_probe\"]" @@ -1301,11 +1300,11 @@ msgstr "" "[ERROR_NOTCL] Неправильный формат значения для self.defaults " "[\"feedrate_probe\"] или self.options[\"feedrate_probe\"]" -#: FlatCAMObj.py:2652 FlatCAMObj.py:4718 FlatCAMObj.py:4723 FlatCAMObj.py:4873 +#: FlatCAMObj.py:2651 FlatCAMObj.py:4725 FlatCAMObj.py:4730 FlatCAMObj.py:4880 msgid "Generating CNC Code" msgstr "Генерация кода ЧПУ" -#: FlatCAMObj.py:2678 FlatCAMObj.py:5019 camlib.py:5167 camlib.py:5626 +#: FlatCAMObj.py:2677 FlatCAMObj.py:5026 camlib.py:5167 camlib.py:5626 #: camlib.py:5889 msgid "" "[ERROR]The Toolchange X,Y field in Edit -> Preferences has to be in the " @@ -1316,61 +1315,61 @@ msgstr "" "формате (x, y) \n" "но теперь есть только одна ценность, а не две." -#: FlatCAMObj.py:2998 FlatCAMObj.py:3918 FlatCAMObj.py:3919 FlatCAMObj.py:3928 +#: FlatCAMObj.py:2997 FlatCAMObj.py:3925 FlatCAMObj.py:3926 FlatCAMObj.py:3935 msgid "Iso" msgstr "Iso" -#: FlatCAMObj.py:2998 FlatCAMObj.py:3258 FlatCAMObj.py:3540 +#: FlatCAMObj.py:2997 FlatCAMObj.py:3257 FlatCAMObj.py:3539 msgid "Rough" msgstr "Грубый" -#: FlatCAMObj.py:2998 +#: FlatCAMObj.py:2997 msgid "Finish" msgstr "Конец" -#: FlatCAMObj.py:3294 flatcamGUI/FlatCAMGUI.py:526 flatcamGUI/FlatCAMGUI.py:722 +#: FlatCAMObj.py:3293 flatcamGUI/FlatCAMGUI.py:526 flatcamGUI/FlatCAMGUI.py:722 #: flatcamGUI/FlatCAMGUI.py:1615 flatcamGUI/FlatCAMGUI.py:1951 #: flatcamGUI/ObjectUI.py:999 msgid "Copy" msgstr "Копировать" -#: FlatCAMObj.py:3510 +#: FlatCAMObj.py:3509 msgid "[ERROR_NOTCL] Please enter the desired tool diameter in Float format." msgstr "" "[ERROR_NOTCL] Пожалуйста, введите нужный инструмент диаметр в формате с " "Float точкой." -#: FlatCAMObj.py:3585 +#: FlatCAMObj.py:3584 msgid "[success] Tool added in Tool Table." msgstr "[success] Инструмент добавлен в таблицу инструментов." -#: FlatCAMObj.py:3590 +#: FlatCAMObj.py:3589 msgid "[ERROR_NOTCL] Default Tool added. Wrong value format entered." msgstr "" "[ERROR_NOTCL] Добавлен инструмент по умолчанию. Введен неправильный формат " "значения." -#: FlatCAMObj.py:3620 FlatCAMObj.py:3630 +#: FlatCAMObj.py:3619 FlatCAMObj.py:3629 msgid "[WARNING_NOTCL] Failed. Select a tool to copy." msgstr "[WARNING_NOTCL] Неудачный. Выберите инструмент для копирования." -#: FlatCAMObj.py:3659 +#: FlatCAMObj.py:3658 msgid "[success] Tool was copied in Tool Table." msgstr "[success] Инструмент был скопирован в таблицу инструментов." -#: FlatCAMObj.py:3692 +#: FlatCAMObj.py:3691 msgid "[success] Tool was edited in Tool Table." msgstr "[success] Инструмент был отредактирован в таблице инструментов." -#: FlatCAMObj.py:3723 FlatCAMObj.py:3733 +#: FlatCAMObj.py:3722 FlatCAMObj.py:3732 msgid "[WARNING_NOTCL] Failed. Select a tool to delete." msgstr "[WARNING_NOTCL] Неудачный. Выберите инструмент для удаления." -#: FlatCAMObj.py:3757 +#: FlatCAMObj.py:3756 msgid "[success] Tool was deleted in Tool Table." msgstr "[success] Инструмент был удален в таблице инструментов." -#: FlatCAMObj.py:4178 +#: FlatCAMObj.py:4185 #, python-format msgid "" "[WARNING_NOTCL] This Geometry can't be processed because it is %s geometry." @@ -1378,23 +1377,23 @@ msgstr "" "[WARNING_NOTCL] Эта геометрия не может быть обработана, так как это %s " "геометрия." -#: FlatCAMObj.py:4195 +#: FlatCAMObj.py:4202 msgid "[ERROR_NOTCL] Wrong Tool Dia value format entered, use a number." msgstr "" "[ERROR_NOTCL] Неправильный инструмент формата ДВД с введенным значением, " "использовать количество." -#: FlatCAMObj.py:4222 +#: FlatCAMObj.py:4229 msgid "[ERROR_NOTCL] Failed. No tool selected in the tool table ..." msgstr "" "[ERROR_NOTCL] Неудачный. Инструмент не выбран в таблице инструментов ..." -#: FlatCAMObj.py:4260 +#: FlatCAMObj.py:4267 #, python-format msgid "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" msgstr "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" -#: FlatCAMObj.py:4418 FlatCAMObj.py:4656 +#: FlatCAMObj.py:4425 FlatCAMObj.py:4663 msgid "" "[WARNING] Tool Offset is selected in Tool Table but no value is provided.\n" "Add a Tool Offset or change the Offset Type." @@ -1403,22 +1402,22 @@ msgstr "" "не указано.\n" "Добавьте смещение инструмента или измените тип смещения." -#: FlatCAMObj.py:4537 flatcamTools/ToolSolderPaste.py:1107 +#: FlatCAMObj.py:4544 flatcamTools/ToolSolderPaste.py:1107 #: flatcamTools/ToolSolderPaste.py:1162 msgid "[ERROR_NOTCL] Cancelled. Empty file, it has no geometry..." msgstr "[ERROR_NOTCL] Отмененный. Пустой файл, он не имеет геометрии..." -#: FlatCAMObj.py:4906 FlatCAMObj.py:4916 camlib.py:3348 camlib.py:3357 +#: FlatCAMObj.py:4913 FlatCAMObj.py:4923 camlib.py:3348 camlib.py:3357 msgid "[ERROR_NOTCL] Scale factor has to be a number: integer or float." msgstr "" "[ERROR_NOTCL] Масштабный коэффициент должен быть числом: целочисленным или " "плавающим." -#: FlatCAMObj.py:4954 +#: FlatCAMObj.py:4961 msgid "[success] Geometry Scale done." msgstr "[success] Геометрический масштаб выполнен." -#: FlatCAMObj.py:4971 camlib.py:3426 +#: FlatCAMObj.py:4978 camlib.py:3426 msgid "" "[ERROR_NOTCL] An (x,y) pair of values are needed. Probable you entered only " "one value in the Offset field." @@ -1426,29 +1425,29 @@ msgstr "" "[ERROR_NOTCL] Необходима пара значений (x,y). Возможно, вы ввели только одно " "значение в поле смещение." -#: FlatCAMObj.py:4991 +#: FlatCAMObj.py:4998 msgid "[success] Geometry Offset done." msgstr "[success] Смещение геометрии сделано." -#: FlatCAMObj.py:5546 FlatCAMObj.py:5551 flatcamTools/ToolSolderPaste.py:1361 +#: FlatCAMObj.py:5553 FlatCAMObj.py:5558 flatcamTools/ToolSolderPaste.py:1361 msgid "Export Machine Code ..." msgstr "Экспорт GCode ..." -#: FlatCAMObj.py:5557 flatcamTools/ToolSolderPaste.py:1364 +#: FlatCAMObj.py:5564 flatcamTools/ToolSolderPaste.py:1364 msgid "[WARNING_NOTCL] Export Machine Code cancelled ..." msgstr "[WARNING_NOTCL] Экспорт машинного кода отменен ..." -#: FlatCAMObj.py:5570 +#: FlatCAMObj.py:5577 #, python-format msgid "[success] Machine Code file saved to: %s" msgstr "[success] Файл машинного кода, сохраненный в: %s" -#: FlatCAMObj.py:5592 +#: FlatCAMObj.py:5599 #, python-format msgid "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" msgstr "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" -#: FlatCAMObj.py:5709 +#: FlatCAMObj.py:5716 #, python-format msgid "" "[WARNING_NOTCL] This CNCJob object can't be processed because it is a %s " @@ -1457,11 +1456,11 @@ msgstr "" "[WARNING_NOTCL] Этот объект CNCJob не может быть обработан, так как он " "является объектом %s CNCJob." -#: FlatCAMObj.py:5762 +#: FlatCAMObj.py:5769 msgid "[ERROR_NOTCL] G-code does not have a units code: either G20 or G21" msgstr "[ERROR_NOTCL] G-код не имеет кода единиц измерения: G20 или G21" -#: FlatCAMObj.py:5775 +#: FlatCAMObj.py:5782 msgid "" "[ERROR_NOTCL] Cancelled. The Toolchange Custom code is enabled but it's " "empty." @@ -1469,15 +1468,15 @@ msgstr "" "[ERROR_NOTCL] Отмененный. Пользовательский код изменения инструмента " "включен, но он пуст." -#: FlatCAMObj.py:5782 +#: FlatCAMObj.py:5789 msgid "[success] Toolchange G-code was replaced by a custom code." msgstr "[success] Инструмент смены G-кода был заменен на пользовательский код." -#: FlatCAMObj.py:5797 flatcamTools/ToolSolderPaste.py:1390 +#: FlatCAMObj.py:5804 flatcamTools/ToolSolderPaste.py:1390 msgid "[WARNING_NOTCL] No such file or directory" msgstr "[WARNING_NOTCL] Нет такого файла или каталога" -#: FlatCAMObj.py:5817 FlatCAMObj.py:5829 +#: FlatCAMObj.py:5824 FlatCAMObj.py:5836 msgid "" "[WARNING_NOTCL] The used postprocessor file has to have in it's name: " "'toolchange_custom'" @@ -1485,7 +1484,7 @@ msgstr "" "[WARNING_NOTCL] Используемый файл постпроцессора должен иметь в своем имени: " "'toolchange_custom'" -#: FlatCAMObj.py:5835 +#: FlatCAMObj.py:5842 msgid "[ERROR] There is no postprocessor file." msgstr "[ERROR] Нет файла постпроцессора." @@ -3605,7 +3604,6 @@ msgstr "" #: flatcamEditors/FlatCAMGrbEditor.py:4444 #, python-format -#| msgid "[ERROR_NOTCL] Failed to parse defaults file." msgid "" "[ERROR_NOTCL] Failed.\n" "%s" @@ -4084,11 +4082,11 @@ msgstr "Объединение Полигонов\tU" #: flatcamGUI/FlatCAMGUI.py:418 msgid "Polygon Intersection\tE" -msgstr "" +msgstr "Многоугольник Пересечения\tE" #: flatcamGUI/FlatCAMGUI.py:420 msgid "Polygon Subtraction\tS" -msgstr "" +msgstr "Вычитание Полигонов\tS" #: flatcamGUI/FlatCAMGUI.py:424 msgid "Cut Path\tX" @@ -4108,11 +4106,11 @@ msgstr "Переместить\tM" #: flatcamGUI/FlatCAMGUI.py:433 msgid "Buffer Tool\tB" -msgstr "" +msgstr "Буферный Инструмент\tB" #: flatcamGUI/FlatCAMGUI.py:436 msgid "Paint Tool\tI" -msgstr "" +msgstr "инструментов рисования\tI" #: flatcamGUI/FlatCAMGUI.py:439 msgid "Transform Tool\tALT+R" @@ -4120,7 +4118,7 @@ msgstr "Трансформация\tALT+R" #: flatcamGUI/FlatCAMGUI.py:443 msgid "Toggle Corner Snap\tK" -msgstr "" +msgstr "Оснастки Угол Переключения \tK" #: flatcamGUI/FlatCAMGUI.py:446 msgid ">Excellon Editor<" @@ -4136,7 +4134,7 @@ msgstr "Добавить сверло\tD" #: flatcamGUI/FlatCAMGUI.py:456 msgid "Resize Drill(S)\tR" -msgstr "" +msgstr "Размер Сверла\tR" #: flatcamGUI/FlatCAMGUI.py:458 flatcamGUI/FlatCAMGUI.py:496 msgid "Copy\tC" @@ -4156,11 +4154,11 @@ msgstr ">Редактор Gerber<" #: flatcamGUI/FlatCAMGUI.py:472 msgid "Add Pad\tP" -msgstr "" +msgstr "Добавить Площадку\tP" #: flatcamGUI/FlatCAMGUI.py:474 msgid "Add Pad Array\tA" -msgstr "" +msgstr "Добавить Массив Коврик \tA" #: flatcamGUI/FlatCAMGUI.py:476 msgid "Add Track\tT" @@ -4172,7 +4170,7 @@ msgstr "Добавить регион\tN" #: flatcamGUI/FlatCAMGUI.py:482 msgid "Poligonize\tALT+N" -msgstr "" +msgstr "Полигонизировать\tALT+N" #: flatcamGUI/FlatCAMGUI.py:484 msgid "Add SemiDisc\tE" @@ -4184,7 +4182,7 @@ msgstr "Добавить диск\tD" #: flatcamGUI/FlatCAMGUI.py:488 msgid "Buffer\tB" -msgstr "" +msgstr "Буфер\tB" #: flatcamGUI/FlatCAMGUI.py:490 msgid "Scale\tS" @@ -4332,7 +4330,7 @@ msgstr "Панелизация" #: flatcamGUI/FlatCAMGUI.py:647 flatcamGUI/FlatCAMGUI.py:1870 #: flatcamTools/ToolFilm.py:204 msgid "Film Tool" -msgstr "" +msgstr "Пленочный Инструмент" #: flatcamGUI/FlatCAMGUI.py:648 flatcamGUI/FlatCAMGUI.py:1872 #: flatcamTools/ToolSolderPaste.py:451 @@ -4404,11 +4402,11 @@ msgstr "Добавить текст" #: flatcamGUI/FlatCAMGUI.py:682 flatcamGUI/FlatCAMGUI.py:1910 msgid "Add Buffer" -msgstr "" +msgstr "Добавить Буфер" #: flatcamGUI/FlatCAMGUI.py:683 flatcamGUI/FlatCAMGUI.py:1911 msgid "Paint Shape" -msgstr "" +msgstr "Форма Краски" #: flatcamGUI/FlatCAMGUI.py:684 flatcamGUI/FlatCAMGUI.py:719 #: flatcamGUI/FlatCAMGUI.py:1912 flatcamGUI/FlatCAMGUI.py:1948 @@ -4450,7 +4448,7 @@ msgstr "Переместить объект " #: flatcamGUI/FlatCAMGUI.py:706 flatcamGUI/FlatCAMGUI.py:1935 msgid "Add Pad" -msgstr "" +msgstr "Добавить Площадку" #: flatcamGUI/FlatCAMGUI.py:708 flatcamGUI/FlatCAMGUI.py:1937 msgid "Add Track" @@ -4462,7 +4460,7 @@ msgstr "Добавить регион" #: flatcamGUI/FlatCAMGUI.py:711 flatcamGUI/FlatCAMGUI.py:1940 msgid "Poligonize" -msgstr "" +msgstr "Полигонизировать" #: flatcamGUI/FlatCAMGUI.py:713 flatcamGUI/FlatCAMGUI.py:1942 msgid "SemiDisc" @@ -4484,17 +4482,19 @@ msgstr "Привязка к сетке" #: flatcamGUI/FlatCAMGUI.py:737 flatcamGUI/FlatCAMGUI.py:1966 msgid "Grid X snapping distance" -msgstr "" +msgstr "Сетка X расстояние замыкания" #: flatcamGUI/FlatCAMGUI.py:742 flatcamGUI/FlatCAMGUI.py:1971 msgid "Grid Y snapping distance" -msgstr "" +msgstr "Сетка Y расстояние замыкания" #: flatcamGUI/FlatCAMGUI.py:748 flatcamGUI/FlatCAMGUI.py:1977 msgid "" "When active, value on Grid_X\n" "is copied to the Grid_Y value." msgstr "" +"Когда активен, значение на Grid_X\n" +"копируется в значение Grid_Y." #: flatcamGUI/FlatCAMGUI.py:754 flatcamGUI/FlatCAMGUI.py:1983 msgid "Snap to corner" @@ -4543,7 +4543,7 @@ msgstr "GEOMETRY" #: flatcamGUI/FlatCAMGUI.py:896 msgid "CNC-JOB" -msgstr "" +msgstr "CNC-РАБОТА" #: flatcamGUI/FlatCAMGUI.py:905 msgid "TOOLS" @@ -4561,6 +4561,11 @@ msgid "" "FlatCAM automatically save a 'factory_defaults' file\n" "on the first start. Do not delete that file." msgstr "" +"Импорт полного набора настроек FlatCAM кулачка из файла\n" +"ранее сохранено на жестком диске.\n" +"\n" +"FlatCAM копир автоматически сохранить файл 'factory_defaults' \n" +"на первом старте. Не удаляйте этот файл." #: flatcamGUI/FlatCAMGUI.py:932 msgid "Export Preferences" @@ -4571,6 +4576,8 @@ msgid "" "Export a full set of FlatCAM settings in a file\n" "that is saved on HDD." msgstr "" +"Экспорт полного набора настроек FlatCAM кулачка в файл\n" +"это сохраняется на жестком диске." #: flatcamGUI/FlatCAMGUI.py:940 msgid "Open Pref Folder" @@ -4578,7 +4585,7 @@ msgstr "Открыть папку настроек" #: flatcamGUI/FlatCAMGUI.py:943 msgid "Open the folder where FlatCAM save the preferences files." -msgstr "" +msgstr "Откройте папку, в которой FlatCAM сохраняет файлы настроек." #: flatcamGUI/FlatCAMGUI.py:951 msgid "Save Preferences" @@ -5242,11 +5249,11 @@ msgstr "Вырезать" #: flatcamGUI/FlatCAMGUI.py:1605 msgid "Pad" -msgstr "" +msgstr "Блокнот" #: flatcamGUI/FlatCAMGUI.py:1606 msgid "Pad Array" -msgstr "" +msgstr "Массив Коврик " #: flatcamGUI/FlatCAMGUI.py:1607 msgid "Track" @@ -5258,7 +5265,7 @@ msgstr "Регион" #: flatcamGUI/FlatCAMGUI.py:1610 msgid "Exc Editor" -msgstr "" +msgstr "Excellon Редактор" #: flatcamGUI/FlatCAMGUI.py:1611 msgid "Add Drill" @@ -5289,6 +5296,8 @@ msgid "" "When checked it will replace all instances in the 'Find' box\n" "with the text in the 'Replace' box.." msgstr "" +"При установке флажка он заменит все экземпляры в поле \"Найти\"\n" +"с текстом в поле \"заменить\".." #: flatcamGUI/FlatCAMGUI.py:1659 msgid "Open Code" @@ -5303,12 +5312,16 @@ msgid "" "Relative neasurement.\n" "Reference is last click position" msgstr "" +"Относительное измерение.\n" +"Ссылка-это позиция последнего клика" #: flatcamGUI/FlatCAMGUI.py:1701 msgid "" "Absolute neasurement.\n" "Reference is (X=0, Y= 0) position" msgstr "" +"Абсолютное измерение.\n" +"Ссылка (X=0, Y= 0) Положение" #: flatcamGUI/FlatCAMGUI.py:1897 msgid "Select 'Esc'" @@ -5333,6 +5346,10 @@ msgid "" "out of the first item. In the end press ~X~ key or\n" "the toolbar button." msgstr "" +"Сначала выберите элемент геометрии для вырезания\n" +"затем выберите элемент геометрии, который будет вырезан\n" +"из первого пункта. В конце нажмите клавишу ~X~ или\n" +"кнопка панели инструментов." #: flatcamGUI/FlatCAMGUI.py:2367 flatcamGUI/FlatCAMGUI.py:2504 #: flatcamGUI/FlatCAMGUI.py:2563 flatcamGUI/FlatCAMGUI.py:2583 @@ -5342,37 +5359,43 @@ msgstr "Внимание" #: flatcamGUI/FlatCAMGUI.py:2434 flatcamGUI/FlatCAMGUI.py:2633 #: flatcamGUI/FlatCAMGUI.py:2844 msgid "[WARNING_NOTCL] Cancelled." -msgstr "" +msgstr "[WARNING_NOTCL] Отмененный." #: flatcamGUI/FlatCAMGUI.py:2499 msgid "" "Please select geometry items \n" "on which to perform Intersection Tool." msgstr "" +"Пожалуйста, выберите элементы геометрии \n" +"на котором выполняется инструмент пересечение." #: flatcamGUI/FlatCAMGUI.py:2558 msgid "" "Please select geometry items \n" "on which to perform Substraction Tool." msgstr "" +"Пожалуйста, выберите элементы геометрии \n" +"на котором выполнить вычитание инструмента." #: flatcamGUI/FlatCAMGUI.py:2578 msgid "" "Please select geometry items \n" "on which to perform union." msgstr "" +"Пожалуйста, выберите элементы геометрии \n" +"на котором выполнять объединение." #: flatcamGUI/FlatCAMGUI.py:2649 flatcamGUI/FlatCAMGUI.py:2861 msgid "[WARNING_NOTCL] Cancelled. Nothing selected to delete." -msgstr "" +msgstr "[WARNING_NOTCL] Отмененный. Ничего не выбрано для удаления." #: flatcamGUI/FlatCAMGUI.py:2733 flatcamGUI/FlatCAMGUI.py:2928 msgid "[WARNING_NOTCL] Cancelled. Nothing selected to copy." -msgstr "" +msgstr "[WARNING_NOTCL] Отмененный. Ничего не выбрано для копирования." #: flatcamGUI/FlatCAMGUI.py:2779 flatcamGUI/FlatCAMGUI.py:2974 msgid "[WARNING_NOTCL] Cancelled. Nothing selected to move." -msgstr "" +msgstr "[WARNING_NOTCL] Отмененный. Ничего не выбрано для перемещения." #: flatcamGUI/FlatCAMGUI.py:2988 msgid "New Tool ..." @@ -5396,7 +5419,7 @@ msgstr "Размер сетки Х:" #: flatcamGUI/FlatCAMGUI.py:3331 msgid "This is the Grid snap value on X axis." -msgstr "" +msgstr "Это значение привязки сетки по оси X." #: flatcamGUI/FlatCAMGUI.py:3336 msgid "Grid Y value:" @@ -5404,11 +5427,11 @@ msgstr "Размер сетки Y:" #: flatcamGUI/FlatCAMGUI.py:3338 msgid "This is the Grid snap value on Y axis." -msgstr "" +msgstr "Это значение привязки сетки по оси Y." #: flatcamGUI/FlatCAMGUI.py:3343 msgid "Snap Max:" -msgstr "" +msgstr "Оснастка Макс:" #: flatcamGUI/FlatCAMGUI.py:3348 msgid "Workspace:" @@ -5419,20 +5442,24 @@ msgid "" "Draw a delimiting rectangle on canvas.\n" "The purpose is to illustrate the limits for our work." msgstr "" +"Нарисуйте прямоугольник с разделителями на холсте.\n" +"Цель состоит в том, чтобы проиллюстрировать пределы нашей работы." #: flatcamGUI/FlatCAMGUI.py:3353 msgid "Wk. format:" -msgstr "" +msgstr "УК. формат:" #: flatcamGUI/FlatCAMGUI.py:3355 msgid "" "Select the type of rectangle to be used on canvas,\n" "as valid workspace." msgstr "" +"Выберите тип прямоугольника, который будет использоваться на холсте,\n" +"как допустимое рабочее пространство." #: flatcamGUI/FlatCAMGUI.py:3368 msgid "Plot Fill:" -msgstr "" +msgstr "Заливка Участка:" #: flatcamGUI/FlatCAMGUI.py:3370 msgid "" @@ -5440,6 +5467,9 @@ msgid "" "First 6 digits are the color and the last 2\n" "digits are for alpha (transparency) level." msgstr "" +"Установите цвет заливки для построенных объектов.\n" +"Первые 6 цифр-это цвет, а последние 2\n" +"цифры для альфа-уровня (прозрачности)." #: flatcamGUI/FlatCAMGUI.py:3384 flatcamGUI/FlatCAMGUI.py:3434 #: flatcamGUI/FlatCAMGUI.py:3484 @@ -5448,19 +5478,19 @@ msgstr "Уровень прозрачности:" #: flatcamGUI/FlatCAMGUI.py:3386 msgid "Set the fill transparency for plotted objects." -msgstr "" +msgstr "Установите прозрачность заливки для построенных объектов." #: flatcamGUI/FlatCAMGUI.py:3403 msgid "Plot Line:" -msgstr "" +msgstr "сюжетная линия:" #: flatcamGUI/FlatCAMGUI.py:3405 msgid "Set the line color for plotted objects." -msgstr "" +msgstr "Установите цвет линии для построенных объектов." #: flatcamGUI/FlatCAMGUI.py:3417 msgid "Sel. Fill:" -msgstr "" +msgstr "Выбор Заполнения:" #: flatcamGUI/FlatCAMGUI.py:3419 msgid "" @@ -5469,22 +5499,26 @@ msgid "" "First 6 digits are the color and the last 2\n" "digits are for alpha (transparency) level." msgstr "" +"Установка цвета заливки для поля выбора\n" +"в случае, если выбор сделан слева направо.\n" +"Первые 6 цифр-это цвет, а последние 2\n" +"цифры для альфа-уровня (прозрачности)." #: flatcamGUI/FlatCAMGUI.py:3436 msgid "Set the fill transparency for the 'left to right' selection box." -msgstr "" +msgstr "Установите прозрачность заливки для поля выбора \"слева направо\"." #: flatcamGUI/FlatCAMGUI.py:3453 msgid "Sel. Line:" -msgstr "" +msgstr "Строка Выбора:" #: flatcamGUI/FlatCAMGUI.py:3455 msgid "Set the line color for the 'left to right' selection box." -msgstr "" +msgstr "Установите цвет линии для поля выбора \"слева направо\"." #: flatcamGUI/FlatCAMGUI.py:3467 msgid "Sel2. Fill:" -msgstr "" +msgstr "Выбор 2. Заполнить:" #: flatcamGUI/FlatCAMGUI.py:3469 msgid "" @@ -5493,52 +5527,58 @@ msgid "" "First 6 digits are the color and the last 2\n" "digits are for alpha (transparency) level." msgstr "" +"Установка цвета заливки для поля выбора\n" +"в случае, если выбор сделан справа налево.\n" +"Первые 6 цифр-это цвет, а последние 2\n" +"цифры для альфа-уровня (прозрачности)." #: flatcamGUI/FlatCAMGUI.py:3486 msgid "Set the fill transparency for selection 'right to left' box." -msgstr "" +msgstr "Установите прозрачность заливки для выбора \"справа налево\"." #: flatcamGUI/FlatCAMGUI.py:3503 msgid "Sel2. Line:" -msgstr "" +msgstr "Выбор Линии 2 :" #: flatcamGUI/FlatCAMGUI.py:3505 msgid "Set the line color for the 'right to left' selection box." -msgstr "" +msgstr "Установите цвет линии для поля выбора \"справа налево\"." #: flatcamGUI/FlatCAMGUI.py:3517 msgid "Editor Draw:" -msgstr "" +msgstr "Редактор Розыгрыша:" #: flatcamGUI/FlatCAMGUI.py:3519 msgid "Set the color for the shape." -msgstr "" +msgstr "Установите цвет для фигуры." #: flatcamGUI/FlatCAMGUI.py:3531 msgid "Editor Draw Sel.:" -msgstr "" +msgstr "Редактор Выбор Рисования:" #: flatcamGUI/FlatCAMGUI.py:3533 msgid "Set the color of the shape when selected." -msgstr "" +msgstr "Установите цвет фигуры при выборе." #: flatcamGUI/FlatCAMGUI.py:3545 msgid "Project Items:" -msgstr "" +msgstr "элемент проекта:" #: flatcamGUI/FlatCAMGUI.py:3547 msgid "Set the color of the items in Project Tab Tree." -msgstr "" +msgstr "Установите цвет элементов в дереве вкладок проекта." #: flatcamGUI/FlatCAMGUI.py:3558 msgid "Proj. Dis. Items:" -msgstr "" +msgstr "Прой. Дис. Предметы:" #: flatcamGUI/FlatCAMGUI.py:3560 msgid "" "Set the color of the items in Project Tab Tree,\n" "for the case when the items are disabled." msgstr "" +"Установка цвета элементов в дереве вкладок проекта,\n" +"для случая, когда элементы отключены." #: flatcamGUI/FlatCAMGUI.py:3611 msgid "GUI Settings" @@ -5553,6 +5593,8 @@ msgid "" "Select an layout for FlatCAM.\n" "It is applied immediately." msgstr "" +"Выберите макет для FlatCAM кулачка.\n" +"Применяется немедленно." #: flatcamGUI/FlatCAMGUI.py:3635 msgid "Style:" @@ -5563,6 +5605,8 @@ msgid "" "Select an style for FlatCAM.\n" "It will be applied at the next app start." msgstr "" +"Выберите стиль для FlatCAM.\n" +"Он будет применен при следующем запуске приложения." #: flatcamGUI/FlatCAMGUI.py:3648 msgid "HDPI Support:" @@ -5594,7 +5638,7 @@ msgstr "Сбросить" #: flatcamGUI/FlatCAMGUI.py:3672 msgid "Hover Shape:" -msgstr "" +msgstr "Форма Наведения:" #: flatcamGUI/FlatCAMGUI.py:3674 msgid "" @@ -5602,10 +5646,13 @@ msgid "" "It is displayed whenever the mouse cursor is hovering\n" "over any kind of not-selected object." msgstr "" +"Возможность отображения формы при наведении на объекты FlatCAM.\n" +"Он отображается при наведении курсора мыши\n" +"над любым невыбранным объектом." #: flatcamGUI/FlatCAMGUI.py:3681 msgid "Sel. Shape:" -msgstr "" +msgstr "Сэл. Форма:" #: flatcamGUI/FlatCAMGUI.py:3683 msgid "" @@ -5614,6 +5661,10 @@ msgid "" "either by clicking or dragging mouse from left to right or\n" "right to left." msgstr "" +"Включите отображение формы выделения для объектов FlatCAM.\n" +"Он отображается всякий раз, когда мышь выбирает объект\n" +"щелчком или перетаскиванием мыши слева направо или\n" +"справа налево." #: flatcamGUI/FlatCAMGUI.py:3725 msgid "Are you sure you want to delete the GUI Settings? \n" @@ -5637,6 +5688,9 @@ msgid "" "Whatever is selected here is set every time\n" "FLatCAM is started." msgstr "" +"Значение по умолчанию для модулей FlatCAM.\n" +"Все, что выбрано здесь, устанавливается каждый раз\n" +"FlatCAM запущен." #: flatcamGUI/FlatCAMGUI.py:3763 msgid "APP. LEVEL:" @@ -5651,6 +5705,13 @@ msgid "" "The choice here will influence the parameters in\n" "the Selected Tab for all kinds of FlatCAM objects." msgstr "" +"Выберите уровень использования по умолчанию для FlatCAM кулачка.\n" +"Базовый уровень - > уменьшенная функциональность, лучше всего подходит для " +"начинающих.\n" +"Расширенный уровень - > полная функциональность.\n" +"\n" +"Выбор здесь повлияет на параметры внутри\n" +"выбранная вкладка для всех видов FlatCAM объектов." #: flatcamGUI/FlatCAMGUI.py:3769 msgid "Basic" @@ -5666,7 +5727,7 @@ msgstr "Язык:" #: flatcamGUI/FlatCAMGUI.py:3774 msgid "Set the language used throughout FlatCAM." -msgstr "" +msgstr "Установите язык, используемый в плоском кулачке." #: flatcamGUI/FlatCAMGUI.py:3777 msgid "Apply Language" @@ -5682,6 +5743,13 @@ msgid "" "security features. In this case the language will be\n" "applied at the next app start." msgstr "" +"Установите язык, используемый в FlatCAM.\n" +"Приложение будет перезапущено после нажатия кнопки.Windows: когда FlatCAM " +"установлен в программных файлах\n" +"каталог, возможно, что приложение не будет \n" +"перезагрузка после нажатия кнопки из-за окон\n" +"элементы безопасности. В этом случае язык будет\n" +"применяется при следующем запуске приложения." #: flatcamGUI/FlatCAMGUI.py:3787 msgid "Shell at StartUp:" @@ -5692,6 +5760,8 @@ msgid "" "Check this box if you want the shell to\n" "start automatically at startup." msgstr "" +"Установите этот флажок, если требуется, чтобы оболочка\n" +"запуск автоматически при запуске." #: flatcamGUI/FlatCAMGUI.py:3799 msgid "Version Check:" @@ -5737,7 +5807,7 @@ msgstr "Мультивыбор:" #: flatcamGUI/FlatCAMGUI.py:3834 msgid "Select the key used for multiple selection." -msgstr "" +msgstr "Выберите ключ, используемый для множественного выбора." #: flatcamGUI/FlatCAMGUI.py:3839 msgid "Project at StartUp:" @@ -5748,6 +5818,9 @@ msgid "" "Check this box if you want the project/selected/tool tab area to\n" "to be shown automatically at startup." msgstr "" +"Установите этот флажок, если требуется, чтобы область вкладки проект / " +"выбранный / инструмент\n" +"автоматически показывается при запуске." #: flatcamGUI/FlatCAMGUI.py:3851 msgid "Project AutoHide:" @@ -5759,6 +5832,10 @@ msgid "" "hide automatically when there are no objects loaded and\n" "to show whenever a new object is created." msgstr "" +"Установите этот флажок, если требуется, чтобы область вкладки проект / " +"выбранный / инструмент\n" +"скрыть автоматически, когда нет загруженных объектов и\n" +"показывать при создании нового объекта." #: flatcamGUI/FlatCAMGUI.py:3865 msgid "Enable ToolTips:" @@ -5769,10 +5846,13 @@ msgid "" "Check this box if you want to have toolTips displayed\n" "when hovering with mouse over items throughout the App." msgstr "" +"Установите этот флажок, если вы хотите, чтобы всплывающие подсказки " +"отображались\n" +"при наведении курсора мыши на элементы по всему приложению." #: flatcamGUI/FlatCAMGUI.py:3875 msgid "Workers number:" -msgstr "" +msgstr "Количество работников :" #: flatcamGUI/FlatCAMGUI.py:3877 flatcamGUI/FlatCAMGUI.py:3886 msgid "" @@ -5783,6 +5863,12 @@ msgid "" "Default value is 2.\n" "After change, it will be applied at next App start." msgstr "" +"Количество QThreads, доступных приложению.\n" +"Большее число может закончить работу быстрее, но\n" +"в зависимости от скорости вашего компьютера, может сделать приложение\n" +"неотзывчивый. Может иметь значение от 2 до 16.\n" +"Значение по умолчанию-2.\n" +"После изменения, он будет применяться при следующем запуске приложения." #: flatcamGUI/FlatCAMGUI.py:3898 flatcamGUI/FlatCAMGUI.py:3907 msgid "" @@ -5793,6 +5879,12 @@ msgid "" "performance. Higher value will provide more\n" "performance at the expense of level of detail." msgstr "" +"Это значение может противостоять эффекту шагов круга\n" +"параметр. Значение по умолчанию-0.01.\n" +"Более низкое значение увеличит детализацию как в изображении\n" +"и в G-код для кругов, с более высокой ценой в\n" +"спектакль. Более высокое значение обеспечит больше\n" +"производительность за счет уровня детализации." #: flatcamGUI/FlatCAMGUI.py:3943 msgid "\"Open\" behavior" @@ -5806,6 +5898,12 @@ msgid "" "When unchecked the path for opening files is the one used last: either the\n" "path for saving files or the path for opening files." msgstr "" +"При проверке путь к последнему сохраненному файлу используется при " +"сохранении файлов,\n" +"и путь к последнему открытому файлу используется при открытии файлов.\n" +"\n" +"Когда флажок снят, путь для открытия файлов используется последним: либо\n" +"путь для сохранения файлов или путь для открытия файлов." #: flatcamGUI/FlatCAMGUI.py:3954 msgid "Save Compressed Project" @@ -5816,6 +5914,8 @@ msgid "" "Whether to save a compressed or uncompressed project.\n" "When checked it will save a compressed FlatCAM project." msgstr "" +"Сохранение сжатого или несжатого проекта.\n" +"При проверке он сохранит сжатый FlatCAM проект." #: flatcamGUI/FlatCAMGUI.py:3967 msgid "Compression Level:" @@ -5827,6 +5927,9 @@ msgid "" "a FlatCAM project. Higher value means better compression\n" "but require more RAM usage and more processing time." msgstr "" +"Уровень сжатия при сохранении FlatCAM проект. \n" +"Более высокое значение означает более высокую степень сжатия\n" +"но требуют больше памяти и больше времени на обработку." #: flatcamGUI/FlatCAMGUI.py:3992 msgid "Gerber General" @@ -5877,6 +5980,8 @@ msgid "" "The number of circle steps for Gerber \n" "circular aperture linear approximation." msgstr "" +"Число шагов круга для Gerber \n" +"линейная аппроксимация круглой апертуры." #: flatcamGUI/FlatCAMGUI.py:4040 msgid "Gerber Options" @@ -5925,6 +6030,10 @@ msgid "" "A value here of 0.25 means an overlap of 25% from the tool diameter found " "above." msgstr "" +"Сколько (доля) ширины инструмента перекрывать каждый проход инструмента.\n" +"Образец:\n" +"Значение 0,25 означает перекрытие на 25% от диаметра инструмента, указанного " +"выше." #: flatcamGUI/FlatCAMGUI.py:4083 flatcamGUI/ObjectUI.py:295 msgid "Milling Type:" @@ -5959,6 +6068,8 @@ msgid "" "Create a Geometry object with\n" "toolpaths to cut all non-copper regions." msgstr "" +"Создание объекта геометрии с помощью\n" +"траектории резания для всех областей, отличных от меди." #: flatcamGUI/FlatCAMGUI.py:4113 flatcamGUI/FlatCAMGUI.py:4139 #: flatcamGUI/ObjectUI.py:430 flatcamGUI/ObjectUI.py:464 @@ -6055,6 +6166,9 @@ msgid "" "Also, on hide, it will delete all mark shapes\n" "that are drawn on canvas." msgstr "" +"Переключение отображения таблицы апертур Gerber.\n" +"Кроме того, при скрытии он удалит все фигуры меток\n" +"которые нарисованы на холсте." #: flatcamGUI/FlatCAMGUI.py:4229 msgid "Gerber Export" @@ -6069,6 +6183,8 @@ msgid "" "The parameters set here are used in the file exported\n" "when using the File -> Export -> Export Gerber menu entry." msgstr "" +"Заданные здесь параметры используются в экспортированном файле\n" +"при использовании пункта меню File -> Export -> Export Gerber." #: flatcamGUI/FlatCAMGUI.py:4243 flatcamGUI/FlatCAMGUI.py:4895 msgid "Units:" @@ -6076,7 +6192,7 @@ msgstr "Единицы:" #: flatcamGUI/FlatCAMGUI.py:4245 flatcamGUI/FlatCAMGUI.py:4251 msgid "The units used in the Gerber file." -msgstr "" +msgstr "Единицы измерения, используемые в файле Gerber." #: flatcamGUI/FlatCAMGUI.py:4257 flatcamGUI/FlatCAMGUI.py:4909 msgid "Int/Decimals:" @@ -6087,18 +6203,24 @@ msgid "" "The number of digits in the whole part of the number\n" "and in the fractional part of the number." msgstr "" +"Количество цифр в целой части числа\n" +"и в дробной части числа." #: flatcamGUI/FlatCAMGUI.py:4270 msgid "" "This numbers signify the number of digits in\n" "the whole part of Gerber coordinates." msgstr "" +"Эти числа обозначают количество цифр в\n" +"вся часть координат Gerber." #: flatcamGUI/FlatCAMGUI.py:4284 msgid "" "This numbers signify the number of digits in\n" "the decimal part of Gerber coordinates." msgstr "" +"Эти числа обозначают количество цифр в\n" +"десятичная часть координат Gerber." #: flatcamGUI/FlatCAMGUI.py:4293 flatcamGUI/FlatCAMGUI.py:4970 msgid "Zeros:" @@ -6112,6 +6234,11 @@ msgid "" "If TZ is checked then Trailing Zeros are removed\n" "and Leading Zeros are kept." msgstr "" +"Задает тип нулей Гербера.\n" +"Если LZ, то ведущие нули удаляются и\n" +"Конечные нули сохраняются.\n" +"Если TZ установлен, то конечные нули удаляются\n" +"и ведущие нули сохраняются." #: flatcamGUI/FlatCAMGUI.py:4326 flatcamGUI/FlatCAMGUI.py:5011 #: flatcamGUI/FlatCAMGUI.py:5470 flatcamGUI/FlatCAMGUI.py:5762 @@ -6129,7 +6256,7 @@ msgstr "Список параметров редактора Gerber." #: flatcamGUI/FlatCAMGUI.py:4336 flatcamGUI/FlatCAMGUI.py:5021 #: flatcamGUI/FlatCAMGUI.py:5480 msgid "Selection limit:" -msgstr "" +msgstr "Ограничение выбора:" #: flatcamGUI/FlatCAMGUI.py:4338 msgid "" @@ -6139,6 +6266,11 @@ msgid "" "Increases the performance when moving a\n" "large number of geometric elements." msgstr "" +"Установка количества выбранных геометрий Gerber\n" +"элементы, над которыми расположена служебная геометрия\n" +"становится просто прямоугольником выделения.\n" +"Увеличивает производительность при перемещении\n" +"большое количество геометрических элементов." #: flatcamGUI/FlatCAMGUI.py:4358 msgid "Excellon General" @@ -6170,6 +6302,24 @@ msgid "" "Sprint Layout 2:4 INCH LZ\n" "KiCAD 3:5 INCH TZ" msgstr "" +"Файлы ЧПУ сверла, как правило, по имени файлов Excellon \n" +"это файлы, которые можно найти в разных форматах.\n" +"Здесь мы устанавливаем формат, используемый, когда\n" +"координаты не используют точку.\n" +"\n" +"Возможные пресеты:\n" +"PROTEUS 3:3 MM LZ\n" +"DipTrace 5:2 MM TZ\n" +"DipTrace 4:3 MM LZ\n" +"\n" +"EAGLE 3:3 MM TZ\n" +"EAGLE 4:3 MM TZ\n" +"EAGLE 2:5 INCH TZ\n" +"EAGLE 3:5 INCH TZ\n" +"\n" +"ALTIUM 2:4 INCH LZ\n" +"Sprint Layout 2:4 INCH LZ\n" +"KiCAD 3:5 INCH TZ" #: flatcamGUI/FlatCAMGUI.py:4407 msgid "INCH:" @@ -6185,6 +6335,8 @@ msgid "" "This numbers signify the number of digits in\n" "the whole part of Excellon coordinates." msgstr "" +"Эти числа обозначают количество цифр в\n" +"целая часть Excellon координат." #: flatcamGUI/FlatCAMGUI.py:4432 flatcamGUI/FlatCAMGUI.py:4465 #: flatcamGUI/FlatCAMGUI.py:4938 @@ -6192,6 +6344,8 @@ msgid "" "This numbers signify the number of digits in\n" "the decimal part of Excellon coordinates." msgstr "" +"Эти числа обозначают количество цифр в\n" +"десятичная часть Excellon координат." #: flatcamGUI/FlatCAMGUI.py:4440 msgid "METRIC:" @@ -6213,6 +6367,11 @@ msgid "" "If TZ is checked then Trailing Zeros are kept\n" "and Leading Zeros are removed." msgstr "" +"Задает тип нулей Excellon.\n" +"Если LZ, то ведущие нули сохраняются и\n" +"Конечные нули удаляются.\n" +"Если TZ установлен, то конечные нули сохраняются\n" +"и ведущие нули удаляются." #: flatcamGUI/FlatCAMGUI.py:4488 msgid "" @@ -6223,6 +6382,12 @@ msgid "" "If TZ is checked then Trailing Zeros are kept\n" "and Leading Zeros are removed." msgstr "" +"Задает тип по умолчанию нулей Excellon.\n" +"Если он не обнаружен в анализируемом файле, значение здесь\n" +"будем использовать.Если LZ, то ведущие нули сохраняются и\n" +"Конечные нули удаляются.\n" +"Если TZ установлен, то конечные нули сохраняются\n" +"и ведущие нули удаляются." #: flatcamGUI/FlatCAMGUI.py:4498 msgid "Default Units:" @@ -6235,6 +6400,10 @@ msgid "" "will be used.Some Excellon files don't have an header\n" "therefore this parameter will be used." msgstr "" +"Это устанавливает единицы измерения Excellon файлов по умолчанию.\n" +"Если он не обнаружен в анализируемом файле, значение здесь\n" +"будем использовать.Некоторые файлы Excellon не имеют заголовка\n" +"поэтому этот параметр будет использоваться." #: flatcamGUI/FlatCAMGUI.py:4512 msgid "" @@ -6242,6 +6411,9 @@ msgid "" "Some Excellon files don't have an header\n" "therefore this parameter will be used." msgstr "" +"Это устанавливает единицы Excellon файлов.\n" +"Некоторые файлы Excellon не имеют заголовка\n" +"поэтому этот параметр будет использоваться." #: flatcamGUI/FlatCAMGUI.py:4520 msgid "Excellon Optimization:" @@ -6262,10 +6434,21 @@ msgid "" "If DISABLED, then FlatCAM works in 32bit mode and it uses \n" "Travelling Salesman algorithm for path optimization." msgstr "" +"Задает тип оптимизации для пути детализации Excellon.\n" +"Если установлен флажок МХ является то алгоритм или Google-инструменты с " +"Метаэвристический\n" +"Используется управляемый локальный путь. Время поиска по умолчанию 3 сек.\n" +"Используйте команду set_sys excellon_search_time значение TCL, чтобы " +"установить другие значения.\n" +"Если установлен флажок Basic, то используется алгоритм Google OR-Tools " +"Basic.\n" +"\n" +"Если отключено, то FlatCAM работает в 32-битном режиме и использует \n" +"Алгоритм коммивояжера для оптимизации пути." #: flatcamGUI/FlatCAMGUI.py:4550 msgid "Optimization Time: " -msgstr "" +msgstr "Время Оптимизации:" #: flatcamGUI/FlatCAMGUI.py:4553 msgid "" @@ -6274,6 +6457,10 @@ msgid "" "path optimization. This max duration is set here.\n" "In seconds." msgstr "" +"При включении или инструменты Метаэвристики (МГН)-есть\n" +"максимальный порог за сколько времени тратится на\n" +"оптимизация пути. Максимальная продолжительность устанавливается здесь.\n" +"В секундах." #: flatcamGUI/FlatCAMGUI.py:4596 msgid "Excellon Options" @@ -6288,6 +6475,8 @@ msgid "" "Parameters used to create a CNC Job object\n" "for this drill object." msgstr "" +"Параметры, используемые для создания объекта задания ЧПУ\n" +"для этого сверлите объект." #: flatcamGUI/FlatCAMGUI.py:4609 flatcamGUI/FlatCAMGUI.py:5196 #: flatcamGUI/FlatCAMGUI.py:6300 flatcamGUI/ObjectUI.py:595 @@ -6335,7 +6524,7 @@ msgstr "Смена инструмента Z :" #: flatcamGUI/FlatCAMGUI.py:4639 flatcamGUI/FlatCAMGUI.py:5251 msgid "Toolchange Z position." -msgstr "" +msgstr "Изменение положения Z инструмента." #: flatcamGUI/FlatCAMGUI.py:4645 msgid "Feedrate:" @@ -6399,7 +6588,7 @@ msgstr "Продолжительность:" #: flatcamGUI/FlatCAMGUI.py:4686 flatcamGUI/FlatCAMGUI.py:5310 #: flatcamGUI/ObjectUI.py:699 flatcamGUI/ObjectUI.py:1234 msgid "Number of milliseconds for spindle to dwell." -msgstr "" +msgstr "Количество миллисекунд для шпинделя, котор нужно обитать." #: flatcamGUI/FlatCAMGUI.py:4698 flatcamGUI/FlatCAMGUI.py:5320 #: flatcamGUI/ObjectUI.py:707 @@ -6411,6 +6600,8 @@ msgid "" "The postprocessor file that dictates\n" "gcode output." msgstr "" +"Файл постпроцессора, который диктует\n" +"выход УП." #: flatcamGUI/FlatCAMGUI.py:4709 msgid "Gcode: " @@ -6423,6 +6614,10 @@ msgid "" "When choosing 'Slots' or 'Both', slots will be\n" "converted to drills." msgstr "" +"Выберите, что использовать для генерации G-кода:\n" +"\"Сверла\", \"слоты\" или \"оба\".\n" +"При выборе \"слоты\" или \"оба\", слоты будут\n" +"преобразованы в упражнения." #: flatcamGUI/FlatCAMGUI.py:4727 flatcamGUI/ObjectUI.py:772 msgid "Mill Holes" @@ -6438,13 +6633,15 @@ msgstr "Диам. сверла:" #: flatcamGUI/FlatCAMGUI.py:4740 msgid "Slot Tool dia:" -msgstr "" +msgstr "Диаметр инструмента шлица:" #: flatcamGUI/FlatCAMGUI.py:4742 msgid "" "Diameter of the cutting tool\n" "when milling slots." msgstr "" +"Диаметр режущего инструмента\n" +"при фрезеровании пазов." #: flatcamGUI/FlatCAMGUI.py:4754 msgid "Defaults" @@ -6463,6 +6660,9 @@ msgid "" "Parameters used to create a CNC Job object\n" "for this drill object that are shown when App Level is Advanced." msgstr "" +"Параметры, используемые для создания объекта задания ЧПУ\n" +"для этого объекта детализации, которые отображаются при повышении уровня " +"приложения." #: flatcamGUI/FlatCAMGUI.py:4783 msgid "Offset Z:" @@ -9681,11 +9881,11 @@ msgstr "" msgid "[ERROR_NOTCL] PaintTool.paint_poly() --> %s" msgstr "" -#: flatcamTools/ToolPaint.py:970 flatcamTools/ToolPaint.py:1263 +#: flatcamTools/ToolPaint.py:970 flatcamTools/ToolPaint.py:1267 msgid "Polygon Paint started ..." msgstr "Запущена отрисовка полигона ..." -#: flatcamTools/ToolPaint.py:1119 flatcamTools/ToolPaint.py:1208 +#: flatcamTools/ToolPaint.py:1123 flatcamTools/ToolPaint.py:1212 #, python-format msgid "" "[ERROR] Could not do Paint All. Try a different combination of parameters. " @@ -9693,7 +9893,7 @@ msgid "" "%s" msgstr "" -#: flatcamTools/ToolPaint.py:1143 +#: flatcamTools/ToolPaint.py:1147 msgid "" "[ERROR] There is no Painting Geometry in the file.\n" "Usually it means that the tool diameter is too big for the painted " @@ -9701,11 +9901,11 @@ msgid "" "Change the painting parameters and try again." msgstr "" -#: flatcamTools/ToolPaint.py:1152 +#: flatcamTools/ToolPaint.py:1156 msgid "[success] Paint All Done." msgstr "" -#: flatcamTools/ToolPaint.py:1238 +#: flatcamTools/ToolPaint.py:1242 msgid "" "[ERROR_NOTCL] There is no Painting Geometry in the file.\n" "Usually it means that the tool diameter is too big for the painted " @@ -9713,7 +9913,7 @@ msgid "" "Change the painting parameters and try again." msgstr "" -#: flatcamTools/ToolPaint.py:1247 +#: flatcamTools/ToolPaint.py:1251 msgid "[success] Paint All with Rest-Machining done." msgstr "" diff --git a/locale_template/strings.pot b/locale_template/strings.pot index 3e221532..bcfaea2a 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-06-22 16:40+0300\n" +"POT-Creation-Date: 2019-06-22 21:02+0300\n" "PO-Revision-Date: 2019-03-25 15:08+0200\n" "Last-Translator: \n" "Language-Team: \n" @@ -40,124 +40,124 @@ msgstr "" msgid "Open Script file failed." msgstr "" -#: FlatCAMApp.py:2235 +#: FlatCAMApp.py:2234 msgid "[WARNING_NOTCL] Select a Geometry, Gerber or Excellon Object to edit." msgstr "" -#: FlatCAMApp.py:2245 +#: FlatCAMApp.py:2244 msgid "" "[WARNING_NOTCL] Simultanoeus editing of tools geometry in a MultiGeo " "Geometry is not possible.\n" "Edit only one geometry at a time." msgstr "" -#: FlatCAMApp.py:2289 +#: FlatCAMApp.py:2299 msgid "[WARNING_NOTCL] Editor is activated ..." msgstr "" -#: FlatCAMApp.py:2307 +#: FlatCAMApp.py:2317 msgid "Do you want to save the edited object?" msgstr "" -#: FlatCAMApp.py:2308 flatcamGUI/FlatCAMGUI.py:1618 +#: FlatCAMApp.py:2318 flatcamGUI/FlatCAMGUI.py:1618 msgid "Close Editor" msgstr "" -#: FlatCAMApp.py:2311 FlatCAMApp.py:3403 FlatCAMApp.py:5908 +#: FlatCAMApp.py:2321 FlatCAMApp.py:3413 FlatCAMApp.py:5918 #: FlatCAMTranslation.py:89 flatcamGUI/FlatCAMGUI.py:3730 msgid "Yes" msgstr "" -#: FlatCAMApp.py:2312 FlatCAMApp.py:3404 FlatCAMApp.py:5909 +#: FlatCAMApp.py:2322 FlatCAMApp.py:3414 FlatCAMApp.py:5919 #: FlatCAMTranslation.py:90 flatcamGUI/FlatCAMGUI.py:3731 msgid "No" msgstr "" -#: FlatCAMApp.py:2313 FlatCAMApp.py:3405 FlatCAMApp.py:3754 FlatCAMApp.py:5910 +#: FlatCAMApp.py:2323 FlatCAMApp.py:3415 FlatCAMApp.py:3764 FlatCAMApp.py:5920 msgid "Cancel" msgstr "" -#: FlatCAMApp.py:2340 +#: FlatCAMApp.py:2350 msgid "[WARNING] Object empty after edit." msgstr "" -#: FlatCAMApp.py:2362 FlatCAMApp.py:2381 FlatCAMApp.py:2393 +#: FlatCAMApp.py:2372 FlatCAMApp.py:2391 FlatCAMApp.py:2403 msgid "[WARNING_NOTCL] Select a Gerber, Geometry or Excellon Object to update." msgstr "" -#: FlatCAMApp.py:2365 +#: FlatCAMApp.py:2375 #, python-format msgid "[selected] %s is updated, returning to App..." msgstr "" -#: FlatCAMApp.py:2730 +#: FlatCAMApp.py:2740 msgid "[ERROR] Could not load defaults file." msgstr "" -#: FlatCAMApp.py:2742 +#: FlatCAMApp.py:2752 msgid "[ERROR] Failed to parse defaults file." msgstr "" -#: FlatCAMApp.py:2763 FlatCAMApp.py:2767 +#: FlatCAMApp.py:2773 FlatCAMApp.py:2777 msgid "Import FlatCAM Preferences" msgstr "" -#: FlatCAMApp.py:2773 +#: FlatCAMApp.py:2783 msgid "[WARNING_NOTCL] FlatCAM preferences import cancelled." msgstr "" -#: FlatCAMApp.py:2781 FlatCAMApp.py:2835 FlatCAMApp.py:3282 +#: FlatCAMApp.py:2791 FlatCAMApp.py:2845 FlatCAMApp.py:3292 msgid "[ERROR_NOTCL] Could not load defaults file." msgstr "" -#: FlatCAMApp.py:2789 FlatCAMApp.py:3291 +#: FlatCAMApp.py:2799 FlatCAMApp.py:3301 msgid "[ERROR_NOTCL] Failed to parse defaults file." msgstr "" -#: FlatCAMApp.py:2792 +#: FlatCAMApp.py:2802 #, python-format msgid "[success] Imported Defaults from %s" msgstr "" -#: FlatCAMApp.py:2807 FlatCAMApp.py:2812 +#: FlatCAMApp.py:2817 FlatCAMApp.py:2822 msgid "Export FlatCAM Preferences" msgstr "" -#: FlatCAMApp.py:2819 +#: FlatCAMApp.py:2829 msgid "[WARNING_NOTCL] FlatCAM preferences export cancelled." msgstr "" -#: FlatCAMApp.py:2854 FlatCAMApp.py:3336 +#: FlatCAMApp.py:2864 FlatCAMApp.py:3346 msgid "[ERROR_NOTCL] Failed to write defaults to file." msgstr "" -#: FlatCAMApp.py:2907 +#: FlatCAMApp.py:2917 msgid "[ERROR_NOTCL] Failed to open recent files file for writing." msgstr "" -#: FlatCAMApp.py:2984 camlib.py:4457 +#: FlatCAMApp.py:2994 camlib.py:4457 msgid "[ERROR_NOTCL] An internal error has ocurred. See shell.\n" msgstr "" -#: FlatCAMApp.py:2985 +#: FlatCAMApp.py:2995 #, python-brace-format msgid "" "Object ({kind}) failed because: {error} \n" "\n" msgstr "" -#: FlatCAMApp.py:3005 +#: FlatCAMApp.py:3015 msgid "Converting units to " msgstr "" -#: FlatCAMApp.py:3084 FlatCAMApp.py:3087 FlatCAMApp.py:3090 FlatCAMApp.py:3093 +#: FlatCAMApp.py:3094 FlatCAMApp.py:3097 FlatCAMApp.py:3100 FlatCAMApp.py:3103 #, python-brace-format msgid "" "[selected] {kind} created/selected: {name}" msgstr "" -#: FlatCAMApp.py:3187 +#: FlatCAMApp.py:3197 #, python-brace-format msgid "" "FlatCAM
Version {version} {beta} ({date}) - " @@ -171,41 +171,41 @@ msgid "" "downloads/\">here.
" msgstr "" -#: FlatCAMApp.py:3340 +#: FlatCAMApp.py:3350 msgid "[success] Defaults saved." msgstr "" -#: FlatCAMApp.py:3361 +#: FlatCAMApp.py:3371 msgid "[ERROR_NOTCL] Could not load factory defaults file." msgstr "" -#: FlatCAMApp.py:3370 +#: FlatCAMApp.py:3380 msgid "[ERROR_NOTCL] Failed to parse factory defaults file." msgstr "" -#: FlatCAMApp.py:3384 +#: FlatCAMApp.py:3394 msgid "[ERROR_NOTCL] Failed to write factory defaults to file." msgstr "" -#: FlatCAMApp.py:3388 +#: FlatCAMApp.py:3398 msgid "Factory defaults saved." msgstr "" -#: FlatCAMApp.py:3393 flatcamGUI/FlatCAMGUI.py:3106 +#: FlatCAMApp.py:3403 flatcamGUI/FlatCAMGUI.py:3106 msgid "[WARNING_NOTCL] Application is saving the project. Please wait ..." msgstr "" -#: FlatCAMApp.py:3398 +#: FlatCAMApp.py:3408 msgid "" "There are files/objects modified in FlatCAM. \n" "Do you want to Save the project?" msgstr "" -#: FlatCAMApp.py:3401 FlatCAMApp.py:5906 +#: FlatCAMApp.py:3411 FlatCAMApp.py:5916 msgid "Save changes" msgstr "" -#: FlatCAMApp.py:3468 +#: FlatCAMApp.py:3478 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 " @@ -215,113 +215,113 @@ msgid "" "Check the generated GCODE." msgstr "" -#: FlatCAMApp.py:3509 +#: FlatCAMApp.py:3519 msgid "[ERROR_NOTCL] Failed. Excellon joining works only on Excellon objects." msgstr "" -#: FlatCAMApp.py:3531 +#: FlatCAMApp.py:3541 msgid "[ERROR_NOTCL] Failed. Gerber joining works only on Gerber objects." msgstr "" -#: FlatCAMApp.py:3546 FlatCAMApp.py:3571 +#: FlatCAMApp.py:3556 FlatCAMApp.py:3581 msgid "[ERROR_NOTCL] Failed. Select a Geometry Object and try again." msgstr "" -#: FlatCAMApp.py:3550 FlatCAMApp.py:3575 +#: FlatCAMApp.py:3560 FlatCAMApp.py:3585 #, python-format msgid "[ERROR_NOTCL] Expected a FlatCAMGeometry, got %s" msgstr "" -#: FlatCAMApp.py:3563 +#: FlatCAMApp.py:3573 msgid "[success] A Geometry object was converted to MultiGeo type." msgstr "" -#: FlatCAMApp.py:3589 +#: FlatCAMApp.py:3599 msgid "[success] A Geometry object was converted to SingleGeo type." msgstr "" -#: FlatCAMApp.py:3753 FlatCAMApp.py:4593 FlatCAMApp.py:6181 FlatCAMApp.py:6192 -#: FlatCAMApp.py:6432 FlatCAMApp.py:6442 +#: FlatCAMApp.py:3763 FlatCAMApp.py:4603 FlatCAMApp.py:6191 FlatCAMApp.py:6202 +#: FlatCAMApp.py:6442 FlatCAMApp.py:6452 msgid "Ok" msgstr "" -#: FlatCAMApp.py:3799 +#: FlatCAMApp.py:3809 #, python-format msgid "[success] Converted units to %s" msgstr "" -#: FlatCAMApp.py:3810 +#: FlatCAMApp.py:3820 msgid "[WARNING_NOTCL] Units conversion cancelled." msgstr "" -#: FlatCAMApp.py:4462 +#: FlatCAMApp.py:4472 msgid "Open file" msgstr "" -#: FlatCAMApp.py:4493 FlatCAMApp.py:4498 +#: FlatCAMApp.py:4503 FlatCAMApp.py:4508 msgid "Export G-Code ..." msgstr "" -#: FlatCAMApp.py:4501 +#: FlatCAMApp.py:4511 msgid "[WARNING_NOTCL] Export Code cancelled." msgstr "" -#: FlatCAMApp.py:4511 +#: FlatCAMApp.py:4521 msgid "[WARNING] No such file or directory" msgstr "" -#: FlatCAMApp.py:4518 +#: FlatCAMApp.py:4528 #, python-format msgid "Saved to: %s" msgstr "" -#: FlatCAMApp.py:4581 FlatCAMApp.py:4614 FlatCAMApp.py:4625 FlatCAMApp.py:4636 +#: FlatCAMApp.py:4591 FlatCAMApp.py:4624 FlatCAMApp.py:4635 FlatCAMApp.py:4646 #: flatcamTools/ToolNonCopperClear.py:489 flatcamTools/ToolSolderPaste.py:765 msgid "" "[WARNING_NOTCL] Please enter a tool diameter with non-zero value, in Float " "format." msgstr "" -#: FlatCAMApp.py:4586 FlatCAMApp.py:4619 FlatCAMApp.py:4630 FlatCAMApp.py:4641 +#: FlatCAMApp.py:4596 FlatCAMApp.py:4629 FlatCAMApp.py:4640 FlatCAMApp.py:4651 #: flatcamGUI/FlatCAMGUI.py:3001 msgid "[WARNING_NOTCL] Adding Tool cancelled ..." msgstr "" -#: FlatCAMApp.py:4589 +#: FlatCAMApp.py:4599 msgid "" "Adding Tool works only when Advanced is checked.\n" "Go to Preferences -> General - Show Advanced Options." msgstr "" -#: FlatCAMApp.py:4702 +#: FlatCAMApp.py:4712 msgid "Object(s) deleted ..." msgstr "" -#: FlatCAMApp.py:4706 +#: FlatCAMApp.py:4716 msgid "Failed. No object(s) selected..." msgstr "" -#: FlatCAMApp.py:4708 +#: FlatCAMApp.py:4718 msgid "Save the work in Editor and try again ..." msgstr "" -#: FlatCAMApp.py:4721 +#: FlatCAMApp.py:4731 msgid "Click to set the origin ..." msgstr "" -#: FlatCAMApp.py:4733 +#: FlatCAMApp.py:4743 msgid "Jump to ..." msgstr "" -#: FlatCAMApp.py:4734 +#: FlatCAMApp.py:4744 msgid "Enter the coordinates in format X,Y:" msgstr "" -#: FlatCAMApp.py:4741 +#: FlatCAMApp.py:4751 msgid "Wrong coordinates. Enter coordinates in format: X,Y" msgstr "" -#: FlatCAMApp.py:4759 flatcamEditors/FlatCAMExcEditor.py:2320 +#: FlatCAMApp.py:4769 flatcamEditors/FlatCAMExcEditor.py:2320 #: flatcamEditors/FlatCAMExcEditor.py:2327 #: flatcamEditors/FlatCAMGeoEditor.py:3648 #: flatcamEditors/FlatCAMGeoEditor.py:3662 @@ -335,84 +335,84 @@ msgstr "" msgid "[success] Done." msgstr "" -#: FlatCAMApp.py:4891 FlatCAMApp.py:4958 +#: FlatCAMApp.py:4901 FlatCAMApp.py:4968 msgid "[WARNING_NOTCL] No object is selected. Select an object and try again." msgstr "" -#: FlatCAMApp.py:4999 +#: FlatCAMApp.py:5009 msgid "[success] Origin set ..." msgstr "" -#: FlatCAMApp.py:5019 +#: FlatCAMApp.py:5029 msgid "Preferences" msgstr "" -#: FlatCAMApp.py:5039 +#: FlatCAMApp.py:5049 msgid "[WARNING_NOTCL] No object selected to Flip on Y axis." msgstr "" -#: FlatCAMApp.py:5064 +#: FlatCAMApp.py:5074 msgid "[success] Flip on Y axis done." msgstr "" -#: FlatCAMApp.py:5066 FlatCAMApp.py:5106 +#: FlatCAMApp.py:5076 FlatCAMApp.py:5116 #: flatcamEditors/FlatCAMGeoEditor.py:1355 #: flatcamEditors/FlatCAMGrbEditor.py:5343 flatcamTools/ToolTransform.py:748 #, python-format msgid "[ERROR_NOTCL] Due of %s, Flip action was not executed." msgstr "" -#: FlatCAMApp.py:5079 +#: FlatCAMApp.py:5089 msgid "[WARNING_NOTCL] No object selected to Flip on X axis." msgstr "" -#: FlatCAMApp.py:5104 +#: FlatCAMApp.py:5114 msgid "[success] Flip on X axis done." msgstr "" -#: FlatCAMApp.py:5119 +#: FlatCAMApp.py:5129 msgid "[WARNING_NOTCL] No object selected to Rotate." msgstr "" -#: FlatCAMApp.py:5122 FlatCAMApp.py:5167 FlatCAMApp.py:5198 +#: FlatCAMApp.py:5132 FlatCAMApp.py:5177 FlatCAMApp.py:5208 msgid "Transform" msgstr "" -#: FlatCAMApp.py:5122 FlatCAMApp.py:5167 FlatCAMApp.py:5198 +#: FlatCAMApp.py:5132 FlatCAMApp.py:5177 FlatCAMApp.py:5208 msgid "Enter the Angle value:" msgstr "" -#: FlatCAMApp.py:5152 +#: FlatCAMApp.py:5162 msgid "[success] Rotation done." msgstr "" -#: FlatCAMApp.py:5154 flatcamEditors/FlatCAMGeoEditor.py:1298 +#: FlatCAMApp.py:5164 flatcamEditors/FlatCAMGeoEditor.py:1298 #: flatcamEditors/FlatCAMGrbEditor.py:5272 flatcamTools/ToolTransform.py:677 #, python-format msgid "[ERROR_NOTCL] Due of %s, rotation movement was not executed." msgstr "" -#: FlatCAMApp.py:5165 +#: FlatCAMApp.py:5175 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on X axis." msgstr "" -#: FlatCAMApp.py:5186 +#: FlatCAMApp.py:5196 msgid "[success] Skew on X axis done." msgstr "" -#: FlatCAMApp.py:5196 +#: FlatCAMApp.py:5206 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on Y axis." msgstr "" -#: FlatCAMApp.py:5217 +#: FlatCAMApp.py:5227 msgid "[success] Skew on Y axis done." msgstr "" -#: FlatCAMApp.py:5287 +#: FlatCAMApp.py:5297 msgid "Grid On/Off" msgstr "" -#: FlatCAMApp.py:5300 flatcamEditors/FlatCAMGeoEditor.py:937 +#: FlatCAMApp.py:5310 flatcamEditors/FlatCAMGeoEditor.py:937 #: flatcamEditors/FlatCAMGrbEditor.py:2381 #: flatcamEditors/FlatCAMGrbEditor.py:4861 flatcamGUI/ObjectUI.py:991 #: flatcamTools/ToolDblSided.py:160 flatcamTools/ToolDblSided.py:208 @@ -422,7 +422,7 @@ msgstr "" msgid "Add" msgstr "" -#: FlatCAMApp.py:5301 FlatCAMObj.py:3296 +#: FlatCAMApp.py:5311 FlatCAMObj.py:3295 #: flatcamEditors/FlatCAMGrbEditor.py:2386 flatcamGUI/FlatCAMGUI.py:527 #: flatcamGUI/FlatCAMGUI.py:724 flatcamGUI/FlatCAMGUI.py:1616 #: flatcamGUI/FlatCAMGUI.py:1953 flatcamGUI/ObjectUI.py:1007 @@ -431,278 +431,278 @@ msgstr "" msgid "Delete" msgstr "" -#: FlatCAMApp.py:5314 +#: FlatCAMApp.py:5324 msgid "New Grid ..." msgstr "" -#: FlatCAMApp.py:5315 +#: FlatCAMApp.py:5325 msgid "Enter a Grid Value:" msgstr "" -#: FlatCAMApp.py:5323 FlatCAMApp.py:5350 +#: FlatCAMApp.py:5333 FlatCAMApp.py:5360 msgid "" "[WARNING_NOTCL] Please enter a grid value with non-zero value, in Float " "format." msgstr "" -#: FlatCAMApp.py:5329 +#: FlatCAMApp.py:5339 msgid "[success] New Grid added ..." msgstr "" -#: FlatCAMApp.py:5332 +#: FlatCAMApp.py:5342 msgid "[WARNING_NOTCL] Grid already exists ..." msgstr "" -#: FlatCAMApp.py:5335 +#: FlatCAMApp.py:5345 msgid "[WARNING_NOTCL] Adding New Grid cancelled ..." msgstr "" -#: FlatCAMApp.py:5357 +#: FlatCAMApp.py:5367 msgid "[ERROR_NOTCL] Grid Value does not exist ..." msgstr "" -#: FlatCAMApp.py:5360 +#: FlatCAMApp.py:5370 msgid "[success] Grid Value deleted ..." msgstr "" -#: FlatCAMApp.py:5363 +#: FlatCAMApp.py:5373 msgid "[WARNING_NOTCL] Delete Grid value cancelled ..." msgstr "" -#: FlatCAMApp.py:5402 +#: FlatCAMApp.py:5412 msgid "[WARNING_NOTCL] No object selected to copy it's name" msgstr "" -#: FlatCAMApp.py:5406 +#: FlatCAMApp.py:5416 msgid "Name copied on clipboard ..." msgstr "" -#: FlatCAMApp.py:5448 flatcamEditors/FlatCAMGrbEditor.py:3901 +#: FlatCAMApp.py:5458 flatcamEditors/FlatCAMGrbEditor.py:3901 msgid "[success] Coordinates copied to clipboard." msgstr "" -#: FlatCAMApp.py:5704 FlatCAMApp.py:5707 FlatCAMApp.py:5710 FlatCAMApp.py:5713 -#: FlatCAMApp.py:5728 FlatCAMApp.py:5731 FlatCAMApp.py:5734 FlatCAMApp.py:5737 -#: FlatCAMApp.py:5777 FlatCAMApp.py:5780 FlatCAMApp.py:5783 FlatCAMApp.py:5786 +#: FlatCAMApp.py:5714 FlatCAMApp.py:5717 FlatCAMApp.py:5720 FlatCAMApp.py:5723 +#: FlatCAMApp.py:5738 FlatCAMApp.py:5741 FlatCAMApp.py:5744 FlatCAMApp.py:5747 +#: FlatCAMApp.py:5787 FlatCAMApp.py:5790 FlatCAMApp.py:5793 FlatCAMApp.py:5796 #: ObjectCollection.py:719 ObjectCollection.py:722 ObjectCollection.py:725 #: ObjectCollection.py:728 #, python-brace-format msgid "[selected]{name} selected" msgstr "" -#: FlatCAMApp.py:5903 +#: FlatCAMApp.py:5913 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:5924 +#: FlatCAMApp.py:5934 msgid "[success] New Project created..." msgstr "" -#: FlatCAMApp.py:6040 FlatCAMApp.py:6043 flatcamGUI/FlatCAMGUI.py:608 +#: FlatCAMApp.py:6050 FlatCAMApp.py:6053 flatcamGUI/FlatCAMGUI.py:608 #: flatcamGUI/FlatCAMGUI.py:1832 msgid "Open Gerber" msgstr "" -#: FlatCAMApp.py:6048 +#: FlatCAMApp.py:6058 msgid "[WARNING_NOTCL] Open Gerber cancelled." msgstr "" -#: FlatCAMApp.py:6069 FlatCAMApp.py:6072 flatcamGUI/FlatCAMGUI.py:609 +#: FlatCAMApp.py:6079 FlatCAMApp.py:6082 flatcamGUI/FlatCAMGUI.py:609 #: flatcamGUI/FlatCAMGUI.py:1833 msgid "Open Excellon" msgstr "" -#: FlatCAMApp.py:6077 +#: FlatCAMApp.py:6087 msgid "[WARNING_NOTCL] Open Excellon cancelled." msgstr "" -#: FlatCAMApp.py:6099 FlatCAMApp.py:6102 +#: FlatCAMApp.py:6109 FlatCAMApp.py:6112 msgid "Open G-Code" msgstr "" -#: FlatCAMApp.py:6107 +#: FlatCAMApp.py:6117 msgid "[WARNING_NOTCL] Open G-Code cancelled." msgstr "" -#: FlatCAMApp.py:6125 FlatCAMApp.py:6128 +#: FlatCAMApp.py:6135 FlatCAMApp.py:6138 msgid "Open Project" msgstr "" -#: FlatCAMApp.py:6136 +#: FlatCAMApp.py:6146 msgid "[WARNING_NOTCL] Open Project cancelled." msgstr "" -#: FlatCAMApp.py:6155 FlatCAMApp.py:6158 +#: FlatCAMApp.py:6165 FlatCAMApp.py:6168 msgid "Open Configuration File" msgstr "" -#: FlatCAMApp.py:6162 +#: FlatCAMApp.py:6172 msgid "[WARNING_NOTCL] Open Config cancelled." msgstr "" -#: FlatCAMApp.py:6177 FlatCAMApp.py:6428 FlatCAMApp.py:8581 FlatCAMApp.py:8601 -#: FlatCAMApp.py:8622 FlatCAMApp.py:8644 +#: FlatCAMApp.py:6187 FlatCAMApp.py:6438 FlatCAMApp.py:8591 FlatCAMApp.py:8611 +#: FlatCAMApp.py:8632 FlatCAMApp.py:8654 msgid "[WARNING_NOTCL] No object selected." msgstr "" -#: FlatCAMApp.py:6178 FlatCAMApp.py:6429 +#: FlatCAMApp.py:6188 FlatCAMApp.py:6439 msgid "Please Select a Geometry object to export" msgstr "" -#: FlatCAMApp.py:6189 +#: FlatCAMApp.py:6199 msgid "[ERROR_NOTCL] Only Geometry, Gerber and CNCJob objects can be used." msgstr "" -#: FlatCAMApp.py:6202 FlatCAMApp.py:6206 +#: FlatCAMApp.py:6212 FlatCAMApp.py:6216 msgid "Export SVG" msgstr "" -#: FlatCAMApp.py:6211 +#: FlatCAMApp.py:6221 msgid "[WARNING_NOTCL] Export SVG cancelled." msgstr "" -#: FlatCAMApp.py:6230 +#: FlatCAMApp.py:6240 msgid "[[WARNING_NOTCL]] Data must be a 3D array with last dimension 3 or 4" msgstr "" -#: FlatCAMApp.py:6236 FlatCAMApp.py:6240 +#: FlatCAMApp.py:6246 FlatCAMApp.py:6250 msgid "Export PNG Image" msgstr "" -#: FlatCAMApp.py:6245 +#: FlatCAMApp.py:6255 msgid "Export PNG cancelled." msgstr "" -#: FlatCAMApp.py:6264 +#: FlatCAMApp.py:6274 msgid "" "[WARNING_NOTCL] No object selected. Please select an Gerber object to export." msgstr "" -#: FlatCAMApp.py:6269 FlatCAMApp.py:6392 +#: FlatCAMApp.py:6279 FlatCAMApp.py:6402 msgid "" "[ERROR_NOTCL] Failed. Only Gerber objects can be saved as Gerber files..." msgstr "" -#: FlatCAMApp.py:6281 +#: FlatCAMApp.py:6291 msgid "Save Gerber source file" msgstr "" -#: FlatCAMApp.py:6286 +#: FlatCAMApp.py:6296 msgid "[WARNING_NOTCL] Save Gerber source file cancelled." msgstr "" -#: FlatCAMApp.py:6305 +#: FlatCAMApp.py:6315 msgid "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." msgstr "" -#: FlatCAMApp.py:6310 FlatCAMApp.py:6351 +#: FlatCAMApp.py:6320 FlatCAMApp.py:6361 msgid "" "[ERROR_NOTCL] Failed. Only Excellon objects can be saved as Excellon files..." msgstr "" -#: FlatCAMApp.py:6318 FlatCAMApp.py:6322 +#: FlatCAMApp.py:6328 FlatCAMApp.py:6332 msgid "Save Excellon source file" msgstr "" -#: FlatCAMApp.py:6327 +#: FlatCAMApp.py:6337 msgid "[WARNING_NOTCL] Saving Excellon source file cancelled." msgstr "" -#: FlatCAMApp.py:6346 +#: FlatCAMApp.py:6356 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." msgstr "" -#: FlatCAMApp.py:6359 FlatCAMApp.py:6363 +#: FlatCAMApp.py:6369 FlatCAMApp.py:6373 msgid "Export Excellon" msgstr "" -#: FlatCAMApp.py:6368 +#: FlatCAMApp.py:6378 msgid "[WARNING_NOTCL] Export Excellon cancelled." msgstr "" -#: FlatCAMApp.py:6387 +#: FlatCAMApp.py:6397 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Gerber object to export." msgstr "" -#: FlatCAMApp.py:6400 FlatCAMApp.py:6404 +#: FlatCAMApp.py:6410 FlatCAMApp.py:6414 msgid "Export Gerber" msgstr "" -#: FlatCAMApp.py:6409 +#: FlatCAMApp.py:6419 msgid "[WARNING_NOTCL] Export Gerber cancelled." msgstr "" -#: FlatCAMApp.py:6439 +#: FlatCAMApp.py:6449 msgid "[ERROR_NOTCL] Only Geometry objects can be used." msgstr "" -#: FlatCAMApp.py:6453 FlatCAMApp.py:6457 +#: FlatCAMApp.py:6463 FlatCAMApp.py:6467 msgid "Export DXF" msgstr "" -#: FlatCAMApp.py:6463 +#: FlatCAMApp.py:6473 msgid "[WARNING_NOTCL] Export DXF cancelled." msgstr "" -#: FlatCAMApp.py:6483 FlatCAMApp.py:6486 +#: FlatCAMApp.py:6493 FlatCAMApp.py:6496 msgid "Import SVG" msgstr "" -#: FlatCAMApp.py:6495 +#: FlatCAMApp.py:6505 msgid "[WARNING_NOTCL] Open SVG cancelled." msgstr "" -#: FlatCAMApp.py:6514 FlatCAMApp.py:6518 +#: FlatCAMApp.py:6524 FlatCAMApp.py:6528 msgid "Import DXF" msgstr "" -#: FlatCAMApp.py:6527 +#: FlatCAMApp.py:6537 msgid "[WARNING_NOTCL] Open DXF cancelled." msgstr "" -#: FlatCAMApp.py:6545 +#: FlatCAMApp.py:6555 #, python-format msgid "%s" msgstr "" -#: FlatCAMApp.py:6565 +#: FlatCAMApp.py:6575 msgid "" "[WARNING_NOTCL] Select an Gerber or Excellon file to view it's source file." msgstr "" -#: FlatCAMApp.py:6572 +#: FlatCAMApp.py:6582 msgid "" "[WARNING_NOTCL] There is no selected object for which to see it's source " "file code." msgstr "" -#: FlatCAMApp.py:6580 +#: FlatCAMApp.py:6590 msgid "Source Editor" msgstr "" -#: FlatCAMApp.py:6590 +#: FlatCAMApp.py:6600 #, python-format msgid "[ERROR]App.on_view_source() -->%s" msgstr "" -#: FlatCAMApp.py:6602 FlatCAMApp.py:7744 FlatCAMObj.py:5581 +#: FlatCAMApp.py:6612 FlatCAMApp.py:7754 FlatCAMObj.py:5588 #: flatcamTools/ToolSolderPaste.py:1278 msgid "Code Editor" msgstr "" -#: FlatCAMApp.py:6614 +#: FlatCAMApp.py:6624 msgid "Script Editor" msgstr "" -#: FlatCAMApp.py:6617 +#: FlatCAMApp.py:6627 msgid "" "#\n" "# CREATE A NEW FLATCAM TCL SCRIPT\n" @@ -726,216 +726,216 @@ msgid "" "\n" msgstr "" -#: FlatCAMApp.py:6640 FlatCAMApp.py:6643 +#: FlatCAMApp.py:6650 FlatCAMApp.py:6653 msgid "Open TCL script" msgstr "" -#: FlatCAMApp.py:6651 +#: FlatCAMApp.py:6661 msgid "[WARNING_NOTCL] Open TCL script cancelled." msgstr "" -#: FlatCAMApp.py:6663 +#: FlatCAMApp.py:6673 #, python-format msgid "[ERROR]App.on_fileopenscript() -->%s" msgstr "" -#: FlatCAMApp.py:6689 FlatCAMApp.py:6692 +#: FlatCAMApp.py:6699 FlatCAMApp.py:6702 msgid "Run TCL script" msgstr "" -#: FlatCAMApp.py:6700 +#: FlatCAMApp.py:6710 msgid "[WARNING_NOTCL] Run TCL script cancelled." msgstr "" -#: FlatCAMApp.py:6750 FlatCAMApp.py:6754 +#: FlatCAMApp.py:6760 FlatCAMApp.py:6764 msgid "Save Project As ..." msgstr "" -#: FlatCAMApp.py:6751 +#: FlatCAMApp.py:6761 #, python-brace-format msgid "{l_save}/Project_{date}" msgstr "" -#: FlatCAMApp.py:6759 +#: FlatCAMApp.py:6769 msgid "[WARNING_NOTCL] Save Project cancelled." msgstr "" -#: FlatCAMApp.py:6803 +#: FlatCAMApp.py:6813 msgid "Exporting SVG" msgstr "" -#: FlatCAMApp.py:6837 FlatCAMApp.py:6943 FlatCAMApp.py:7058 +#: FlatCAMApp.py:6847 FlatCAMApp.py:6953 FlatCAMApp.py:7068 #, python-format msgid "[success] SVG file exported to %s" msgstr "" -#: FlatCAMApp.py:6868 FlatCAMApp.py:6989 +#: FlatCAMApp.py:6878 FlatCAMApp.py:6999 #, python-format msgid "[WARNING_NOTCL] No object Box. Using instead %s" msgstr "" -#: FlatCAMApp.py:6946 FlatCAMApp.py:7061 +#: FlatCAMApp.py:6956 FlatCAMApp.py:7071 msgid "Generating Film ... Please wait." msgstr "" -#: FlatCAMApp.py:7209 +#: FlatCAMApp.py:7219 #, python-format msgid "[success] Excellon file exported to %s" msgstr "" -#: FlatCAMApp.py:7216 +#: FlatCAMApp.py:7226 msgid "Exporting Excellon" msgstr "" -#: FlatCAMApp.py:7221 FlatCAMApp.py:7228 +#: FlatCAMApp.py:7231 FlatCAMApp.py:7238 msgid "[ERROR_NOTCL] Could not export Excellon file." msgstr "" -#: FlatCAMApp.py:7326 +#: FlatCAMApp.py:7336 #, python-format msgid "[success] Gerber file exported to %s" msgstr "" -#: FlatCAMApp.py:7333 +#: FlatCAMApp.py:7343 msgid "Exporting Gerber" msgstr "" -#: FlatCAMApp.py:7338 FlatCAMApp.py:7345 +#: FlatCAMApp.py:7348 FlatCAMApp.py:7355 msgid "[ERROR_NOTCL] Could not export Gerber file." msgstr "" -#: FlatCAMApp.py:7385 +#: FlatCAMApp.py:7395 #, python-format msgid "[success] DXF file exported to %s" msgstr "" -#: FlatCAMApp.py:7391 +#: FlatCAMApp.py:7401 msgid "Exporting DXF" msgstr "" -#: FlatCAMApp.py:7396 FlatCAMApp.py:7403 +#: FlatCAMApp.py:7406 FlatCAMApp.py:7413 msgid "[[WARNING_NOTCL]] Could not export DXF file." msgstr "" -#: FlatCAMApp.py:7423 FlatCAMApp.py:7465 FlatCAMApp.py:7509 +#: FlatCAMApp.py:7433 FlatCAMApp.py:7475 FlatCAMApp.py:7519 msgid "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" msgstr "" -#: FlatCAMApp.py:7433 +#: FlatCAMApp.py:7443 msgid "Importing SVG" msgstr "" -#: FlatCAMApp.py:7444 FlatCAMApp.py:7486 FlatCAMApp.py:7529 FlatCAMApp.py:7606 -#: FlatCAMApp.py:7667 FlatCAMApp.py:7730 flatcamTools/ToolPDF.py:212 +#: FlatCAMApp.py:7454 FlatCAMApp.py:7496 FlatCAMApp.py:7539 FlatCAMApp.py:7616 +#: FlatCAMApp.py:7677 FlatCAMApp.py:7740 flatcamTools/ToolPDF.py:212 #, python-format msgid "[success] Opened: %s" msgstr "" -#: FlatCAMApp.py:7475 +#: FlatCAMApp.py:7485 msgid "Importing DXF" msgstr "" -#: FlatCAMApp.py:7517 +#: FlatCAMApp.py:7527 msgid "Importing Image" msgstr "" -#: FlatCAMApp.py:7558 FlatCAMApp.py:7560 +#: FlatCAMApp.py:7568 FlatCAMApp.py:7570 #, python-format msgid "[ERROR_NOTCL] Failed to open file: %s" msgstr "" -#: FlatCAMApp.py:7563 +#: FlatCAMApp.py:7573 #, python-brace-format msgid "[ERROR_NOTCL] Failed to parse file: {name}. {error}" msgstr "" -#: FlatCAMApp.py:7570 FlatCAMObj.py:4259 +#: FlatCAMApp.py:7580 FlatCAMObj.py:4266 #: flatcamEditors/FlatCAMExcEditor.py:2077 msgid "[ERROR] An internal error has ocurred. See shell.\n" msgstr "" -#: FlatCAMApp.py:7579 +#: FlatCAMApp.py:7589 msgid "" "[ERROR_NOTCL] Object is not Gerber file or empty. Aborting object creation." msgstr "" -#: FlatCAMApp.py:7587 +#: FlatCAMApp.py:7597 msgid "Opening Gerber" msgstr "" -#: FlatCAMApp.py:7597 +#: FlatCAMApp.py:7607 msgid "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." msgstr "" -#: FlatCAMApp.py:7630 flatcamTools/ToolPcbWizard.py:421 +#: FlatCAMApp.py:7640 flatcamTools/ToolPcbWizard.py:421 msgid "[ERROR_NOTCL] This is not Excellon file." msgstr "" -#: FlatCAMApp.py:7633 +#: FlatCAMApp.py:7643 #, python-format msgid "[ERROR_NOTCL] Cannot open file: %s" msgstr "" -#: FlatCAMApp.py:7638 flatcamTools/ToolPcbWizard.py:429 +#: FlatCAMApp.py:7648 flatcamTools/ToolPcbWizard.py:429 msgid "[ERROR_NOTCL] An internal error has occurred. See shell.\n" msgstr "" -#: FlatCAMApp.py:7651 flatcamTools/ToolPDF.py:262 +#: FlatCAMApp.py:7661 flatcamTools/ToolPDF.py:262 #: flatcamTools/ToolPcbWizard.py:442 #, python-format msgid "[ERROR_NOTCL] No geometry found in file: %s" msgstr "" -#: FlatCAMApp.py:7654 +#: FlatCAMApp.py:7664 msgid "Opening Excellon." msgstr "" -#: FlatCAMApp.py:7660 +#: FlatCAMApp.py:7670 msgid "[ERROR_NOTCL] Open Excellon file failed. Probable not an Excellon file." msgstr "" -#: FlatCAMApp.py:7697 +#: FlatCAMApp.py:7707 #, python-format msgid "[ERROR_NOTCL] Failed to open %s" msgstr "" -#: FlatCAMApp.py:7707 +#: FlatCAMApp.py:7717 msgid "[ERROR_NOTCL] This is not GCODE" msgstr "" -#: FlatCAMApp.py:7713 +#: FlatCAMApp.py:7723 msgid "Opening G-Code." msgstr "" -#: FlatCAMApp.py:7721 +#: FlatCAMApp.py:7731 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:7761 +#: FlatCAMApp.py:7771 #, python-format msgid "[ERROR_NOTCL] Failed to open config file: %s" msgstr "" -#: FlatCAMApp.py:7787 FlatCAMApp.py:7804 +#: FlatCAMApp.py:7797 FlatCAMApp.py:7814 #, python-format msgid "[ERROR_NOTCL] Failed to open project file: %s" msgstr "" -#: FlatCAMApp.py:7827 +#: FlatCAMApp.py:7837 #, python-format msgid "[success] Project loaded from: %s" msgstr "" -#: FlatCAMApp.py:7932 +#: FlatCAMApp.py:7942 msgid "Available commands:\n" msgstr "" -#: FlatCAMApp.py:7934 +#: FlatCAMApp.py:7944 msgid "" "\n" "\n" @@ -943,27 +943,27 @@ msgid "" " Example: help open_gerber" msgstr "" -#: FlatCAMApp.py:8084 +#: FlatCAMApp.py:8094 msgid "Shows list of commands." msgstr "" -#: FlatCAMApp.py:8141 +#: FlatCAMApp.py:8151 msgid "[ERROR_NOTCL] Failed to load recent item list." msgstr "" -#: FlatCAMApp.py:8148 +#: FlatCAMApp.py:8158 msgid "[ERROR_NOTCL] Failed to parse recent item list." msgstr "" -#: FlatCAMApp.py:8192 +#: FlatCAMApp.py:8202 msgid "Clear Recent files" msgstr "" -#: FlatCAMApp.py:8209 flatcamGUI/FlatCAMGUI.py:968 +#: FlatCAMApp.py:8219 flatcamGUI/FlatCAMGUI.py:968 msgid "Shortcut Key List" msgstr "" -#: FlatCAMApp.py:8216 +#: FlatCAMApp.py:8226 msgid "" "\n" "

Selected Tab - Choose an Item from " @@ -1013,76 +1013,76 @@ msgid "" " " msgstr "" -#: FlatCAMApp.py:8323 +#: FlatCAMApp.py:8333 msgid "[WARNING_NOTCL] Failed checking for latest version. Could not connect." msgstr "" -#: FlatCAMApp.py:8330 +#: FlatCAMApp.py:8340 msgid "[ERROR_NOTCL] Could not parse information about latest version." msgstr "" -#: FlatCAMApp.py:8340 +#: FlatCAMApp.py:8350 msgid "[success] FlatCAM is up to date!" msgstr "" -#: FlatCAMApp.py:8345 +#: FlatCAMApp.py:8355 msgid "Newer Version Available" msgstr "" -#: FlatCAMApp.py:8346 +#: FlatCAMApp.py:8356 msgid "" "There is a newer version of FlatCAM available for download:\n" "\n" msgstr "" -#: FlatCAMApp.py:8348 +#: FlatCAMApp.py:8358 msgid "info" msgstr "" -#: FlatCAMApp.py:8367 +#: FlatCAMApp.py:8377 msgid "[success] All plots disabled." msgstr "" -#: FlatCAMApp.py:8373 +#: FlatCAMApp.py:8383 msgid "[success] All non selected plots disabled." msgstr "" -#: FlatCAMApp.py:8379 +#: FlatCAMApp.py:8389 msgid "[success] All plots enabled." msgstr "" -#: FlatCAMApp.py:8385 +#: FlatCAMApp.py:8395 msgid "[success] Selected plots enabled..." msgstr "" -#: FlatCAMApp.py:8393 +#: FlatCAMApp.py:8403 msgid "[success] Selected plots disabled..." msgstr "" -#: FlatCAMApp.py:8403 FlatCAMApp.py:8416 +#: FlatCAMApp.py:8413 FlatCAMApp.py:8426 msgid "Working ..." msgstr "" -#: FlatCAMApp.py:8450 +#: FlatCAMApp.py:8460 msgid "Saving FlatCAM Project" msgstr "" -#: FlatCAMApp.py:8471 FlatCAMApp.py:8502 +#: FlatCAMApp.py:8481 FlatCAMApp.py:8512 #, python-format msgid "[success] Project saved to: %s" msgstr "" -#: FlatCAMApp.py:8489 +#: FlatCAMApp.py:8499 #, python-format msgid "[ERROR_NOTCL] Failed to verify project file: %s. Retry to save it." msgstr "" -#: FlatCAMApp.py:8496 +#: FlatCAMApp.py:8506 #, python-format msgid "[ERROR_NOTCL] Failed to parse saved project file: %s. Retry to save it." msgstr "" -#: FlatCAMApp.py:8504 +#: FlatCAMApp.py:8514 #, python-format msgid "[ERROR_NOTCL] Failed to save project file: %s. Retry to save it." msgstr "" @@ -1092,34 +1092,34 @@ msgstr "" msgid "[success] Name changed from {old} to {new}" msgstr "" -#: FlatCAMObj.py:553 FlatCAMObj.py:2035 FlatCAMObj.py:3301 FlatCAMObj.py:5478 +#: FlatCAMObj.py:553 FlatCAMObj.py:2034 FlatCAMObj.py:3300 FlatCAMObj.py:5485 msgid "Basic" msgstr "" -#: FlatCAMObj.py:565 FlatCAMObj.py:2051 FlatCAMObj.py:3323 FlatCAMObj.py:5484 +#: FlatCAMObj.py:565 FlatCAMObj.py:2050 FlatCAMObj.py:3322 FlatCAMObj.py:5491 msgid "Advanced" msgstr "" -#: FlatCAMObj.py:928 FlatCAMObj.py:983 +#: FlatCAMObj.py:927 FlatCAMObj.py:982 #, python-format msgid "[success] Isolation geometry created: %s" msgstr "" -#: FlatCAMObj.py:1162 +#: FlatCAMObj.py:1161 msgid "Plotting Apertures" msgstr "" -#: FlatCAMObj.py:1878 flatcamEditors/FlatCAMExcEditor.py:1368 +#: FlatCAMObj.py:1877 flatcamEditors/FlatCAMExcEditor.py:1368 msgid "Total Drills" msgstr "" -#: FlatCAMObj.py:1904 flatcamEditors/FlatCAMExcEditor.py:1400 +#: FlatCAMObj.py:1903 flatcamEditors/FlatCAMExcEditor.py:1400 msgid "Total Slots" msgstr "" -#: FlatCAMObj.py:2107 FlatCAMObj.py:3375 FlatCAMObj.py:3675 FlatCAMObj.py:3862 -#: FlatCAMObj.py:3875 FlatCAMObj.py:3992 FlatCAMObj.py:4409 FlatCAMObj.py:4647 -#: FlatCAMObj.py:5060 flatcamEditors/FlatCAMExcEditor.py:1474 +#: FlatCAMObj.py:2106 FlatCAMObj.py:3374 FlatCAMObj.py:3674 FlatCAMObj.py:3869 +#: FlatCAMObj.py:3882 FlatCAMObj.py:3999 FlatCAMObj.py:4416 FlatCAMObj.py:4654 +#: FlatCAMObj.py:5067 flatcamEditors/FlatCAMExcEditor.py:1474 #: flatcamTools/ToolCalculators.py:307 flatcamTools/ToolCalculators.py:318 #: flatcamTools/ToolCalculators.py:330 flatcamTools/ToolCalculators.py:345 #: flatcamTools/ToolCalculators.py:358 flatcamTools/ToolCalculators.py:372 @@ -1138,21 +1138,21 @@ msgstr "" msgid "[ERROR_NOTCL] Wrong value format entered, use a number." msgstr "" -#: FlatCAMObj.py:2331 FlatCAMObj.py:2423 FlatCAMObj.py:2546 +#: FlatCAMObj.py:2330 FlatCAMObj.py:2422 FlatCAMObj.py:2545 msgid "" "[ERROR_NOTCL] Please select one or more tools from the list and try again." msgstr "" -#: FlatCAMObj.py:2338 +#: FlatCAMObj.py:2337 msgid "" "[ERROR_NOTCL] Milling tool for DRILLS is larger than hole size. Cancelled." msgstr "" -#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 +#: FlatCAMObj.py:2351 FlatCAMObj.py:2446 FlatCAMObj.py:2565 msgid "Tool_nr" msgstr "" -#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 +#: FlatCAMObj.py:2351 FlatCAMObj.py:2446 FlatCAMObj.py:2565 #: flatcamEditors/FlatCAMExcEditor.py:819 #: flatcamEditors/FlatCAMExcEditor.py:2020 flatcamGUI/ObjectUI.py:556 #: flatcamTools/ToolNonCopperClear.py:83 flatcamTools/ToolPaint.py:80 @@ -1160,36 +1160,36 @@ msgstr "" msgid "Diameter" msgstr "" -#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 +#: FlatCAMObj.py:2351 FlatCAMObj.py:2446 FlatCAMObj.py:2565 msgid "Drills_Nr" msgstr "" -#: FlatCAMObj.py:2352 FlatCAMObj.py:2447 FlatCAMObj.py:2566 +#: FlatCAMObj.py:2351 FlatCAMObj.py:2446 FlatCAMObj.py:2565 msgid "Slots_Nr" msgstr "" -#: FlatCAMObj.py:2433 +#: FlatCAMObj.py:2432 msgid "" "[ERROR_NOTCL] Milling tool for SLOTS is larger than hole size. Cancelled." msgstr "" -#: FlatCAMObj.py:2608 FlatCAMObj.py:4297 FlatCAMObj.py:4513 FlatCAMObj.py:4830 +#: FlatCAMObj.py:2607 FlatCAMObj.py:4304 FlatCAMObj.py:4520 FlatCAMObj.py:4837 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"z_pdepth\"] or self." "options[\"z_pdepth\"]" msgstr "" -#: FlatCAMObj.py:2620 FlatCAMObj.py:4309 FlatCAMObj.py:4525 FlatCAMObj.py:4842 +#: FlatCAMObj.py:2619 FlatCAMObj.py:4316 FlatCAMObj.py:4532 FlatCAMObj.py:4849 msgid "" "[ERROR_NOTCL] Wrong value format for self.defaults[\"feedrate_probe\"] or " "self.options[\"feedrate_probe\"]" msgstr "" -#: FlatCAMObj.py:2652 FlatCAMObj.py:4718 FlatCAMObj.py:4723 FlatCAMObj.py:4873 +#: FlatCAMObj.py:2651 FlatCAMObj.py:4725 FlatCAMObj.py:4730 FlatCAMObj.py:4880 msgid "Generating CNC Code" msgstr "" -#: FlatCAMObj.py:2678 FlatCAMObj.py:5019 camlib.py:5167 camlib.py:5626 +#: FlatCAMObj.py:2677 FlatCAMObj.py:5026 camlib.py:5167 camlib.py:5626 #: camlib.py:5889 msgid "" "[ERROR]The Toolchange X,Y field in Edit -> Preferences has to be in the " @@ -1197,154 +1197,154 @@ msgid "" "but now there is only one value, not two. " msgstr "" -#: FlatCAMObj.py:2998 FlatCAMObj.py:3918 FlatCAMObj.py:3919 FlatCAMObj.py:3928 +#: FlatCAMObj.py:2997 FlatCAMObj.py:3925 FlatCAMObj.py:3926 FlatCAMObj.py:3935 msgid "Iso" msgstr "" -#: FlatCAMObj.py:2998 FlatCAMObj.py:3258 FlatCAMObj.py:3540 +#: FlatCAMObj.py:2997 FlatCAMObj.py:3257 FlatCAMObj.py:3539 msgid "Rough" msgstr "" -#: FlatCAMObj.py:2998 +#: FlatCAMObj.py:2997 msgid "Finish" msgstr "" -#: FlatCAMObj.py:3294 flatcamGUI/FlatCAMGUI.py:526 flatcamGUI/FlatCAMGUI.py:722 +#: FlatCAMObj.py:3293 flatcamGUI/FlatCAMGUI.py:526 flatcamGUI/FlatCAMGUI.py:722 #: flatcamGUI/FlatCAMGUI.py:1615 flatcamGUI/FlatCAMGUI.py:1951 #: flatcamGUI/ObjectUI.py:999 msgid "Copy" msgstr "" -#: FlatCAMObj.py:3510 +#: FlatCAMObj.py:3509 msgid "[ERROR_NOTCL] Please enter the desired tool diameter in Float format." msgstr "" -#: FlatCAMObj.py:3585 +#: FlatCAMObj.py:3584 msgid "[success] Tool added in Tool Table." msgstr "" -#: FlatCAMObj.py:3590 +#: FlatCAMObj.py:3589 msgid "[ERROR_NOTCL] Default Tool added. Wrong value format entered." msgstr "" -#: FlatCAMObj.py:3620 FlatCAMObj.py:3630 +#: FlatCAMObj.py:3619 FlatCAMObj.py:3629 msgid "[WARNING_NOTCL] Failed. Select a tool to copy." msgstr "" -#: FlatCAMObj.py:3659 +#: FlatCAMObj.py:3658 msgid "[success] Tool was copied in Tool Table." msgstr "" -#: FlatCAMObj.py:3692 +#: FlatCAMObj.py:3691 msgid "[success] Tool was edited in Tool Table." msgstr "" -#: FlatCAMObj.py:3723 FlatCAMObj.py:3733 +#: FlatCAMObj.py:3722 FlatCAMObj.py:3732 msgid "[WARNING_NOTCL] Failed. Select a tool to delete." msgstr "" -#: FlatCAMObj.py:3757 +#: FlatCAMObj.py:3756 msgid "[success] Tool was deleted in Tool Table." msgstr "" -#: FlatCAMObj.py:4178 +#: FlatCAMObj.py:4185 #, python-format msgid "" "[WARNING_NOTCL] This Geometry can't be processed because it is %s geometry." msgstr "" -#: FlatCAMObj.py:4195 +#: FlatCAMObj.py:4202 msgid "[ERROR_NOTCL] Wrong Tool Dia value format entered, use a number." msgstr "" -#: FlatCAMObj.py:4222 +#: FlatCAMObj.py:4229 msgid "[ERROR_NOTCL] Failed. No tool selected in the tool table ..." msgstr "" -#: FlatCAMObj.py:4260 +#: FlatCAMObj.py:4267 #, python-format msgid "FlatCAMObj.FlatCAMGeometry.mtool_gen_cncjob() --> %s" msgstr "" -#: FlatCAMObj.py:4418 FlatCAMObj.py:4656 +#: FlatCAMObj.py:4425 FlatCAMObj.py:4663 msgid "" "[WARNING] Tool Offset is selected in Tool Table but no value is provided.\n" "Add a Tool Offset or change the Offset Type." msgstr "" -#: FlatCAMObj.py:4537 flatcamTools/ToolSolderPaste.py:1107 +#: FlatCAMObj.py:4544 flatcamTools/ToolSolderPaste.py:1107 #: flatcamTools/ToolSolderPaste.py:1162 msgid "[ERROR_NOTCL] Cancelled. Empty file, it has no geometry..." msgstr "" -#: FlatCAMObj.py:4906 FlatCAMObj.py:4916 camlib.py:3348 camlib.py:3357 +#: FlatCAMObj.py:4913 FlatCAMObj.py:4923 camlib.py:3348 camlib.py:3357 msgid "[ERROR_NOTCL] Scale factor has to be a number: integer or float." msgstr "" -#: FlatCAMObj.py:4954 +#: FlatCAMObj.py:4961 msgid "[success] Geometry Scale done." msgstr "" -#: FlatCAMObj.py:4971 camlib.py:3426 +#: FlatCAMObj.py:4978 camlib.py:3426 msgid "" "[ERROR_NOTCL] An (x,y) pair of values are needed. Probable you entered only " "one value in the Offset field." msgstr "" -#: FlatCAMObj.py:4991 +#: FlatCAMObj.py:4998 msgid "[success] Geometry Offset done." msgstr "" -#: FlatCAMObj.py:5546 FlatCAMObj.py:5551 flatcamTools/ToolSolderPaste.py:1361 +#: FlatCAMObj.py:5553 FlatCAMObj.py:5558 flatcamTools/ToolSolderPaste.py:1361 msgid "Export Machine Code ..." msgstr "" -#: FlatCAMObj.py:5557 flatcamTools/ToolSolderPaste.py:1364 +#: FlatCAMObj.py:5564 flatcamTools/ToolSolderPaste.py:1364 msgid "[WARNING_NOTCL] Export Machine Code cancelled ..." msgstr "" -#: FlatCAMObj.py:5570 +#: FlatCAMObj.py:5577 #, python-format msgid "[success] Machine Code file saved to: %s" msgstr "" -#: FlatCAMObj.py:5592 +#: FlatCAMObj.py:5599 #, python-format msgid "[ERROR]FlatCAMCNNJob.on_edit_code_click() -->%s" msgstr "" -#: FlatCAMObj.py:5709 +#: FlatCAMObj.py:5716 #, python-format msgid "" "[WARNING_NOTCL] This CNCJob object can't be processed because it is a %s " "CNCJob object." msgstr "" -#: FlatCAMObj.py:5762 +#: FlatCAMObj.py:5769 msgid "[ERROR_NOTCL] G-code does not have a units code: either G20 or G21" msgstr "" -#: FlatCAMObj.py:5775 +#: FlatCAMObj.py:5782 msgid "" "[ERROR_NOTCL] Cancelled. The Toolchange Custom code is enabled but it's " "empty." msgstr "" -#: FlatCAMObj.py:5782 +#: FlatCAMObj.py:5789 msgid "[success] Toolchange G-code was replaced by a custom code." msgstr "" -#: FlatCAMObj.py:5797 flatcamTools/ToolSolderPaste.py:1390 +#: FlatCAMObj.py:5804 flatcamTools/ToolSolderPaste.py:1390 msgid "[WARNING_NOTCL] No such file or directory" msgstr "" -#: FlatCAMObj.py:5817 FlatCAMObj.py:5829 +#: FlatCAMObj.py:5824 FlatCAMObj.py:5836 msgid "" "[WARNING_NOTCL] The used postprocessor file has to have in it's name: " "'toolchange_custom'" msgstr "" -#: FlatCAMObj.py:5835 +#: FlatCAMObj.py:5842 msgid "[ERROR] There is no postprocessor file." msgstr "" @@ -9137,11 +9137,11 @@ msgstr "" msgid "[ERROR_NOTCL] PaintTool.paint_poly() --> %s" msgstr "" -#: flatcamTools/ToolPaint.py:970 flatcamTools/ToolPaint.py:1263 +#: flatcamTools/ToolPaint.py:970 flatcamTools/ToolPaint.py:1267 msgid "Polygon Paint started ..." msgstr "" -#: flatcamTools/ToolPaint.py:1119 flatcamTools/ToolPaint.py:1208 +#: flatcamTools/ToolPaint.py:1123 flatcamTools/ToolPaint.py:1212 #, python-format msgid "" "[ERROR] Could not do Paint All. Try a different combination of parameters. " @@ -9149,7 +9149,7 @@ msgid "" "%s" msgstr "" -#: flatcamTools/ToolPaint.py:1143 +#: flatcamTools/ToolPaint.py:1147 msgid "" "[ERROR] There is no Painting Geometry in the file.\n" "Usually it means that the tool diameter is too big for the painted " @@ -9157,11 +9157,11 @@ msgid "" "Change the painting parameters and try again." msgstr "" -#: flatcamTools/ToolPaint.py:1152 +#: flatcamTools/ToolPaint.py:1156 msgid "[success] Paint All Done." msgstr "" -#: flatcamTools/ToolPaint.py:1238 +#: flatcamTools/ToolPaint.py:1242 msgid "" "[ERROR_NOTCL] There is no Painting Geometry in the file.\n" "Usually it means that the tool diameter is too big for the painted " @@ -9169,7 +9169,7 @@ msgid "" "Change the painting parameters and try again." msgstr "" -#: flatcamTools/ToolPaint.py:1247 +#: flatcamTools/ToolPaint.py:1251 msgid "[success] Paint All with Rest-Machining done." msgstr "" From 429753d211a0101dd670ad0bf8caacf2899d791b Mon Sep 17 00:00:00 2001 From: Marius Stanciu Date: Sun, 23 Jun 2019 00:04:49 +0300 Subject: [PATCH 14/15] - fixes issues with units conversion when the tool diameters are a list of comma separated values (NCC Tool, SolderPaste Tool and Geometry Object) - fixed a "typo" kind of bug in SolderPaste Tool - RELEASE 8.919 --- FlatCAMApp.py | 135 ++++++-- README.md | 7 +- camlib.py | 4 +- flatcamGUI/FlatCAMGUI.py | 4 +- flatcamGUI/GUIElements.py | 29 +- flatcamTools/ToolNonCopperClear.py | 2 +- flatcamTools/ToolSolderPaste.py | 2 +- locale/de/LC_MESSAGES/strings.mo | Bin 305239 -> 305239 bytes locale/de/LC_MESSAGES/strings.po | 440 +++++++++++++------------- locale/en/LC_MESSAGES/strings.mo | Bin 284579 -> 284579 bytes locale/en/LC_MESSAGES/strings.po | 440 +++++++++++++------------- locale/ro/LC_MESSAGES/strings.mo | Bin 303587 -> 303587 bytes locale/ro/LC_MESSAGES/strings.po | 440 +++++++++++++------------- locale/ru/LC_MESSAGES/strings.mo | Bin 192759 -> 197596 bytes locale/ru/LC_MESSAGES/strings.po | 486 +++++++++++++++-------------- locale_template/strings.pot | 438 +++++++++++++------------- 16 files changed, 1280 insertions(+), 1147 deletions(-) diff --git a/FlatCAMApp.py b/FlatCAMApp.py index 4e2cb6e6..4ea30787 100644 --- a/FlatCAMApp.py +++ b/FlatCAMApp.py @@ -95,7 +95,7 @@ class App(QtCore.QObject): # Version version = 8.919 - version_date = "2019/06/22" + version_date = "2019/06/23" beta = True # current date now @@ -780,7 +780,7 @@ class App(QtCore.QObject): # Geometry General "geometry_plot": True, "geometry_circle_steps": 128, - "geometry_cnctooldia": 0.016, + "geometry_cnctooldia": "0.016", # Geometry Options "geometry_cutz": -0.002, @@ -2059,9 +2059,9 @@ class App(QtCore.QObject): except Exception as e: log.debug("App.defaults_read_form() --> %s" % str(e)) - def defaults_write_form(self, factor=None): + def defaults_write_form(self, factor=None, fl_units=None): for option in self.defaults: - self.defaults_write_form_field(option, factor=factor) + self.defaults_write_form_field(option, factor=factor, units=fl_units) # try: # self.defaults_form_fields[option].set_value(self.defaults[option]) # except KeyError: @@ -2069,12 +2069,22 @@ class App(QtCore.QObject): # # TODO: Rethink this? # pass - def defaults_write_form_field(self, field, factor=None): + def defaults_write_form_field(self, field, factor=None, units=None): try: if factor is None: - self.defaults_form_fields[field].set_value(self.defaults[field]) + if units is None: + self.defaults_form_fields[field].set_value(self.defaults[field]) + elif units == 'IN' and (field == 'global_gridx' or field == 'global_gridy'): + self.defaults_form_fields[field].set_value(self.defaults[field], decimals=6) + elif units == 'MM' and (field == 'global_gridx' or field == 'global_gridy'): + self.defaults_form_fields[field].set_value(self.defaults[field], decimals=4) else: - self.defaults_form_fields[field].set_value(self.defaults[field] * factor) + if units is None: + self.defaults_form_fields[field].set_value(self.defaults[field] * factor) + elif units == 'IN' and (field == 'global_gridx' or field == 'global_gridy'): + self.defaults_form_fields[field].set_value((self.defaults[field] * factor), decimals=6) + elif units == 'MM' and (field == 'global_gridx' or field == 'global_gridy'): + self.defaults_form_fields[field].set_value((self.defaults[field] * factor), decimals=4) except KeyError: # self.log.debug("defaults_write_form(): No field for: %s" % option) # TODO: Rethink this? @@ -3679,28 +3689,59 @@ class App(QtCore.QObject): coords_xy[1] *= sfactor self.options['geometry_toolchangexy'] = "%f, %f" % (coords_xy[0], coords_xy[1]) elif dim == 'geometry_cnctooldia': + tools_diameters = [] + try: + tools_string = self.defaults["geometry_cnctooldia"].split(",") + tools_diameters = [eval(a) for a in tools_string if a != ''] + except Exception as e: + log.debug("App.on_toggle_units().scale_options() --> %s" % str(e)) + self.options['geometry_cnctooldia'] = '' - tools_diameters = [float(eval(a)) for a in self.defaults["geometry_cnctooldia"].split(",")] for t in range(len(tools_diameters)): tools_diameters[t] *= sfactor - self.options['geometry_cnctooldia'] += "%f, " % tools_diameters[t] + self.options['geometry_cnctooldia'] += "%f," % tools_diameters[t] elif dim == 'tools_ncctools': + ncctools = [] + try: + tools_string = self.defaults["tools_ncctools"].split(",") + ncctools = [eval(a) for a in tools_string if a != ''] + except Exception as e: + log.debug("App.on_toggle_units().scale_options() --> %s" % str(e)) + self.options['tools_ncctools'] = '' - ncctols = [float(eval(a)) for a in self.defaults["tools_ncctools"].split(",")] - for t in range(len(ncctols)): - ncctols[t] *= sfactor - self.options['tools_ncctools'] += "%f, " % ncctols[t] + for t in range(len(ncctools)): + ncctools[t] *= sfactor + self.options['tools_ncctools'] += "%f," % ncctools[t] elif dim == 'tools_solderpaste_tools': + sptools = [] + try: + tools_string = self.defaults["tools_solderpaste_tools"].split(",") + sptools = [eval(a) for a in tools_string if a != ''] + except Exception as e: + log.debug("App.on_toggle_units().scale_options() --> %s" % str(e)) + self.options['tools_solderpaste_tools'] = "" - sp_tools = [float(eval(a)) for a in self.defaults["tools_solderpaste_tools"].split(",")] - for t in range(len(sp_tools)): - sp_tools[t] *= sfactor - self.options['tools_solderpaste_tools'] = "%f, " % sp_tools[t] + for t in range(len(sptools)): + sptools[t] *= sfactor + self.options['tools_solderpaste_tools'] += "%f," % sptools[t] elif dim == 'tools_solderpaste_xy_toolchange': sp_coords = [float(eval(a)) for a in self.defaults["tools_solderpaste_xy_toolchange"].split(",")] sp_coords[0] *= sfactor sp_coords[1] *= sfactor self.options['tools_solderpaste_xy_toolchange'] = "%f, %f" % (sp_coords[0], sp_coords[1]) + elif dim == 'global_gridx' or dim == 'global_gridy': + if new_units == 'IN': + try: + val = float(self.defaults[dim]) * sfactor + self.options[dim] = float('%.6f' % val) + except Exception as e: + log.debug('App.on_toggle_units().scale_defaults() --> %s' % str(e)) + else: + try: + val = float(self.defaults[dim]) * sfactor + self.options[dim] = float('%.4f' % val) + except Exception as e: + log.debug('App.on_toggle_units().scale_defaults() --> %s' % str(e)) else: try: self.options[dim] = float(self.options[dim]) * sfactor @@ -3720,28 +3761,59 @@ class App(QtCore.QObject): coords_xy[1] *= sfactor self.defaults['geometry_toolchangexy'] = "%.4f, %.4f" % (coords_xy[0], coords_xy[1]) elif dim == 'geometry_cnctooldia': + tools_diameters = [] + try: + tools_string = self.defaults["geometry_cnctooldia"].split(",") + tools_diameters = [eval(a) for a in tools_string if a != ''] + except Exception as e: + log.debug("App.on_toggle_units().scale_options() --> %s" % str(e)) + self.defaults['geometry_cnctooldia'] = '' - tools_diameters = [float(eval(a)) for a in self.defaults["geometry_cnctooldia"].split(",")] for t in range(len(tools_diameters)): tools_diameters[t] *= sfactor - self.defaults['geometry_cnctooldia'] += "%.4f, " % tools_diameters[t] + self.defaults['geometry_cnctooldia'] += "%.4f," % tools_diameters[t] elif dim == 'tools_ncctools': + ncctools = [] + try: + tools_string = self.defaults["tools_ncctools"].split(",") + ncctools = [eval(a) for a in tools_string if a != ''] + except Exception as e: + log.debug("App.on_toggle_units().scale_options() --> %s" % str(e)) + self.defaults['tools_ncctools'] = '' - ncctols = [float(eval(a)) for a in self.defaults["tools_ncctools"].split(",")] - for t in range(len(ncctols)): - ncctols[t] *= sfactor - self.defaults['tools_ncctools'] += "%.4f, " % ncctols[t] + for t in range(len(ncctools)): + ncctools[t] *= sfactor + self.defaults['tools_ncctools'] += "%.4f," % ncctools[t] elif dim == 'tools_solderpaste_tools': + sptools = [] + try: + tools_string = self.defaults["tools_solderpaste_tools"].split(",") + sptools = [eval(a) for a in tools_string if a != ''] + except Exception as e: + log.debug("App.on_toggle_units().scale_options() --> %s" % str(e)) + self.defaults['tools_solderpaste_tools'] = "" - sp_tools = [float(eval(a)) for a in self.defaults["tools_solderpaste_tools"].split(",")] - for t in range(len(sp_tools)): - sp_tools[t] *= sfactor - self.defaults['tools_solderpaste_tools'] = "%.4f, " % sp_tools[t] + for t in range(len(sptools)): + sptools[t] *= sfactor + self.defaults['tools_solderpaste_tools'] += "%.4f," % sptools[t] elif dim == 'tools_solderpaste_xy_toolchange': sp_coords = [float(eval(a)) for a in self.defaults["tools_solderpaste_xy_toolchange"].split(",")] sp_coords[0] *= sfactor sp_coords[1] *= sfactor self.defaults['tools_solderpaste_xy_toolchange'] = "%.4f, %.4f" % (sp_coords[0], sp_coords[1]) + elif dim == 'global_gridx' or dim == 'global_gridy': + if new_units == 'IN': + try: + val = float(self.defaults[dim]) * sfactor + self.defaults[dim] = float('%.6f' % val) + except Exception as e: + log.debug('App.on_toggle_units().scale_defaults() --> %s' % str(e)) + else: + try: + val = float(self.defaults[dim]) * sfactor + self.defaults[dim] = float('%.4f' % val) + except Exception as e: + log.debug('App.on_toggle_units().scale_defaults() --> %s' % str(e)) else: try: self.defaults[dim] = float(self.defaults[dim]) * sfactor @@ -3775,7 +3847,7 @@ class App(QtCore.QObject): self.defaults_read_form() scale_defaults(factor) - self.defaults_write_form() + self.defaults_write_form(fl_units=new_units) self.should_we_save = True @@ -3791,9 +3863,8 @@ class App(QtCore.QObject): val_y = float(self.ui.grid_gap_y_entry.get_value()) * factor self.ui.grid_gap_y_entry.set_value(val_y, decimals=dec) - units = self.ui.general_defaults_form.general_app_group.units_radio.get_value().upper() for obj in self.collection.get_list(): - obj.convert_units(units) + obj.convert_units(new_units) # make that the properties stored in the object are also updated self.object_changed.emit(obj) @@ -3806,9 +3877,9 @@ class App(QtCore.QObject): current.to_form() self.plot_all() - self.inform.emit(_("[success] Converted units to %s") % units) + self.inform.emit(_("[success] Converted units to %s") % new_units) # self.ui.units_label.setText("[" + self.options["units"] + "]") - self.set_screen_units(units) + self.set_screen_units(new_units) else: # Undo toggling self.toggle_units_ignore = True diff --git a/README.md b/README.md index 57e5c9b3..f5e299c7 100644 --- a/README.md +++ b/README.md @@ -9,6 +9,12 @@ CAD program, and create G-Code for Isolation routing. ================================================= +23.06.2019 + +- fixes issues with units conversion when the tool diameters are a list of comma separated values (NCC Tool, SolderPaste Tool and Geometry Object) +- fixed a "typo" kind of bug in SolderPaste Tool +- RELEASE 8.919 + 22.06.2019 - some GUI layout optimizations in Edit -> Preferences @@ -28,7 +34,6 @@ CAD program, and create G-Code for Isolation routing. - optimized the toggle of annotations; now there is no need to replot the entire CNCJob object too on toggling of the annotations - on toggling off the plot visibility the annotations are turned off too - updated translations; Russian translation at 76% (using Yandex translator engine - needs verification by a native speaker of Russian) -- RELEASE 8.919 20.06.2019 diff --git a/camlib.py b/camlib.py index 90a7edf0..47d787e7 100644 --- a/camlib.py +++ b/camlib.py @@ -6142,7 +6142,7 @@ class CNCjob(Geometry): gcode += self.doformat(p.down_z_start_code) gcode += self.doformat(p.spindle_fwd_code) # Start dispensing gcode += self.doformat(p.dwell_fwd_code) - gcode += self.doformat(p.z_feedrate_dispense_code) + gcode += self.doformat(p.feedrate_z_dispense_code) gcode += self.doformat(p.lift_z_dispense_code) gcode += self.doformat(p.feedrate_xy_code) @@ -6161,7 +6161,7 @@ class CNCjob(Geometry): elif type(geometry) == Point: gcode += self.doformat(p.linear_code, x=path[0][0], y=path[0][1]) # Move to first point - gcode += self.doformat(p.z_feedrate_dispense_code) + gcode += self.doformat(p.feedrate_z_dispense_code) gcode += self.doformat(p.down_z_start_code) gcode += self.doformat(p.spindle_fwd_code) # Start dispensing gcode += self.doformat(p.dwell_fwd_code) diff --git a/flatcamGUI/FlatCAMGUI.py b/flatcamGUI/FlatCAMGUI.py index 5fd94b51..51feb37f 100644 --- a/flatcamGUI/FlatCAMGUI.py +++ b/flatcamGUI/FlatCAMGUI.py @@ -3330,14 +3330,14 @@ class GeneralGUIPrefGroupUI(OptionsGroupUI): self.gridx_label.setToolTip( _("This is the Grid snap value on X axis.") ) - self.gridx_entry = LengthEntry() + self.gridx_entry = FCEntry3() # Grid Y Entry self.gridy_label = QtWidgets.QLabel(_('Grid Y value:')) self.gridy_label.setToolTip( _("This is the Grid snap value on Y axis.") ) - self.gridy_entry = LengthEntry() + self.gridy_entry = FCEntry3() # Snap Max Entry self.snap_max_label = QtWidgets.QLabel(_('Snap Max:')) diff --git a/flatcamGUI/GUIElements.py b/flatcamGUI/GUIElements.py index d39206da..ea306902 100644 --- a/flatcamGUI/GUIElements.py +++ b/flatcamGUI/GUIElements.py @@ -190,7 +190,7 @@ class LengthEntry(QtWidgets.QLineEdit): units = raw[-2:] units = self.scales[self.output_units][units.upper()] value = raw[:-2] - return float(eval(value))*units + return float(eval(value))* units except IndexError: value = raw return float(eval(value)) @@ -399,6 +399,33 @@ class FCEntry2(FCEntry): self.setText('%.*f' % (decimals, fval)) +class FCEntry3(FCEntry): + def __init__(self, parent=None): + super(FCEntry3, self).__init__(parent) + self.readyToEdit = True + self.editingFinished.connect(self.on_edit_finished) + + def on_edit_finished(self): + self.clearFocus() + + def set_value(self, val, decimals=4): + try: + fval = float(val) + except ValueError: + return + + self.setText('%.*f' % (decimals, fval)) + + def get_value(self): + value = str(self.text()).strip(' ') + + try: + return float(eval(value)) + except Exception as e: + log.warning("Could not parse value in entry: %s" % str(e)) + return None + + class EvalEntry(QtWidgets.QLineEdit): def __init__(self, parent=None): super(EvalEntry, self).__init__(parent) diff --git a/flatcamTools/ToolNonCopperClear.py b/flatcamTools/ToolNonCopperClear.py index ed284394..24734e4a 100644 --- a/flatcamTools/ToolNonCopperClear.py +++ b/flatcamTools/ToolNonCopperClear.py @@ -343,7 +343,7 @@ class NonCopperClear(FlatCAMTool, Gerber): }) try: - dias = [float(eval(dia)) for dia in self.app.defaults["tools_ncctools"].split(",")] + dias = [float(eval(dia)) for dia in self.app.defaults["tools_ncctools"].split(",") if dia != ''] except: log.error("At least one tool diameter needed. Verify in Edit -> Preferences -> TOOLS -> NCC Tools.") return diff --git a/flatcamTools/ToolSolderPaste.py b/flatcamTools/ToolSolderPaste.py index 6be3bfd4..7f4b5e3e 100644 --- a/flatcamTools/ToolSolderPaste.py +++ b/flatcamTools/ToolSolderPaste.py @@ -482,7 +482,7 @@ class SolderPaste(FlatCAMTool): self.on_tool_delete(rows_to_delete=None, all=None), icon=QtGui.QIcon("share/delete32.png")) try: - dias = [float(eval(dia)) for dia in self.app.defaults["tools_solderpaste_tools"].split(",")] + dias = [float(eval(dia)) for dia in self.app.defaults["tools_solderpaste_tools"].split(",") if dia != ''] except: log.error("At least one Nozzle tool diameter needed. " "Verify in Edit -> Preferences -> TOOLS -> Solder Paste Tools.") diff --git a/locale/de/LC_MESSAGES/strings.mo b/locale/de/LC_MESSAGES/strings.mo index be2fc0e0f5f81ab35e76d24ba00591025a052225..edb7af4ed461226761c7cc47fd0c4010b353b839 100644 GIT binary patch delta 42 tcmcb9LFoDgp@tU5ElknnEXG!*X4B)#nN+~6_V#inAZFg)Ue0pC002|E4-)_Y delta 42 tcmcb9LFoDgp@tU5ElknnEQVGFM$_ZVnN+~6_V#inAZFg)Ue0pC002?!4*dWC diff --git a/locale/de/LC_MESSAGES/strings.po b/locale/de/LC_MESSAGES/strings.po index 8bafb3c7..4ced4b88 100644 --- a/locale/de/LC_MESSAGES/strings.po +++ b/locale/de/LC_MESSAGES/strings.po @@ -1,8 +1,8 @@ msgid "" msgstr "" "Project-Id-Version: \n" -"POT-Creation-Date: 2019-06-22 21:02+0300\n" -"PO-Revision-Date: 2019-06-22 21:02+0300\n" +"POT-Creation-Date: 2019-06-22 23:56+0300\n" +"PO-Revision-Date: 2019-06-22 23:56+0300\n" "Last-Translator: \n" "Language-Team: \n" "Language: de\n" @@ -36,13 +36,13 @@ msgstr "Open Config-Datei ist fehlgeschlagen." msgid "Open Script file failed." msgstr "Open Script-Datei ist fehlgeschlagen." -#: FlatCAMApp.py:2234 +#: FlatCAMApp.py:2244 msgid "[WARNING_NOTCL] Select a Geometry, Gerber or Excellon Object to edit." msgstr "" "[WARNING_NOTCL] Wählen Sie ein zu bearbeitendes Geometrie-, Gerber- oder " "Excellon-Objekt aus." -#: FlatCAMApp.py:2244 +#: FlatCAMApp.py:2254 msgid "" "[WARNING_NOTCL] Simultanoeus editing of tools geometry in a MultiGeo " "Geometry is not possible.\n" @@ -52,98 +52,98 @@ msgstr "" "Multi-Geo-Geometrie ist nicht möglich.\n" "Bearbeiten Sie jeweils nur eine Geometrie." -#: FlatCAMApp.py:2299 +#: FlatCAMApp.py:2309 msgid "[WARNING_NOTCL] Editor is activated ..." msgstr "[WARNING_NOTCL] Editor ist aktiviert ..." -#: FlatCAMApp.py:2317 +#: FlatCAMApp.py:2327 msgid "Do you want to save the edited object?" msgstr "Möchten Sie das bearbeitete Objekt speichern?" -#: FlatCAMApp.py:2318 flatcamGUI/FlatCAMGUI.py:1618 +#: FlatCAMApp.py:2328 flatcamGUI/FlatCAMGUI.py:1618 msgid "Close Editor" msgstr "Editor schließen" -#: FlatCAMApp.py:2321 FlatCAMApp.py:3413 FlatCAMApp.py:5918 +#: FlatCAMApp.py:2331 FlatCAMApp.py:3423 FlatCAMApp.py:5989 #: FlatCAMTranslation.py:89 flatcamGUI/FlatCAMGUI.py:3730 msgid "Yes" msgstr "Ja" -#: FlatCAMApp.py:2322 FlatCAMApp.py:3414 FlatCAMApp.py:5919 +#: FlatCAMApp.py:2332 FlatCAMApp.py:3424 FlatCAMApp.py:5990 #: FlatCAMTranslation.py:90 flatcamGUI/FlatCAMGUI.py:3731 msgid "No" msgstr "Nein" -#: FlatCAMApp.py:2323 FlatCAMApp.py:3415 FlatCAMApp.py:3764 FlatCAMApp.py:5920 +#: FlatCAMApp.py:2333 FlatCAMApp.py:3425 FlatCAMApp.py:3836 FlatCAMApp.py:5991 msgid "Cancel" msgstr "Kündigen" -#: FlatCAMApp.py:2350 +#: FlatCAMApp.py:2360 msgid "[WARNING] Object empty after edit." msgstr "[WARNING] Das Objekt ist nach der Bearbeitung leer." -#: FlatCAMApp.py:2372 FlatCAMApp.py:2391 FlatCAMApp.py:2403 +#: FlatCAMApp.py:2382 FlatCAMApp.py:2401 FlatCAMApp.py:2413 msgid "[WARNING_NOTCL] Select a Gerber, Geometry or Excellon Object to update." msgstr "" "[WARNING_NOTCL] Wählen Sie ein Gerber-, Geometrie- oder Excellon-Objekt zum " "Aktualisieren aus." -#: FlatCAMApp.py:2375 +#: FlatCAMApp.py:2385 #, python-format msgid "[selected] %s is updated, returning to App..." msgstr "[selected] %s wird aktualisiert und kehrt zur App zurück ..." -#: FlatCAMApp.py:2740 +#: FlatCAMApp.py:2750 msgid "[ERROR] Could not load defaults file." msgstr "[ERROR] Standarddatei konnte nicht geladen werden." -#: FlatCAMApp.py:2752 +#: FlatCAMApp.py:2762 msgid "[ERROR] Failed to parse defaults file." msgstr "[ERROR] Fehler beim Parsen der Standarddatei." -#: FlatCAMApp.py:2773 FlatCAMApp.py:2777 +#: FlatCAMApp.py:2783 FlatCAMApp.py:2787 msgid "Import FlatCAM Preferences" msgstr "FlatCAM-Voreinstellungen importieren" -#: FlatCAMApp.py:2783 +#: FlatCAMApp.py:2793 msgid "[WARNING_NOTCL] FlatCAM preferences import cancelled." msgstr "[WARNING_NOTCL] Import der FlatCAM-Einstellungen wurde abgebrochen." -#: FlatCAMApp.py:2791 FlatCAMApp.py:2845 FlatCAMApp.py:3292 +#: FlatCAMApp.py:2801 FlatCAMApp.py:2855 FlatCAMApp.py:3302 msgid "[ERROR_NOTCL] Could not load defaults file." msgstr "[ERROR_NOTCL] Standarddatei konnte nicht geladen werden." -#: FlatCAMApp.py:2799 FlatCAMApp.py:3301 +#: FlatCAMApp.py:2809 FlatCAMApp.py:3311 msgid "[ERROR_NOTCL] Failed to parse defaults file." msgstr "[ERROR_NOTCL] Fehler beim Parsen der Standarddatei." -#: FlatCAMApp.py:2802 +#: FlatCAMApp.py:2812 #, python-format msgid "[success] Imported Defaults from %s" msgstr "[success] Importierte Standardwerte aus %s" -#: FlatCAMApp.py:2817 FlatCAMApp.py:2822 +#: FlatCAMApp.py:2827 FlatCAMApp.py:2832 msgid "Export FlatCAM Preferences" msgstr "FlatCAM-Voreinstellungen exportieren" -#: FlatCAMApp.py:2829 +#: FlatCAMApp.py:2839 msgid "[WARNING_NOTCL] FlatCAM preferences export cancelled." msgstr "[WARNING_NOTCL] Export der FlatCAM-Einstellungen wurde abgebrochen." -#: FlatCAMApp.py:2864 FlatCAMApp.py:3346 +#: FlatCAMApp.py:2874 FlatCAMApp.py:3356 msgid "[ERROR_NOTCL] Failed to write defaults to file." msgstr "[ERROR_NOTCL] Fehler beim Schreiben der Standardwerte in die Datei." -#: FlatCAMApp.py:2917 +#: FlatCAMApp.py:2927 msgid "[ERROR_NOTCL] Failed to open recent files file for writing." msgstr "" "[ERROR_NOTCL] Fehler beim Öffnen der zuletzt geöffneten Datei zum Schreiben." -#: FlatCAMApp.py:2994 camlib.py:4457 +#: FlatCAMApp.py:3004 camlib.py:4457 msgid "[ERROR_NOTCL] An internal error has ocurred. See shell.\n" msgstr "[ERROR_NOTCL] Ein interner Fehler ist aufgetreten. Siehe Shell.\n" -#: FlatCAMApp.py:2995 +#: FlatCAMApp.py:3005 #, python-brace-format msgid "" "Object ({kind}) failed because: {error} \n" @@ -152,11 +152,11 @@ msgstr "" "Objekt ({kind}) gescheitert weil: {error} \n" "\n" -#: FlatCAMApp.py:3015 +#: FlatCAMApp.py:3025 msgid "Converting units to " msgstr "Einheiten in umrechnen " -#: FlatCAMApp.py:3094 FlatCAMApp.py:3097 FlatCAMApp.py:3100 FlatCAMApp.py:3103 +#: FlatCAMApp.py:3104 FlatCAMApp.py:3107 FlatCAMApp.py:3110 FlatCAMApp.py:3113 #, python-brace-format msgid "" "[selected] {kind} created/selected: {name}{name}" "" -#: FlatCAMApp.py:3197 +#: FlatCAMApp.py:3207 #, python-brace-format msgid "" "FlatCAM
Version {version} {beta} ({date}) - " @@ -188,32 +188,32 @@ msgstr "" "org/jpcgt/flatcam/src/Beta/\">hier.
DOWNLOAD-Bereich hier.
" -#: FlatCAMApp.py:3350 +#: FlatCAMApp.py:3360 msgid "[success] Defaults saved." msgstr "[success] Standardeinstellungen gespeichert." -#: FlatCAMApp.py:3371 +#: FlatCAMApp.py:3381 msgid "[ERROR_NOTCL] Could not load factory defaults file." msgstr "[ERROR_NOTCL] Factory-Standarddatei konnte nicht geladen werden." -#: FlatCAMApp.py:3380 +#: FlatCAMApp.py:3390 msgid "[ERROR_NOTCL] Failed to parse factory defaults file." msgstr "[ERROR_NOTCL] Fehler beim Parsen der Werksvorgaben-Datei." -#: FlatCAMApp.py:3394 +#: FlatCAMApp.py:3404 msgid "[ERROR_NOTCL] Failed to write factory defaults to file." msgstr "" "[ERROR_NOTCL] Fehler beim Schreiben der Werkseinstellungen in die Datei." -#: FlatCAMApp.py:3398 +#: FlatCAMApp.py:3408 msgid "Factory defaults saved." msgstr "Werkseinstellungen gespeichert." -#: FlatCAMApp.py:3403 flatcamGUI/FlatCAMGUI.py:3106 +#: FlatCAMApp.py:3413 flatcamGUI/FlatCAMGUI.py:3106 msgid "[WARNING_NOTCL] Application is saving the project. Please wait ..." msgstr "[WARNING_NOTCL] Anwendung speichert das Projekt. Warten Sie mal ..." -#: FlatCAMApp.py:3408 +#: FlatCAMApp.py:3418 msgid "" "There are files/objects modified in FlatCAM. \n" "Do you want to Save the project?" @@ -221,11 +221,11 @@ msgstr "" "In FlatCAM wurden Dateien / Objekte geändert.\n" "Möchten Sie das Projekt speichern?" -#: FlatCAMApp.py:3411 FlatCAMApp.py:5916 +#: FlatCAMApp.py:3421 FlatCAMApp.py:5987 msgid "Save changes" msgstr "Änderungen speichern" -#: FlatCAMApp.py:3478 +#: FlatCAMApp.py:3488 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 " @@ -243,73 +243,73 @@ msgstr "" "und das Ergebnis entspricht möglicherweise nicht dem, was erwartet wurde.\n" "Überprüfen Sie den generierten GCODE." -#: FlatCAMApp.py:3519 +#: FlatCAMApp.py:3529 msgid "[ERROR_NOTCL] Failed. Excellon joining works only on Excellon objects." msgstr "" "[ERROR_NOTCL] Gescheitert. Die Verbindung von Excellon funktioniert nur bei " "Excellon-Objekten." -#: FlatCAMApp.py:3541 +#: FlatCAMApp.py:3551 msgid "[ERROR_NOTCL] Failed. Gerber joining works only on Gerber objects." msgstr "" "[ERROR_NOTCL] Gescheitert. Das Gerber-Verbinden funktioniert nur bei Gerber-" "Objekten." -#: FlatCAMApp.py:3556 FlatCAMApp.py:3581 +#: FlatCAMApp.py:3566 FlatCAMApp.py:3591 msgid "[ERROR_NOTCL] Failed. Select a Geometry Object and try again." msgstr "" "[ERROR_NOTCL] Gescheitert. Wählen Sie ein Geometrieobjekt aus und versuchen " "Sie es erneut." -#: FlatCAMApp.py:3560 FlatCAMApp.py:3585 +#: FlatCAMApp.py:3570 FlatCAMApp.py:3595 #, python-format msgid "[ERROR_NOTCL] Expected a FlatCAMGeometry, got %s" msgstr "[ERROR_NOTCL] Erwartete eine FlatCAMGeometry, bekam % s" -#: FlatCAMApp.py:3573 +#: FlatCAMApp.py:3583 msgid "[success] A Geometry object was converted to MultiGeo type." msgstr "[success] Ein Geometrieobjekt wurde in den MultiGeo-Typ konvertiert." -#: FlatCAMApp.py:3599 +#: FlatCAMApp.py:3609 msgid "[success] A Geometry object was converted to SingleGeo type." msgstr "[success] Ein Geometrieobjekt wurde in den SingleGeo-Typ konvertiert." -#: FlatCAMApp.py:3763 FlatCAMApp.py:4603 FlatCAMApp.py:6191 FlatCAMApp.py:6202 -#: FlatCAMApp.py:6442 FlatCAMApp.py:6452 +#: FlatCAMApp.py:3835 FlatCAMApp.py:4674 FlatCAMApp.py:6262 FlatCAMApp.py:6273 +#: FlatCAMApp.py:6513 FlatCAMApp.py:6523 msgid "Ok" msgstr "Ok" -#: FlatCAMApp.py:3809 +#: FlatCAMApp.py:3880 #, python-format msgid "[success] Converted units to %s" msgstr "[success] Einheiten in umgerechnet %s" -#: FlatCAMApp.py:3820 +#: FlatCAMApp.py:3891 msgid "[WARNING_NOTCL] Units conversion cancelled." msgstr "[WARNING_NOTCL] Einheitenumrechnung abgebrochen." -#: FlatCAMApp.py:4472 +#: FlatCAMApp.py:4543 msgid "Open file" msgstr "Datei öffnen" -#: FlatCAMApp.py:4503 FlatCAMApp.py:4508 +#: FlatCAMApp.py:4574 FlatCAMApp.py:4579 msgid "Export G-Code ..." msgstr "G-Code exportieren ..." -#: FlatCAMApp.py:4511 +#: FlatCAMApp.py:4582 msgid "[WARNING_NOTCL] Export Code cancelled." msgstr "[WARNING_NOTCL] Exportcode wurde abgebrochen." -#: FlatCAMApp.py:4521 +#: FlatCAMApp.py:4592 msgid "[WARNING] No such file or directory" msgstr "[WARNING] Keine solche Datei oder Ordner" -#: FlatCAMApp.py:4528 +#: FlatCAMApp.py:4599 #, python-format msgid "Saved to: %s" msgstr "Gespeichert in: %s" -#: FlatCAMApp.py:4591 FlatCAMApp.py:4624 FlatCAMApp.py:4635 FlatCAMApp.py:4646 +#: FlatCAMApp.py:4662 FlatCAMApp.py:4695 FlatCAMApp.py:4706 FlatCAMApp.py:4717 #: flatcamTools/ToolNonCopperClear.py:489 flatcamTools/ToolSolderPaste.py:765 msgid "" "[WARNING_NOTCL] Please enter a tool diameter with non-zero value, in Float " @@ -318,12 +318,12 @@ msgstr "" "[WARNING_NOTCL] Bitte geben Sie einen Werkzeugdurchmesser mit einem Wert " "ungleich Null im Float-Format ein." -#: FlatCAMApp.py:4596 FlatCAMApp.py:4629 FlatCAMApp.py:4640 FlatCAMApp.py:4651 +#: FlatCAMApp.py:4667 FlatCAMApp.py:4700 FlatCAMApp.py:4711 FlatCAMApp.py:4722 #: flatcamGUI/FlatCAMGUI.py:3001 msgid "[WARNING_NOTCL] Adding Tool cancelled ..." msgstr "[WARNING_NOTCL] Addierwerkzeug abgebrochen ..." -#: FlatCAMApp.py:4599 +#: FlatCAMApp.py:4670 msgid "" "Adding Tool works only when Advanced is checked.\n" "Go to Preferences -> General - Show Advanced Options." @@ -332,35 +332,35 @@ msgstr "" "ist.\n" "Gehen Sie zu Einstellungen -> Allgemein - Erweiterte Optionen anzeigen." -#: FlatCAMApp.py:4712 +#: FlatCAMApp.py:4783 msgid "Object(s) deleted ..." msgstr "Objekt (e) gelöscht ..." -#: FlatCAMApp.py:4716 +#: FlatCAMApp.py:4787 msgid "Failed. No object(s) selected..." msgstr "Gescheitert. Kein Objekt ausgewählt ..." -#: FlatCAMApp.py:4718 +#: FlatCAMApp.py:4789 msgid "Save the work in Editor and try again ..." msgstr "Speichern Sie die Arbeit im Editor und versuchen Sie es erneut ..." -#: FlatCAMApp.py:4731 +#: FlatCAMApp.py:4802 msgid "Click to set the origin ..." msgstr "Klicken Sie hier, um den Ursprung festzulegen ..." -#: FlatCAMApp.py:4743 +#: FlatCAMApp.py:4814 msgid "Jump to ..." msgstr "Springen zu ..." -#: FlatCAMApp.py:4744 +#: FlatCAMApp.py:4815 msgid "Enter the coordinates in format X,Y:" msgstr "Geben Sie die Koordinaten im Format X, Y ein:" -#: FlatCAMApp.py:4751 +#: FlatCAMApp.py:4822 msgid "Wrong coordinates. Enter coordinates in format: X,Y" msgstr "Falsche Koordinaten. Koordinaten im Format eingeben: X, Y" -#: FlatCAMApp.py:4769 flatcamEditors/FlatCAMExcEditor.py:2320 +#: FlatCAMApp.py:4840 flatcamEditors/FlatCAMExcEditor.py:2320 #: flatcamEditors/FlatCAMExcEditor.py:2327 #: flatcamEditors/FlatCAMGeoEditor.py:3648 #: flatcamEditors/FlatCAMGeoEditor.py:3662 @@ -374,91 +374,91 @@ msgstr "Falsche Koordinaten. Koordinaten im Format eingeben: X, Y" msgid "[success] Done." msgstr "[success] Erledigt." -#: FlatCAMApp.py:4901 FlatCAMApp.py:4968 +#: FlatCAMApp.py:4972 FlatCAMApp.py:5039 msgid "[WARNING_NOTCL] No object is selected. Select an object and try again." msgstr "" "[WARNING_NOTCL] Es ist kein Objekt ausgewählt. Wählen Sie ein Objekt und " "versuchen Sie es erneut." -#: FlatCAMApp.py:5009 +#: FlatCAMApp.py:5080 msgid "[success] Origin set ..." msgstr "[success] Ursprung gesetzt ..." -#: FlatCAMApp.py:5029 +#: FlatCAMApp.py:5100 msgid "Preferences" msgstr "Einstellungen" -#: FlatCAMApp.py:5049 +#: FlatCAMApp.py:5120 msgid "[WARNING_NOTCL] No object selected to Flip on Y axis." msgstr "[WARNING_NOTCL] Kein Objekt ausgewählt, um auf der Y-Achse zu kippen." -#: FlatCAMApp.py:5074 +#: FlatCAMApp.py:5145 msgid "[success] Flip on Y axis done." msgstr "[success] Y-Achse umdrehen fertig." -#: FlatCAMApp.py:5076 FlatCAMApp.py:5116 +#: FlatCAMApp.py:5147 FlatCAMApp.py:5187 #: flatcamEditors/FlatCAMGeoEditor.py:1355 #: flatcamEditors/FlatCAMGrbEditor.py:5343 flatcamTools/ToolTransform.py:748 #, python-format msgid "[ERROR_NOTCL] Due of %s, Flip action was not executed." msgstr "[ERROR_NOTCL] Aufgrund von %s wurde die Flip-Aktion nicht ausgeführt." -#: FlatCAMApp.py:5089 +#: FlatCAMApp.py:5160 msgid "[WARNING_NOTCL] No object selected to Flip on X axis." msgstr "[WARNING_NOTCL] Kein Objekt ausgewählt, um auf der X-Achse zu kippen." -#: FlatCAMApp.py:5114 +#: FlatCAMApp.py:5185 msgid "[success] Flip on X axis done." msgstr "[success] Dreh auf der X-Achse fertig." -#: FlatCAMApp.py:5129 +#: FlatCAMApp.py:5200 msgid "[WARNING_NOTCL] No object selected to Rotate." msgstr "[WARNING_NOTCL] Kein Objekt zum Drehen ausgewählt." -#: FlatCAMApp.py:5132 FlatCAMApp.py:5177 FlatCAMApp.py:5208 +#: FlatCAMApp.py:5203 FlatCAMApp.py:5248 FlatCAMApp.py:5279 msgid "Transform" msgstr "Verwandeln" -#: FlatCAMApp.py:5132 FlatCAMApp.py:5177 FlatCAMApp.py:5208 +#: FlatCAMApp.py:5203 FlatCAMApp.py:5248 FlatCAMApp.py:5279 msgid "Enter the Angle value:" msgstr "Geben Sie den Winkelwert ein:" -#: FlatCAMApp.py:5162 +#: FlatCAMApp.py:5233 msgid "[success] Rotation done." msgstr "[success] Rotation erfolgt." -#: FlatCAMApp.py:5164 flatcamEditors/FlatCAMGeoEditor.py:1298 +#: FlatCAMApp.py:5235 flatcamEditors/FlatCAMGeoEditor.py:1298 #: flatcamEditors/FlatCAMGrbEditor.py:5272 flatcamTools/ToolTransform.py:677 #, python-format msgid "[ERROR_NOTCL] Due of %s, rotation movement was not executed." msgstr "" "[ERROR_NOTCL] Aufgrund von %s wurde keine Rotationsbewegung ausgeführt." -#: FlatCAMApp.py:5175 +#: FlatCAMApp.py:5246 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on X axis." msgstr "" "[WARNING_NOTCL] Kein Objekt für Neigung / Scherung auf der X-Achse " "ausgewählt." -#: FlatCAMApp.py:5196 +#: FlatCAMApp.py:5267 msgid "[success] Skew on X axis done." msgstr "[success] Neigung auf der X-Achse fertig." -#: FlatCAMApp.py:5206 +#: FlatCAMApp.py:5277 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on Y axis." msgstr "" "[WARNING_NOTCL] Kein Objekt für Neigung / Scherung auf der Y-Achse " "ausgewählt." -#: FlatCAMApp.py:5227 +#: FlatCAMApp.py:5298 msgid "[success] Skew on Y axis done." msgstr "[success] Neigung auf der Y-Achse fertig." -#: FlatCAMApp.py:5297 +#: FlatCAMApp.py:5368 msgid "Grid On/Off" msgstr "Raster ein/aus" -#: FlatCAMApp.py:5310 flatcamEditors/FlatCAMGeoEditor.py:937 +#: FlatCAMApp.py:5381 flatcamEditors/FlatCAMGeoEditor.py:937 #: flatcamEditors/FlatCAMGrbEditor.py:2381 #: flatcamEditors/FlatCAMGrbEditor.py:4861 flatcamGUI/ObjectUI.py:991 #: flatcamTools/ToolDblSided.py:160 flatcamTools/ToolDblSided.py:208 @@ -468,7 +468,7 @@ msgstr "Raster ein/aus" msgid "Add" msgstr "Hinzufügen" -#: FlatCAMApp.py:5311 FlatCAMObj.py:3295 +#: FlatCAMApp.py:5382 FlatCAMObj.py:3295 #: flatcamEditors/FlatCAMGrbEditor.py:2386 flatcamGUI/FlatCAMGUI.py:527 #: flatcamGUI/FlatCAMGUI.py:724 flatcamGUI/FlatCAMGUI.py:1616 #: flatcamGUI/FlatCAMGUI.py:1953 flatcamGUI/ObjectUI.py:1007 @@ -477,15 +477,15 @@ msgstr "Hinzufügen" msgid "Delete" msgstr "Löschen" -#: FlatCAMApp.py:5324 +#: FlatCAMApp.py:5395 msgid "New Grid ..." msgstr "Neues Raster ..." -#: FlatCAMApp.py:5325 +#: FlatCAMApp.py:5396 msgid "Enter a Grid Value:" msgstr "Geben Sie einen Rasterwert ein:" -#: FlatCAMApp.py:5333 FlatCAMApp.py:5360 +#: FlatCAMApp.py:5404 FlatCAMApp.py:5431 msgid "" "[WARNING_NOTCL] Please enter a grid value with non-zero value, in Float " "format." @@ -493,52 +493,52 @@ msgstr "" "[WARNING_NOTCL] Bitte geben Sie im Float-Format einen Rasterwert mit einem " "Wert ungleich Null ein." -#: FlatCAMApp.py:5339 +#: FlatCAMApp.py:5410 msgid "[success] New Grid added ..." msgstr "[success] Neues Netz hinzugefügt ..." -#: FlatCAMApp.py:5342 +#: FlatCAMApp.py:5413 msgid "[WARNING_NOTCL] Grid already exists ..." msgstr "[WARNING_NOTCL] Netz existiert bereits ..." -#: FlatCAMApp.py:5345 +#: FlatCAMApp.py:5416 msgid "[WARNING_NOTCL] Adding New Grid cancelled ..." msgstr "[WARNING_NOTCL] Neues Netz wurde abgebrochen ..." -#: FlatCAMApp.py:5367 +#: FlatCAMApp.py:5438 msgid "[ERROR_NOTCL] Grid Value does not exist ..." msgstr "[ERROR_NOTCL] Rasterwert existiert nicht ..." -#: FlatCAMApp.py:5370 +#: FlatCAMApp.py:5441 msgid "[success] Grid Value deleted ..." msgstr "[success] Rasterwert gelöscht ..." -#: FlatCAMApp.py:5373 +#: FlatCAMApp.py:5444 msgid "[WARNING_NOTCL] Delete Grid value cancelled ..." msgstr "[WARNING_NOTCL] Rasterwert löschen abgebrochen ..." -#: FlatCAMApp.py:5412 +#: FlatCAMApp.py:5483 msgid "[WARNING_NOTCL] No object selected to copy it's name" msgstr "[WARNING_NOTCL] Kein Objekt zum Kopieren des Namens ausgewählt" -#: FlatCAMApp.py:5416 +#: FlatCAMApp.py:5487 msgid "Name copied on clipboard ..." msgstr "Name in Zwischenablage kopiert ..." -#: FlatCAMApp.py:5458 flatcamEditors/FlatCAMGrbEditor.py:3901 +#: FlatCAMApp.py:5529 flatcamEditors/FlatCAMGrbEditor.py:3901 msgid "[success] Coordinates copied to clipboard." msgstr "[success] Koordinaten in die Zwischenablage kopiert." -#: FlatCAMApp.py:5714 FlatCAMApp.py:5717 FlatCAMApp.py:5720 FlatCAMApp.py:5723 -#: FlatCAMApp.py:5738 FlatCAMApp.py:5741 FlatCAMApp.py:5744 FlatCAMApp.py:5747 -#: FlatCAMApp.py:5787 FlatCAMApp.py:5790 FlatCAMApp.py:5793 FlatCAMApp.py:5796 +#: FlatCAMApp.py:5785 FlatCAMApp.py:5788 FlatCAMApp.py:5791 FlatCAMApp.py:5794 +#: FlatCAMApp.py:5809 FlatCAMApp.py:5812 FlatCAMApp.py:5815 FlatCAMApp.py:5818 +#: FlatCAMApp.py:5858 FlatCAMApp.py:5861 FlatCAMApp.py:5864 FlatCAMApp.py:5867 #: ObjectCollection.py:719 ObjectCollection.py:722 ObjectCollection.py:725 #: ObjectCollection.py:728 #, python-brace-format msgid "[selected]{name} selected" msgstr "[selected]{name} ausgewählt" -#: FlatCAMApp.py:5913 +#: FlatCAMApp.py:5984 msgid "" "There are files/objects opened in FlatCAM.\n" "Creating a New project will delete them.\n" @@ -548,112 +548,112 @@ msgstr "" "Wenn Sie ein neues Projekt erstellen, werden diese gelöscht.\n" "Möchten Sie das Projekt speichern?" -#: FlatCAMApp.py:5934 +#: FlatCAMApp.py:6005 msgid "[success] New Project created..." msgstr "[success] Neues Projekt erstellt ..." -#: FlatCAMApp.py:6050 FlatCAMApp.py:6053 flatcamGUI/FlatCAMGUI.py:608 +#: FlatCAMApp.py:6121 FlatCAMApp.py:6124 flatcamGUI/FlatCAMGUI.py:608 #: flatcamGUI/FlatCAMGUI.py:1832 msgid "Open Gerber" msgstr "Gerber öffnen" -#: FlatCAMApp.py:6058 +#: FlatCAMApp.py:6129 msgid "[WARNING_NOTCL] Open Gerber cancelled." msgstr "[WARNING_NOTCL] Offener Gerber abgebrochen." -#: FlatCAMApp.py:6079 FlatCAMApp.py:6082 flatcamGUI/FlatCAMGUI.py:609 +#: FlatCAMApp.py:6150 FlatCAMApp.py:6153 flatcamGUI/FlatCAMGUI.py:609 #: flatcamGUI/FlatCAMGUI.py:1833 msgid "Open Excellon" msgstr "Excellon öffnen" -#: FlatCAMApp.py:6087 +#: FlatCAMApp.py:6158 msgid "[WARNING_NOTCL] Open Excellon cancelled." msgstr "[WARNING_NOTCL] Offener Excellon abgebrochen." -#: FlatCAMApp.py:6109 FlatCAMApp.py:6112 +#: FlatCAMApp.py:6180 FlatCAMApp.py:6183 msgid "Open G-Code" msgstr "G-Code öffnen" -#: FlatCAMApp.py:6117 +#: FlatCAMApp.py:6188 msgid "[WARNING_NOTCL] Open G-Code cancelled." msgstr "[WARNING_NOTCL] Geöffneter G-Code wurde abgebrochen." -#: FlatCAMApp.py:6135 FlatCAMApp.py:6138 +#: FlatCAMApp.py:6206 FlatCAMApp.py:6209 msgid "Open Project" msgstr "Offenes Projekt" -#: FlatCAMApp.py:6146 +#: FlatCAMApp.py:6217 msgid "[WARNING_NOTCL] Open Project cancelled." msgstr "[WARNING_NOTCL] Projekt abbrechen abgebrochen." -#: FlatCAMApp.py:6165 FlatCAMApp.py:6168 +#: FlatCAMApp.py:6236 FlatCAMApp.py:6239 msgid "Open Configuration File" msgstr "Offene Einstellungsdatei" -#: FlatCAMApp.py:6172 +#: FlatCAMApp.py:6243 msgid "[WARNING_NOTCL] Open Config cancelled." msgstr "[WARNING_NOTCL] Offene Konfiguration abgebrochen." -#: FlatCAMApp.py:6187 FlatCAMApp.py:6438 FlatCAMApp.py:8591 FlatCAMApp.py:8611 -#: FlatCAMApp.py:8632 FlatCAMApp.py:8654 +#: FlatCAMApp.py:6258 FlatCAMApp.py:6509 FlatCAMApp.py:8662 FlatCAMApp.py:8682 +#: FlatCAMApp.py:8703 FlatCAMApp.py:8725 msgid "[WARNING_NOTCL] No object selected." msgstr "[WARNING_NOTCL] Kein Objekt ausgewählt" -#: FlatCAMApp.py:6188 FlatCAMApp.py:6439 +#: FlatCAMApp.py:6259 FlatCAMApp.py:6510 msgid "Please Select a Geometry object to export" msgstr "Bitte wählen Sie ein Geometrieobjekt zum Exportieren aus" -#: FlatCAMApp.py:6199 +#: FlatCAMApp.py:6270 msgid "[ERROR_NOTCL] Only Geometry, Gerber and CNCJob objects can be used." msgstr "" "[ERROR_NOTCL] Es können nur Geometrie-, Gerber- und CNCJob-Objekte verwendet " "werden." -#: FlatCAMApp.py:6212 FlatCAMApp.py:6216 +#: FlatCAMApp.py:6283 FlatCAMApp.py:6287 msgid "Export SVG" msgstr "SVG exportieren" -#: FlatCAMApp.py:6221 +#: FlatCAMApp.py:6292 msgid "[WARNING_NOTCL] Export SVG cancelled." msgstr "[WARNING_NOTCL] Export SVG abgebrochen." -#: FlatCAMApp.py:6240 +#: FlatCAMApp.py:6311 msgid "[[WARNING_NOTCL]] Data must be a 3D array with last dimension 3 or 4" msgstr "" "[WARNING_NOTCL] Daten müssen ein 3D-Array mit der letzten Dimension 3 oder 4 " "sein" -#: FlatCAMApp.py:6246 FlatCAMApp.py:6250 +#: FlatCAMApp.py:6317 FlatCAMApp.py:6321 msgid "Export PNG Image" msgstr "PNG-Bild exportieren" -#: FlatCAMApp.py:6255 +#: FlatCAMApp.py:6326 msgid "Export PNG cancelled." msgstr "Export PNG abgebrochen." -#: FlatCAMApp.py:6274 +#: FlatCAMApp.py:6345 msgid "" "[WARNING_NOTCL] No object selected. Please select an Gerber object to export." msgstr "" "[WARNING_NOTCL] Kein Objekt ausgewählt. Bitte wählen Sie ein Gerber-Objekt " "aus, das Sie exportieren möchten." -#: FlatCAMApp.py:6279 FlatCAMApp.py:6402 +#: FlatCAMApp.py:6350 FlatCAMApp.py:6473 msgid "" "[ERROR_NOTCL] Failed. Only Gerber objects can be saved as Gerber files..." msgstr "" "[ERROR_NOTCL] Fehlgeschlagen. Nur Gerber-Objekte können als Gerber-Dateien " "gespeichert werden ..." -#: FlatCAMApp.py:6291 +#: FlatCAMApp.py:6362 msgid "Save Gerber source file" msgstr "Gerber-Quelldatei speichern" -#: FlatCAMApp.py:6296 +#: FlatCAMApp.py:6367 msgid "[WARNING_NOTCL] Save Gerber source file cancelled." msgstr "[WARNING_NOTCL] Gerber Quelldatei speichern abgebrochen." -#: FlatCAMApp.py:6315 +#: FlatCAMApp.py:6386 msgid "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." @@ -661,22 +661,22 @@ msgstr "" "[WARNING_NOTCL] Kein Objekt ausgewählt Bitte wählen Sie ein Excellon-Objekt " "zum Exportieren aus." -#: FlatCAMApp.py:6320 FlatCAMApp.py:6361 +#: FlatCAMApp.py:6391 FlatCAMApp.py:6432 msgid "" "[ERROR_NOTCL] Failed. Only Excellon objects can be saved as Excellon files..." msgstr "" "[ERROR_NOTCL] Fehlgeschlagen. Nur Excellon-Objekte können als Excellon-" "Dateien gespeichert werden ..." -#: FlatCAMApp.py:6328 FlatCAMApp.py:6332 +#: FlatCAMApp.py:6399 FlatCAMApp.py:6403 msgid "Save Excellon source file" msgstr "Speichern Sie die Excellon-Quelldatei" -#: FlatCAMApp.py:6337 +#: FlatCAMApp.py:6408 msgid "[WARNING_NOTCL] Saving Excellon source file cancelled." msgstr "[WARNING_NOTCL] Speichern der Excellon-Quelldatei abgebrochen." -#: FlatCAMApp.py:6356 +#: FlatCAMApp.py:6427 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." @@ -684,70 +684,70 @@ msgstr "" "[WARNING_NOTCL] Kein Objekt ausgewählt. Bitte wählen Sie ein Excellon-Objekt " "aus, das Sie exportieren möchten." -#: FlatCAMApp.py:6369 FlatCAMApp.py:6373 +#: FlatCAMApp.py:6440 FlatCAMApp.py:6444 msgid "Export Excellon" msgstr "Excellon exportieren" -#: FlatCAMApp.py:6378 +#: FlatCAMApp.py:6449 msgid "[WARNING_NOTCL] Export Excellon cancelled." msgstr "[WARNING_NOTCL] Export Excellon wurde abgebrochen." -#: FlatCAMApp.py:6397 +#: FlatCAMApp.py:6468 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Gerber object to export." msgstr "" "[WARNING_NOTCL] Kein Objekt ausgewählt. Bitte wählen Sie ein Gerber-Objekt " "aus, das Sie exportieren möchten." -#: FlatCAMApp.py:6410 FlatCAMApp.py:6414 +#: FlatCAMApp.py:6481 FlatCAMApp.py:6485 msgid "Export Gerber" msgstr "Gerber exportieren" -#: FlatCAMApp.py:6419 +#: FlatCAMApp.py:6490 msgid "[WARNING_NOTCL] Export Gerber cancelled." msgstr "[WARNING_NOTCL] Export Gerber abgebrochen." -#: FlatCAMApp.py:6449 +#: FlatCAMApp.py:6520 msgid "[ERROR_NOTCL] Only Geometry objects can be used." msgstr "[ERROR_NOTCL] Es können nur Geometrieobjekte verwendet werden." -#: FlatCAMApp.py:6463 FlatCAMApp.py:6467 +#: FlatCAMApp.py:6534 FlatCAMApp.py:6538 msgid "Export DXF" msgstr "DXF exportieren" -#: FlatCAMApp.py:6473 +#: FlatCAMApp.py:6544 msgid "[WARNING_NOTCL] Export DXF cancelled." msgstr "[WARNING_NOTCL] Export DXF wurde abgebrochen." -#: FlatCAMApp.py:6493 FlatCAMApp.py:6496 +#: FlatCAMApp.py:6564 FlatCAMApp.py:6567 msgid "Import SVG" msgstr "SVG importieren" -#: FlatCAMApp.py:6505 +#: FlatCAMApp.py:6576 msgid "[WARNING_NOTCL] Open SVG cancelled." msgstr "[WARNING_NOTCL] Open SVG abgebrochen." -#: FlatCAMApp.py:6524 FlatCAMApp.py:6528 +#: FlatCAMApp.py:6595 FlatCAMApp.py:6599 msgid "Import DXF" msgstr "Importieren Sie DXF" -#: FlatCAMApp.py:6537 +#: FlatCAMApp.py:6608 msgid "[WARNING_NOTCL] Open DXF cancelled." msgstr "[WARNING_NOTCL] Open DXF cancelled." -#: FlatCAMApp.py:6555 +#: FlatCAMApp.py:6626 #, python-format msgid "%s" msgstr "%s" -#: FlatCAMApp.py:6575 +#: FlatCAMApp.py:6646 msgid "" "[WARNING_NOTCL] Select an Gerber or Excellon file to view it's source file." msgstr "" "[WARNING_NOTCL] Wählen Sie eine Gerber- oder Excellon-Datei aus, um die " "Quelldatei anzuzeigen." -#: FlatCAMApp.py:6582 +#: FlatCAMApp.py:6653 msgid "" "[WARNING_NOTCL] There is no selected object for which to see it's source " "file code." @@ -755,25 +755,25 @@ msgstr "" "[WARNING_NOTCL] Es gibt kein ausgewähltes Objekt, für das man seinen " "Quelldateien sehen kann." -#: FlatCAMApp.py:6590 +#: FlatCAMApp.py:6661 msgid "Source Editor" msgstr "Quelleditor" -#: FlatCAMApp.py:6600 +#: FlatCAMApp.py:6671 #, python-format msgid "[ERROR]App.on_view_source() -->%s" msgstr "[ERROR]App.on_view_source() -->%s" -#: FlatCAMApp.py:6612 FlatCAMApp.py:7754 FlatCAMObj.py:5588 +#: FlatCAMApp.py:6683 FlatCAMApp.py:7825 FlatCAMObj.py:5588 #: flatcamTools/ToolSolderPaste.py:1278 msgid "Code Editor" msgstr "Code-Editor" -#: FlatCAMApp.py:6624 +#: FlatCAMApp.py:6695 msgid "Script Editor" msgstr "Script Editor" -#: FlatCAMApp.py:6627 +#: FlatCAMApp.py:6698 msgid "" "#\n" "# CREATE A NEW FLATCAM TCL SCRIPT\n" @@ -817,98 +817,98 @@ msgstr "" "#\n" "\n" -#: FlatCAMApp.py:6650 FlatCAMApp.py:6653 +#: FlatCAMApp.py:6721 FlatCAMApp.py:6724 msgid "Open TCL script" msgstr "Öffnen Sie das TCL-Skript" -#: FlatCAMApp.py:6661 +#: FlatCAMApp.py:6732 msgid "[WARNING_NOTCL] Open TCL script cancelled." msgstr "[WARNING_NOTCL] Open TCL-Skript wurde abgebrochen." -#: FlatCAMApp.py:6673 +#: FlatCAMApp.py:6744 #, python-format msgid "[ERROR]App.on_fileopenscript() -->%s" msgstr "[ERROR]App.on_fileopenscript() -->%s" -#: FlatCAMApp.py:6699 FlatCAMApp.py:6702 +#: FlatCAMApp.py:6770 FlatCAMApp.py:6773 msgid "Run TCL script" msgstr "Führen Sie das TCL-Skript aus" -#: FlatCAMApp.py:6710 +#: FlatCAMApp.py:6781 msgid "[WARNING_NOTCL] Run TCL script cancelled." msgstr "[WARNING_NOTCL] Das TCL-Skript wird abgebrochen." -#: FlatCAMApp.py:6760 FlatCAMApp.py:6764 +#: FlatCAMApp.py:6831 FlatCAMApp.py:6835 msgid "Save Project As ..." msgstr "Projekt speichern als ..." -#: FlatCAMApp.py:6761 +#: FlatCAMApp.py:6832 #, python-brace-format msgid "{l_save}/Project_{date}" msgstr "{l_save}/Projekt_{date}" -#: FlatCAMApp.py:6769 +#: FlatCAMApp.py:6840 msgid "[WARNING_NOTCL] Save Project cancelled." msgstr "[WARNING_NOTCL] Projekt speichern abgebrochen" -#: FlatCAMApp.py:6813 +#: FlatCAMApp.py:6884 msgid "Exporting SVG" msgstr "SVG exportieren" -#: FlatCAMApp.py:6847 FlatCAMApp.py:6953 FlatCAMApp.py:7068 +#: FlatCAMApp.py:6918 FlatCAMApp.py:7024 FlatCAMApp.py:7139 #, python-format msgid "[success] SVG file exported to %s" msgstr "[success] SVG-Datei in exportiert %s" -#: FlatCAMApp.py:6878 FlatCAMApp.py:6999 +#: FlatCAMApp.py:6949 FlatCAMApp.py:7070 #, python-format msgid "[WARNING_NOTCL] No object Box. Using instead %s" msgstr "[WARNING_NOTCL] Kein Objektfeld. Stattdessen verwenden %s" -#: FlatCAMApp.py:6956 FlatCAMApp.py:7071 +#: FlatCAMApp.py:7027 FlatCAMApp.py:7142 msgid "Generating Film ... Please wait." msgstr "Film wird erstellt ... Bitte warten Sie." -#: FlatCAMApp.py:7219 +#: FlatCAMApp.py:7290 #, python-format msgid "[success] Excellon file exported to %s" msgstr "[success] Excellon-Datei nach exportiert %s" -#: FlatCAMApp.py:7226 +#: FlatCAMApp.py:7297 msgid "Exporting Excellon" msgstr "Excellon exportieren" -#: FlatCAMApp.py:7231 FlatCAMApp.py:7238 +#: FlatCAMApp.py:7302 FlatCAMApp.py:7309 msgid "[ERROR_NOTCL] Could not export Excellon file." msgstr "[ERROR_NOTCL] Excellon-Datei konnte nicht exportiert werden." -#: FlatCAMApp.py:7336 +#: FlatCAMApp.py:7407 #, python-format msgid "[success] Gerber file exported to %s" msgstr "[success] Gerber-Datei in exportiert %s" -#: FlatCAMApp.py:7343 +#: FlatCAMApp.py:7414 msgid "Exporting Gerber" msgstr "Gerber exportieren" -#: FlatCAMApp.py:7348 FlatCAMApp.py:7355 +#: FlatCAMApp.py:7419 FlatCAMApp.py:7426 msgid "[ERROR_NOTCL] Could not export Gerber file." msgstr "[ERROR_NOTCL] Gerber-Datei konnte nicht exportiert werden." -#: FlatCAMApp.py:7395 +#: FlatCAMApp.py:7466 #, python-format msgid "[success] DXF file exported to %s" msgstr "[success] DXF-Datei in exportiert %s" -#: FlatCAMApp.py:7401 +#: FlatCAMApp.py:7472 msgid "Exporting DXF" msgstr "DXF exportieren" -#: FlatCAMApp.py:7406 FlatCAMApp.py:7413 +#: FlatCAMApp.py:7477 FlatCAMApp.py:7484 msgid "[[WARNING_NOTCL]] Could not export DXF file." msgstr "[WARNING_NOTCL] DXF-Datei konnte nicht exportiert werden." -#: FlatCAMApp.py:7433 FlatCAMApp.py:7475 FlatCAMApp.py:7519 +#: FlatCAMApp.py:7504 FlatCAMApp.py:7546 FlatCAMApp.py:7590 msgid "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" @@ -916,99 +916,99 @@ msgstr "" "[ERROR_NOTCL] Nicht unterstützte Art wird als Parameter ausgewählt. Nur " "Geometrie und Gerber werden unterstützt" -#: FlatCAMApp.py:7443 +#: FlatCAMApp.py:7514 msgid "Importing SVG" msgstr "SVG importieren" -#: FlatCAMApp.py:7454 FlatCAMApp.py:7496 FlatCAMApp.py:7539 FlatCAMApp.py:7616 -#: FlatCAMApp.py:7677 FlatCAMApp.py:7740 flatcamTools/ToolPDF.py:212 +#: FlatCAMApp.py:7525 FlatCAMApp.py:7567 FlatCAMApp.py:7610 FlatCAMApp.py:7687 +#: FlatCAMApp.py:7748 FlatCAMApp.py:7811 flatcamTools/ToolPDF.py:212 #, python-format msgid "[success] Opened: %s" msgstr "[success] Geöffnet: %s" -#: FlatCAMApp.py:7485 +#: FlatCAMApp.py:7556 msgid "Importing DXF" msgstr "DXF importieren" -#: FlatCAMApp.py:7527 +#: FlatCAMApp.py:7598 msgid "Importing Image" msgstr "Bild importieren" -#: FlatCAMApp.py:7568 FlatCAMApp.py:7570 +#: FlatCAMApp.py:7639 FlatCAMApp.py:7641 #, python-format msgid "[ERROR_NOTCL] Failed to open file: %s" msgstr "[ERROR_NOTCL] Datei konnte nicht geöffnet werden: %s" -#: FlatCAMApp.py:7573 +#: FlatCAMApp.py:7644 #, python-brace-format msgid "[ERROR_NOTCL] Failed to parse file: {name}. {error}" msgstr "[ERROR_NOTCL] Fehler beim Parsen der Datei: {name}. {error}" -#: FlatCAMApp.py:7580 FlatCAMObj.py:4266 +#: FlatCAMApp.py:7651 FlatCAMObj.py:4266 #: flatcamEditors/FlatCAMExcEditor.py:2077 msgid "[ERROR] An internal error has ocurred. See shell.\n" msgstr "[ERROR] Ein interner Fehler ist aufgetreten. Siehe Shell.\n" -#: FlatCAMApp.py:7589 +#: FlatCAMApp.py:7660 msgid "" "[ERROR_NOTCL] Object is not Gerber file or empty. Aborting object creation." msgstr "" "[ERROR_NOTCL] Objekt ist keine Gerber-Datei oder leer. Abbruch der " "Objekterstellung" -#: FlatCAMApp.py:7597 +#: FlatCAMApp.py:7668 msgid "Opening Gerber" msgstr "Gerber öffnen" -#: FlatCAMApp.py:7607 +#: FlatCAMApp.py:7678 msgid "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." msgstr "" "[ERROR_NOTCL] Gerber öffnen ist fehlgeschlagen. Wahrscheinlich keine Gerber-" "Datei." -#: FlatCAMApp.py:7640 flatcamTools/ToolPcbWizard.py:421 +#: FlatCAMApp.py:7711 flatcamTools/ToolPcbWizard.py:421 msgid "[ERROR_NOTCL] This is not Excellon file." msgstr "[ERROR_NOTCL] Dies ist keine Excellon-Datei." -#: FlatCAMApp.py:7643 +#: FlatCAMApp.py:7714 #, python-format msgid "[ERROR_NOTCL] Cannot open file: %s" msgstr "[ERROR_NOTCL] Kann Datei nicht öffnen: %s" -#: FlatCAMApp.py:7648 flatcamTools/ToolPcbWizard.py:429 +#: FlatCAMApp.py:7719 flatcamTools/ToolPcbWizard.py:429 msgid "[ERROR_NOTCL] An internal error has occurred. See shell.\n" msgstr "[ERROR_NOTCL] Ein interner Fehler ist aufgetreten. Siehe Shell.\n" -#: FlatCAMApp.py:7661 flatcamTools/ToolPDF.py:262 +#: FlatCAMApp.py:7732 flatcamTools/ToolPDF.py:262 #: flatcamTools/ToolPcbWizard.py:442 #, python-format msgid "[ERROR_NOTCL] No geometry found in file: %s" msgstr "[ERROR_NOTCL] Keine Geometrie in der Datei gefunden: %s" -#: FlatCAMApp.py:7664 +#: FlatCAMApp.py:7735 msgid "Opening Excellon." msgstr "Eröffnung Excellon." -#: FlatCAMApp.py:7670 +#: FlatCAMApp.py:7741 msgid "[ERROR_NOTCL] Open Excellon file failed. Probable not an Excellon file." msgstr "" "[ERROR_NOTCL] Die Excellon-Datei konnte nicht geöffnet werden. " "Wahrscheinlich keine Excellon-Datei." -#: FlatCAMApp.py:7707 +#: FlatCAMApp.py:7778 #, python-format msgid "[ERROR_NOTCL] Failed to open %s" msgstr "[ERROR_NOTCL] Gescheitert zu öffnen %s" -#: FlatCAMApp.py:7717 +#: FlatCAMApp.py:7788 msgid "[ERROR_NOTCL] This is not GCODE" msgstr "[ERROR_NOTCL] Dies ist kein GCODE" -#: FlatCAMApp.py:7723 +#: FlatCAMApp.py:7794 msgid "Opening G-Code." msgstr "G-Code öffnen." -#: FlatCAMApp.py:7731 +#: FlatCAMApp.py:7802 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 " @@ -1019,26 +1019,26 @@ msgstr "" "Der Versuch, ein FlatCAM-CNCJob-Objekt aus einer G-Code-Datei zu erstellen, " "ist während der Verarbeitung fehlgeschlagen" -#: FlatCAMApp.py:7771 +#: FlatCAMApp.py:7842 #, python-format msgid "[ERROR_NOTCL] Failed to open config file: %s" msgstr "[ERROR_NOTCL] Fehler beim Öffnen der Konfigurationsdatei: %s" -#: FlatCAMApp.py:7797 FlatCAMApp.py:7814 +#: FlatCAMApp.py:7868 FlatCAMApp.py:7885 #, python-format msgid "[ERROR_NOTCL] Failed to open project file: %s" msgstr "[ERROR_NOTCL] Projektdatei konnte nicht geöffnet werden: %s" -#: FlatCAMApp.py:7837 +#: FlatCAMApp.py:7908 #, python-format msgid "[success] Project loaded from: %s" msgstr "[success] Projekt geladen von: %s" -#: FlatCAMApp.py:7942 +#: FlatCAMApp.py:8013 msgid "Available commands:\n" msgstr "Verfügbare Befehle:\n" -#: FlatCAMApp.py:7944 +#: FlatCAMApp.py:8015 msgid "" "\n" "\n" @@ -1050,28 +1050,28 @@ msgstr "" "Geben Sie help für die Verwendung ein.\n" "Beispiel: help open_gerber" -#: FlatCAMApp.py:8094 +#: FlatCAMApp.py:8165 msgid "Shows list of commands." msgstr "Zeigt eine Liste von Befehlen an." -#: FlatCAMApp.py:8151 +#: FlatCAMApp.py:8222 msgid "[ERROR_NOTCL] Failed to load recent item list." msgstr "[ERROR_NOTCL] Fehler beim Laden der letzten Elementliste." -#: FlatCAMApp.py:8158 +#: FlatCAMApp.py:8229 msgid "[ERROR_NOTCL] Failed to parse recent item list." msgstr "" "[ERROR_NOTCL] Liste der letzten Artikel konnte nicht analysiert werden." -#: FlatCAMApp.py:8202 +#: FlatCAMApp.py:8273 msgid "Clear Recent files" msgstr "Letzte Dateien löschen" -#: FlatCAMApp.py:8219 flatcamGUI/FlatCAMGUI.py:968 +#: FlatCAMApp.py:8290 flatcamGUI/FlatCAMGUI.py:968 msgid "Shortcut Key List" msgstr " Liste der Tastenkombinationen " -#: FlatCAMApp.py:8226 +#: FlatCAMApp.py:8297 msgid "" "\n" "

Selected Tab - Choose an Item from " @@ -1171,27 +1171,27 @@ msgstr "" "strong> oder über eine eigene Tastenkombination: F3. " "

" -#: FlatCAMApp.py:8333 +#: FlatCAMApp.py:8404 msgid "[WARNING_NOTCL] Failed checking for latest version. Could not connect." msgstr "" "[WARNING_NOTCL] Fehler bei der Suche nach der neuesten Version. Konnte keine " "Verbindung herstellen." -#: FlatCAMApp.py:8340 +#: FlatCAMApp.py:8411 msgid "[ERROR_NOTCL] Could not parse information about latest version." msgstr "" "[ERROR_NOTCL] Informationen zur neuesten Version konnten nicht analysiert " "werden." -#: FlatCAMApp.py:8350 +#: FlatCAMApp.py:8421 msgid "[success] FlatCAM is up to date!" msgstr "[success] FlatCAM ist auf dem neuesten Version!" -#: FlatCAMApp.py:8355 +#: FlatCAMApp.py:8426 msgid "Newer Version Available" msgstr "Neuere Version verfügbar" -#: FlatCAMApp.py:8356 +#: FlatCAMApp.py:8427 msgid "" "There is a newer version of FlatCAM available for download:\n" "\n" @@ -1199,58 +1199,58 @@ msgstr "" "Es gibt eine neuere Version von FlatCAM zum Download:\n" "\n" -#: FlatCAMApp.py:8358 +#: FlatCAMApp.py:8429 msgid "info" msgstr "Info" -#: FlatCAMApp.py:8377 +#: FlatCAMApp.py:8448 msgid "[success] All plots disabled." msgstr "[success] Alle Diagramme sind deaktiviert." -#: FlatCAMApp.py:8383 +#: FlatCAMApp.py:8454 msgid "[success] All non selected plots disabled." msgstr "[success] Alle nicht ausgewählten Diagramme sind deaktiviert." -#: FlatCAMApp.py:8389 +#: FlatCAMApp.py:8460 msgid "[success] All plots enabled." msgstr "[success] Alle Diagramme aktiviert." -#: FlatCAMApp.py:8395 +#: FlatCAMApp.py:8466 msgid "[success] Selected plots enabled..." msgstr "[success] Ausgewählte Grundstücke aktiviert ..." -#: FlatCAMApp.py:8403 +#: FlatCAMApp.py:8474 msgid "[success] Selected plots disabled..." msgstr "[success] Ausgewählte Grundstücke deaktiviert ..." -#: FlatCAMApp.py:8413 FlatCAMApp.py:8426 +#: FlatCAMApp.py:8484 FlatCAMApp.py:8497 msgid "Working ..." msgstr "Arbeiten ..." -#: FlatCAMApp.py:8460 +#: FlatCAMApp.py:8531 msgid "Saving FlatCAM Project" msgstr "FlatCAM-Projekt speichern" -#: FlatCAMApp.py:8481 FlatCAMApp.py:8512 +#: FlatCAMApp.py:8552 FlatCAMApp.py:8583 #, python-format msgid "[success] Project saved to: %s" msgstr "[success] Projekt gespeichert in: %s" -#: FlatCAMApp.py:8499 +#: FlatCAMApp.py:8570 #, python-format msgid "[ERROR_NOTCL] Failed to verify project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Fehler beim Überprüfen der Projektdatei:%s. Versuchen Sie es " "erneut zu speichern." -#: FlatCAMApp.py:8506 +#: FlatCAMApp.py:8577 #, python-format msgid "[ERROR_NOTCL] Failed to parse saved project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Die gespeicherte Projektdatei konnte nicht analysiert werden:" "%s. Versuchen Sie es erneut zu speichern." -#: FlatCAMApp.py:8514 +#: FlatCAMApp.py:8585 #, python-format msgid "[ERROR_NOTCL] Failed to save project file: %s. Retry to save it." msgstr "" diff --git a/locale/en/LC_MESSAGES/strings.mo b/locale/en/LC_MESSAGES/strings.mo index bdc5e4e3b31d6e822ce32aaef6fd992f32fc840f..e92df92037daa3dd4e891f41ce9c356b6ef86fc6 100644 GIT binary patch delta 38 qcmZ3yUU2bx!G;#bElknnEXG!*X4B)#nN+~6_V#k7?d|2vG7kU&r3~5t delta 38 qcmZ3yUU2bx!G;#bElknnEQVGF#?#}=nN+~6_V#k7?d|2vG7kU%PYlKY diff --git a/locale/en/LC_MESSAGES/strings.po b/locale/en/LC_MESSAGES/strings.po index a2b81b73..9026b3a8 100644 --- a/locale/en/LC_MESSAGES/strings.po +++ b/locale/en/LC_MESSAGES/strings.po @@ -5,8 +5,8 @@ msgid "" msgstr "" "Project-Id-Version: \n" -"POT-Creation-Date: 2019-06-22 21:03+0300\n" -"PO-Revision-Date: 2019-06-22 21:03+0300\n" +"POT-Creation-Date: 2019-06-22 23:56+0300\n" +"PO-Revision-Date: 2019-06-22 23:56+0300\n" "Last-Translator: \n" "Language-Team: \n" "Language: en\n" @@ -40,11 +40,11 @@ msgstr "Open Config file failed." msgid "Open Script file failed." msgstr "Open Script file failed." -#: FlatCAMApp.py:2234 +#: FlatCAMApp.py:2244 msgid "[WARNING_NOTCL] Select a Geometry, Gerber or Excellon Object to edit." msgstr "[WARNING_NOTCL] Select a Geometry, Gerber or Excellon Object to edit." -#: FlatCAMApp.py:2244 +#: FlatCAMApp.py:2254 msgid "" "[WARNING_NOTCL] Simultanoeus editing of tools geometry in a MultiGeo " "Geometry is not possible.\n" @@ -54,96 +54,96 @@ msgstr "" "Geometry is not possible.\n" "Edit only one geometry at a time." -#: FlatCAMApp.py:2299 +#: FlatCAMApp.py:2309 msgid "[WARNING_NOTCL] Editor is activated ..." msgstr "[WARNING_NOTCL] Editor is activated ..." -#: FlatCAMApp.py:2317 +#: FlatCAMApp.py:2327 msgid "Do you want to save the edited object?" msgstr "Do you want to save the edited object?" -#: FlatCAMApp.py:2318 flatcamGUI/FlatCAMGUI.py:1618 +#: FlatCAMApp.py:2328 flatcamGUI/FlatCAMGUI.py:1618 msgid "Close Editor" msgstr "Close Editor" -#: FlatCAMApp.py:2321 FlatCAMApp.py:3413 FlatCAMApp.py:5918 +#: FlatCAMApp.py:2331 FlatCAMApp.py:3423 FlatCAMApp.py:5989 #: FlatCAMTranslation.py:89 flatcamGUI/FlatCAMGUI.py:3730 msgid "Yes" msgstr "Yes" -#: FlatCAMApp.py:2322 FlatCAMApp.py:3414 FlatCAMApp.py:5919 +#: FlatCAMApp.py:2332 FlatCAMApp.py:3424 FlatCAMApp.py:5990 #: FlatCAMTranslation.py:90 flatcamGUI/FlatCAMGUI.py:3731 msgid "No" msgstr "No" -#: FlatCAMApp.py:2323 FlatCAMApp.py:3415 FlatCAMApp.py:3764 FlatCAMApp.py:5920 +#: FlatCAMApp.py:2333 FlatCAMApp.py:3425 FlatCAMApp.py:3836 FlatCAMApp.py:5991 msgid "Cancel" msgstr "Cancel" -#: FlatCAMApp.py:2350 +#: FlatCAMApp.py:2360 msgid "[WARNING] Object empty after edit." msgstr "[WARNING] Object empty after edit." -#: FlatCAMApp.py:2372 FlatCAMApp.py:2391 FlatCAMApp.py:2403 +#: FlatCAMApp.py:2382 FlatCAMApp.py:2401 FlatCAMApp.py:2413 msgid "[WARNING_NOTCL] Select a Gerber, Geometry or Excellon Object to update." msgstr "" "[WARNING_NOTCL] Select a Gerber, Geometry or Excellon Object to update." -#: FlatCAMApp.py:2375 +#: FlatCAMApp.py:2385 #, python-format msgid "[selected] %s is updated, returning to App..." msgstr "[selected] %s is updated, returning to App..." -#: FlatCAMApp.py:2740 +#: FlatCAMApp.py:2750 msgid "[ERROR] Could not load defaults file." msgstr "[ERROR] Could not load defaults file." -#: FlatCAMApp.py:2752 +#: FlatCAMApp.py:2762 msgid "[ERROR] Failed to parse defaults file." msgstr "[ERROR] Failed to parse defaults file." -#: FlatCAMApp.py:2773 FlatCAMApp.py:2777 +#: FlatCAMApp.py:2783 FlatCAMApp.py:2787 msgid "Import FlatCAM Preferences" msgstr "Import FlatCAM Preferences" -#: FlatCAMApp.py:2783 +#: FlatCAMApp.py:2793 msgid "[WARNING_NOTCL] FlatCAM preferences import cancelled." msgstr "[WARNING_NOTCL] FlatCAM preferences import cancelled." -#: FlatCAMApp.py:2791 FlatCAMApp.py:2845 FlatCAMApp.py:3292 +#: FlatCAMApp.py:2801 FlatCAMApp.py:2855 FlatCAMApp.py:3302 msgid "[ERROR_NOTCL] Could not load defaults file." msgstr "[ERROR_NOTCL] Could not load defaults file." -#: FlatCAMApp.py:2799 FlatCAMApp.py:3301 +#: FlatCAMApp.py:2809 FlatCAMApp.py:3311 msgid "[ERROR_NOTCL] Failed to parse defaults file." msgstr "[ERROR_NOTCL] Failed to parse defaults file." -#: FlatCAMApp.py:2802 +#: FlatCAMApp.py:2812 #, python-format msgid "[success] Imported Defaults from %s" msgstr "[success] Imported Defaults from %s" -#: FlatCAMApp.py:2817 FlatCAMApp.py:2822 +#: FlatCAMApp.py:2827 FlatCAMApp.py:2832 msgid "Export FlatCAM Preferences" msgstr "Export FlatCAM Preferences" -#: FlatCAMApp.py:2829 +#: FlatCAMApp.py:2839 msgid "[WARNING_NOTCL] FlatCAM preferences export cancelled." msgstr "[WARNING_NOTCL] FlatCAM preferences export cancelled." -#: FlatCAMApp.py:2864 FlatCAMApp.py:3346 +#: FlatCAMApp.py:2874 FlatCAMApp.py:3356 msgid "[ERROR_NOTCL] Failed to write defaults to file." msgstr "[ERROR_NOTCL] Failed to write defaults to file." -#: FlatCAMApp.py:2917 +#: FlatCAMApp.py:2927 msgid "[ERROR_NOTCL] Failed to open recent files file for writing." msgstr "[ERROR_NOTCL] Failed to open recent files file for writing." -#: FlatCAMApp.py:2994 camlib.py:4457 +#: FlatCAMApp.py:3004 camlib.py:4457 msgid "[ERROR_NOTCL] An internal error has ocurred. See shell.\n" msgstr "[ERROR_NOTCL] An internal error has ocurred. See shell.\n" -#: FlatCAMApp.py:2995 +#: FlatCAMApp.py:3005 #, python-brace-format msgid "" "Object ({kind}) failed because: {error} \n" @@ -152,11 +152,11 @@ msgstr "" "Object ({kind}) failed because: {error} \n" "\n" -#: FlatCAMApp.py:3015 +#: FlatCAMApp.py:3025 msgid "Converting units to " msgstr "Converting units to " -#: FlatCAMApp.py:3094 FlatCAMApp.py:3097 FlatCAMApp.py:3100 FlatCAMApp.py:3103 +#: FlatCAMApp.py:3104 FlatCAMApp.py:3107 FlatCAMApp.py:3110 FlatCAMApp.py:3113 #, python-brace-format msgid "" "[selected] {kind} created/selected: {name}{name}" -#: FlatCAMApp.py:3197 +#: FlatCAMApp.py:3207 #, python-brace-format msgid "" "FlatCAM
Version {version} {beta} ({date}) - " @@ -188,31 +188,31 @@ msgstr "" "a>
DOWNLOAD area here.
" -#: FlatCAMApp.py:3350 +#: FlatCAMApp.py:3360 msgid "[success] Defaults saved." msgstr "[success] Defaults saved." -#: FlatCAMApp.py:3371 +#: FlatCAMApp.py:3381 msgid "[ERROR_NOTCL] Could not load factory defaults file." msgstr "[ERROR_NOTCL] Could not load factory defaults file." -#: FlatCAMApp.py:3380 +#: FlatCAMApp.py:3390 msgid "[ERROR_NOTCL] Failed to parse factory defaults file." msgstr "[ERROR_NOTCL] Failed to parse factory defaults file." -#: FlatCAMApp.py:3394 +#: FlatCAMApp.py:3404 msgid "[ERROR_NOTCL] Failed to write factory defaults to file." msgstr "[ERROR_NOTCL] Failed to write factory defaults to file." -#: FlatCAMApp.py:3398 +#: FlatCAMApp.py:3408 msgid "Factory defaults saved." msgstr "Factory defaults saved." -#: FlatCAMApp.py:3403 flatcamGUI/FlatCAMGUI.py:3106 +#: FlatCAMApp.py:3413 flatcamGUI/FlatCAMGUI.py:3106 msgid "[WARNING_NOTCL] Application is saving the project. Please wait ..." msgstr "[WARNING_NOTCL] Application is saving the project. Please wait ..." -#: FlatCAMApp.py:3408 +#: FlatCAMApp.py:3418 msgid "" "There are files/objects modified in FlatCAM. \n" "Do you want to Save the project?" @@ -220,11 +220,11 @@ msgstr "" "There are files/objects modified in FlatCAM. \n" "Do you want to Save the project?" -#: FlatCAMApp.py:3411 FlatCAMApp.py:5916 +#: FlatCAMApp.py:3421 FlatCAMApp.py:5987 msgid "Save changes" msgstr "Save changes" -#: FlatCAMApp.py:3478 +#: FlatCAMApp.py:3488 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 " @@ -240,67 +240,67 @@ msgstr "" "be lost and the result may not be what was expected. \n" "Check the generated GCODE." -#: FlatCAMApp.py:3519 +#: FlatCAMApp.py:3529 msgid "[ERROR_NOTCL] Failed. Excellon joining works only on Excellon objects." msgstr "[ERROR_NOTCL] Failed. Excellon joining works only on Excellon objects." -#: FlatCAMApp.py:3541 +#: FlatCAMApp.py:3551 msgid "[ERROR_NOTCL] Failed. Gerber joining works only on Gerber objects." msgstr "[ERROR_NOTCL] Failed. Gerber joining works only on Gerber objects." -#: FlatCAMApp.py:3556 FlatCAMApp.py:3581 +#: FlatCAMApp.py:3566 FlatCAMApp.py:3591 msgid "[ERROR_NOTCL] Failed. Select a Geometry Object and try again." msgstr "[ERROR_NOTCL] Failed. Select a Geometry Object and try again." -#: FlatCAMApp.py:3560 FlatCAMApp.py:3585 +#: FlatCAMApp.py:3570 FlatCAMApp.py:3595 #, python-format msgid "[ERROR_NOTCL] Expected a FlatCAMGeometry, got %s" msgstr "[ERROR_NOTCL] Expected a FlatCAMGeometry, got %s" -#: FlatCAMApp.py:3573 +#: FlatCAMApp.py:3583 msgid "[success] A Geometry object was converted to MultiGeo type." msgstr "[success] A Geometry object was converted to MultiGeo type." -#: FlatCAMApp.py:3599 +#: FlatCAMApp.py:3609 msgid "[success] A Geometry object was converted to SingleGeo type." msgstr "[success] A Geometry object was converted to SingleGeo type." -#: FlatCAMApp.py:3763 FlatCAMApp.py:4603 FlatCAMApp.py:6191 FlatCAMApp.py:6202 -#: FlatCAMApp.py:6442 FlatCAMApp.py:6452 +#: FlatCAMApp.py:3835 FlatCAMApp.py:4674 FlatCAMApp.py:6262 FlatCAMApp.py:6273 +#: FlatCAMApp.py:6513 FlatCAMApp.py:6523 msgid "Ok" msgstr "Ok" -#: FlatCAMApp.py:3809 +#: FlatCAMApp.py:3880 #, python-format msgid "[success] Converted units to %s" msgstr "[success] Converted units to %s" -#: FlatCAMApp.py:3820 +#: FlatCAMApp.py:3891 msgid "[WARNING_NOTCL] Units conversion cancelled." msgstr "[WARNING_NOTCL] Units conversion cancelled." -#: FlatCAMApp.py:4472 +#: FlatCAMApp.py:4543 msgid "Open file" msgstr "Open file" -#: FlatCAMApp.py:4503 FlatCAMApp.py:4508 +#: FlatCAMApp.py:4574 FlatCAMApp.py:4579 msgid "Export G-Code ..." msgstr "Export G-Code ..." -#: FlatCAMApp.py:4511 +#: FlatCAMApp.py:4582 msgid "[WARNING_NOTCL] Export Code cancelled." msgstr "[WARNING_NOTCL] Export Code cancelled." -#: FlatCAMApp.py:4521 +#: FlatCAMApp.py:4592 msgid "[WARNING] No such file or directory" msgstr "[WARNING] No such file or directory" -#: FlatCAMApp.py:4528 +#: FlatCAMApp.py:4599 #, python-format msgid "Saved to: %s" msgstr "Saved to: %s" -#: FlatCAMApp.py:4591 FlatCAMApp.py:4624 FlatCAMApp.py:4635 FlatCAMApp.py:4646 +#: FlatCAMApp.py:4662 FlatCAMApp.py:4695 FlatCAMApp.py:4706 FlatCAMApp.py:4717 #: flatcamTools/ToolNonCopperClear.py:489 flatcamTools/ToolSolderPaste.py:765 msgid "" "[WARNING_NOTCL] Please enter a tool diameter with non-zero value, in Float " @@ -309,12 +309,12 @@ msgstr "" "[WARNING_NOTCL] Please enter a tool diameter with non-zero value, in Float " "format." -#: FlatCAMApp.py:4596 FlatCAMApp.py:4629 FlatCAMApp.py:4640 FlatCAMApp.py:4651 +#: FlatCAMApp.py:4667 FlatCAMApp.py:4700 FlatCAMApp.py:4711 FlatCAMApp.py:4722 #: flatcamGUI/FlatCAMGUI.py:3001 msgid "[WARNING_NOTCL] Adding Tool cancelled ..." msgstr "[WARNING_NOTCL] Adding Tool cancelled ..." -#: FlatCAMApp.py:4599 +#: FlatCAMApp.py:4670 msgid "" "Adding Tool works only when Advanced is checked.\n" "Go to Preferences -> General - Show Advanced Options." @@ -322,35 +322,35 @@ msgstr "" "Adding Tool works only when Advanced is checked.\n" "Go to Preferences -> General - Show Advanced Options." -#: FlatCAMApp.py:4712 +#: FlatCAMApp.py:4783 msgid "Object(s) deleted ..." msgstr "Object(s) deleted ..." -#: FlatCAMApp.py:4716 +#: FlatCAMApp.py:4787 msgid "Failed. No object(s) selected..." msgstr "Failed. No object(s) selected..." -#: FlatCAMApp.py:4718 +#: FlatCAMApp.py:4789 msgid "Save the work in Editor and try again ..." msgstr "Save the work in Editor and try again ..." -#: FlatCAMApp.py:4731 +#: FlatCAMApp.py:4802 msgid "Click to set the origin ..." msgstr "Click to set the origin ..." -#: FlatCAMApp.py:4743 +#: FlatCAMApp.py:4814 msgid "Jump to ..." msgstr "Jump to ..." -#: FlatCAMApp.py:4744 +#: FlatCAMApp.py:4815 msgid "Enter the coordinates in format X,Y:" msgstr "Enter the coordinates in format X,Y:" -#: FlatCAMApp.py:4751 +#: FlatCAMApp.py:4822 msgid "Wrong coordinates. Enter coordinates in format: X,Y" msgstr "Wrong coordinates. Enter coordinates in format: X,Y" -#: FlatCAMApp.py:4769 flatcamEditors/FlatCAMExcEditor.py:2320 +#: FlatCAMApp.py:4840 flatcamEditors/FlatCAMExcEditor.py:2320 #: flatcamEditors/FlatCAMExcEditor.py:2327 #: flatcamEditors/FlatCAMGeoEditor.py:3648 #: flatcamEditors/FlatCAMGeoEditor.py:3662 @@ -364,84 +364,84 @@ msgstr "Wrong coordinates. Enter coordinates in format: X,Y" msgid "[success] Done." msgstr "[success] Done." -#: FlatCAMApp.py:4901 FlatCAMApp.py:4968 +#: FlatCAMApp.py:4972 FlatCAMApp.py:5039 msgid "[WARNING_NOTCL] No object is selected. Select an object and try again." msgstr "[WARNING_NOTCL] No object is selected. Select an object and try again." -#: FlatCAMApp.py:5009 +#: FlatCAMApp.py:5080 msgid "[success] Origin set ..." msgstr "[success] Origin set ..." -#: FlatCAMApp.py:5029 +#: FlatCAMApp.py:5100 msgid "Preferences" msgstr "Preferences" -#: FlatCAMApp.py:5049 +#: FlatCAMApp.py:5120 msgid "[WARNING_NOTCL] No object selected to Flip on Y axis." msgstr "[WARNING_NOTCL] No object selected to Flip on Y axis." -#: FlatCAMApp.py:5074 +#: FlatCAMApp.py:5145 msgid "[success] Flip on Y axis done." msgstr "[success] Flip on Y axis done." -#: FlatCAMApp.py:5076 FlatCAMApp.py:5116 +#: FlatCAMApp.py:5147 FlatCAMApp.py:5187 #: flatcamEditors/FlatCAMGeoEditor.py:1355 #: flatcamEditors/FlatCAMGrbEditor.py:5343 flatcamTools/ToolTransform.py:748 #, 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:5089 +#: FlatCAMApp.py:5160 msgid "[WARNING_NOTCL] No object selected to Flip on X axis." msgstr "[WARNING_NOTCL] No object selected to Flip on X axis." -#: FlatCAMApp.py:5114 +#: FlatCAMApp.py:5185 msgid "[success] Flip on X axis done." msgstr "[success] Flip on X axis done." -#: FlatCAMApp.py:5129 +#: FlatCAMApp.py:5200 msgid "[WARNING_NOTCL] No object selected to Rotate." msgstr "[WARNING_NOTCL] No object selected to Rotate." -#: FlatCAMApp.py:5132 FlatCAMApp.py:5177 FlatCAMApp.py:5208 +#: FlatCAMApp.py:5203 FlatCAMApp.py:5248 FlatCAMApp.py:5279 msgid "Transform" msgstr "Transform" -#: FlatCAMApp.py:5132 FlatCAMApp.py:5177 FlatCAMApp.py:5208 +#: FlatCAMApp.py:5203 FlatCAMApp.py:5248 FlatCAMApp.py:5279 msgid "Enter the Angle value:" msgstr "Enter the Angle value:" -#: FlatCAMApp.py:5162 +#: FlatCAMApp.py:5233 msgid "[success] Rotation done." msgstr "[success] Rotation done." -#: FlatCAMApp.py:5164 flatcamEditors/FlatCAMGeoEditor.py:1298 +#: FlatCAMApp.py:5235 flatcamEditors/FlatCAMGeoEditor.py:1298 #: flatcamEditors/FlatCAMGrbEditor.py:5272 flatcamTools/ToolTransform.py:677 #, 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:5175 +#: FlatCAMApp.py:5246 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:5196 +#: FlatCAMApp.py:5267 msgid "[success] Skew on X axis done." msgstr "[success] Skew on X axis done." -#: FlatCAMApp.py:5206 +#: FlatCAMApp.py:5277 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:5227 +#: FlatCAMApp.py:5298 msgid "[success] Skew on Y axis done." msgstr "[success] Skew on Y axis done." -#: FlatCAMApp.py:5297 +#: FlatCAMApp.py:5368 msgid "Grid On/Off" msgstr "Grid On/Off" -#: FlatCAMApp.py:5310 flatcamEditors/FlatCAMGeoEditor.py:937 +#: FlatCAMApp.py:5381 flatcamEditors/FlatCAMGeoEditor.py:937 #: flatcamEditors/FlatCAMGrbEditor.py:2381 #: flatcamEditors/FlatCAMGrbEditor.py:4861 flatcamGUI/ObjectUI.py:991 #: flatcamTools/ToolDblSided.py:160 flatcamTools/ToolDblSided.py:208 @@ -451,7 +451,7 @@ msgstr "Grid On/Off" msgid "Add" msgstr "Add" -#: FlatCAMApp.py:5311 FlatCAMObj.py:3295 +#: FlatCAMApp.py:5382 FlatCAMObj.py:3295 #: flatcamEditors/FlatCAMGrbEditor.py:2386 flatcamGUI/FlatCAMGUI.py:527 #: flatcamGUI/FlatCAMGUI.py:724 flatcamGUI/FlatCAMGUI.py:1616 #: flatcamGUI/FlatCAMGUI.py:1953 flatcamGUI/ObjectUI.py:1007 @@ -460,15 +460,15 @@ msgstr "Add" msgid "Delete" msgstr "Delete" -#: FlatCAMApp.py:5324 +#: FlatCAMApp.py:5395 msgid "New Grid ..." msgstr "New Grid ..." -#: FlatCAMApp.py:5325 +#: FlatCAMApp.py:5396 msgid "Enter a Grid Value:" msgstr "Enter a Grid Value:" -#: FlatCAMApp.py:5333 FlatCAMApp.py:5360 +#: FlatCAMApp.py:5404 FlatCAMApp.py:5431 msgid "" "[WARNING_NOTCL] Please enter a grid value with non-zero value, in Float " "format." @@ -476,52 +476,52 @@ msgstr "" "[WARNING_NOTCL] Please enter a grid value with non-zero value, in Float " "format." -#: FlatCAMApp.py:5339 +#: FlatCAMApp.py:5410 msgid "[success] New Grid added ..." msgstr "[success] New Grid added ..." -#: FlatCAMApp.py:5342 +#: FlatCAMApp.py:5413 msgid "[WARNING_NOTCL] Grid already exists ..." msgstr "[WARNING_NOTCL] Grid already exists ..." -#: FlatCAMApp.py:5345 +#: FlatCAMApp.py:5416 msgid "[WARNING_NOTCL] Adding New Grid cancelled ..." msgstr "[WARNING_NOTCL] Adding New Grid cancelled ..." -#: FlatCAMApp.py:5367 +#: FlatCAMApp.py:5438 msgid "[ERROR_NOTCL] Grid Value does not exist ..." msgstr "[ERROR_NOTCL] Grid Value does not exist ..." -#: FlatCAMApp.py:5370 +#: FlatCAMApp.py:5441 msgid "[success] Grid Value deleted ..." msgstr "[success] Grid Value deleted ..." -#: FlatCAMApp.py:5373 +#: FlatCAMApp.py:5444 msgid "[WARNING_NOTCL] Delete Grid value cancelled ..." msgstr "[WARNING_NOTCL] Delete Grid value cancelled ..." -#: FlatCAMApp.py:5412 +#: FlatCAMApp.py:5483 msgid "[WARNING_NOTCL] No object selected to copy it's name" msgstr "[WARNING_NOTCL] No object selected to copy it's name" -#: FlatCAMApp.py:5416 +#: FlatCAMApp.py:5487 msgid "Name copied on clipboard ..." msgstr "Name copied on clipboard ..." -#: FlatCAMApp.py:5458 flatcamEditors/FlatCAMGrbEditor.py:3901 +#: FlatCAMApp.py:5529 flatcamEditors/FlatCAMGrbEditor.py:3901 msgid "[success] Coordinates copied to clipboard." msgstr "[success] Coordinates copied to clipboard." -#: FlatCAMApp.py:5714 FlatCAMApp.py:5717 FlatCAMApp.py:5720 FlatCAMApp.py:5723 -#: FlatCAMApp.py:5738 FlatCAMApp.py:5741 FlatCAMApp.py:5744 FlatCAMApp.py:5747 -#: FlatCAMApp.py:5787 FlatCAMApp.py:5790 FlatCAMApp.py:5793 FlatCAMApp.py:5796 +#: FlatCAMApp.py:5785 FlatCAMApp.py:5788 FlatCAMApp.py:5791 FlatCAMApp.py:5794 +#: FlatCAMApp.py:5809 FlatCAMApp.py:5812 FlatCAMApp.py:5815 FlatCAMApp.py:5818 +#: FlatCAMApp.py:5858 FlatCAMApp.py:5861 FlatCAMApp.py:5864 FlatCAMApp.py:5867 #: ObjectCollection.py:719 ObjectCollection.py:722 ObjectCollection.py:725 #: ObjectCollection.py:728 #, python-brace-format msgid "[selected]{name} selected" msgstr "[selected]{name} selected" -#: FlatCAMApp.py:5913 +#: FlatCAMApp.py:5984 msgid "" "There are files/objects opened in FlatCAM.\n" "Creating a New project will delete them.\n" @@ -531,106 +531,106 @@ msgstr "" "Creating a New project will delete them.\n" "Do you want to Save the project?" -#: FlatCAMApp.py:5934 +#: FlatCAMApp.py:6005 msgid "[success] New Project created..." msgstr "[success] New Project created..." -#: FlatCAMApp.py:6050 FlatCAMApp.py:6053 flatcamGUI/FlatCAMGUI.py:608 +#: FlatCAMApp.py:6121 FlatCAMApp.py:6124 flatcamGUI/FlatCAMGUI.py:608 #: flatcamGUI/FlatCAMGUI.py:1832 msgid "Open Gerber" msgstr "Open Gerber" -#: FlatCAMApp.py:6058 +#: FlatCAMApp.py:6129 msgid "[WARNING_NOTCL] Open Gerber cancelled." msgstr "[WARNING_NOTCL] Open Gerber cancelled." -#: FlatCAMApp.py:6079 FlatCAMApp.py:6082 flatcamGUI/FlatCAMGUI.py:609 +#: FlatCAMApp.py:6150 FlatCAMApp.py:6153 flatcamGUI/FlatCAMGUI.py:609 #: flatcamGUI/FlatCAMGUI.py:1833 msgid "Open Excellon" msgstr "Open Excellon" -#: FlatCAMApp.py:6087 +#: FlatCAMApp.py:6158 msgid "[WARNING_NOTCL] Open Excellon cancelled." msgstr "[WARNING_NOTCL] Open Excellon cancelled." -#: FlatCAMApp.py:6109 FlatCAMApp.py:6112 +#: FlatCAMApp.py:6180 FlatCAMApp.py:6183 msgid "Open G-Code" msgstr "Open G-Code" -#: FlatCAMApp.py:6117 +#: FlatCAMApp.py:6188 msgid "[WARNING_NOTCL] Open G-Code cancelled." msgstr "[WARNING_NOTCL] Open G-Code cancelled." -#: FlatCAMApp.py:6135 FlatCAMApp.py:6138 +#: FlatCAMApp.py:6206 FlatCAMApp.py:6209 msgid "Open Project" msgstr "Open Project" -#: FlatCAMApp.py:6146 +#: FlatCAMApp.py:6217 msgid "[WARNING_NOTCL] Open Project cancelled." msgstr "[WARNING_NOTCL] Open Project cancelled." -#: FlatCAMApp.py:6165 FlatCAMApp.py:6168 +#: FlatCAMApp.py:6236 FlatCAMApp.py:6239 msgid "Open Configuration File" msgstr "Open Configuration File" -#: FlatCAMApp.py:6172 +#: FlatCAMApp.py:6243 msgid "[WARNING_NOTCL] Open Config cancelled." msgstr "[WARNING_NOTCL] Open Config cancelled." -#: FlatCAMApp.py:6187 FlatCAMApp.py:6438 FlatCAMApp.py:8591 FlatCAMApp.py:8611 -#: FlatCAMApp.py:8632 FlatCAMApp.py:8654 +#: FlatCAMApp.py:6258 FlatCAMApp.py:6509 FlatCAMApp.py:8662 FlatCAMApp.py:8682 +#: FlatCAMApp.py:8703 FlatCAMApp.py:8725 msgid "[WARNING_NOTCL] No object selected." msgstr "[WARNING_NOTCL] No object selected." -#: FlatCAMApp.py:6188 FlatCAMApp.py:6439 +#: FlatCAMApp.py:6259 FlatCAMApp.py:6510 msgid "Please Select a Geometry object to export" msgstr "Please Select a Geometry object to export" -#: FlatCAMApp.py:6199 +#: FlatCAMApp.py:6270 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:6212 FlatCAMApp.py:6216 +#: FlatCAMApp.py:6283 FlatCAMApp.py:6287 msgid "Export SVG" msgstr "Export SVG" -#: FlatCAMApp.py:6221 +#: FlatCAMApp.py:6292 msgid "[WARNING_NOTCL] Export SVG cancelled." msgstr "[WARNING_NOTCL] Export SVG cancelled." -#: FlatCAMApp.py:6240 +#: FlatCAMApp.py:6311 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:6246 FlatCAMApp.py:6250 +#: FlatCAMApp.py:6317 FlatCAMApp.py:6321 msgid "Export PNG Image" msgstr "Export PNG Image" -#: FlatCAMApp.py:6255 +#: FlatCAMApp.py:6326 msgid "Export PNG cancelled." msgstr "Export PNG cancelled." -#: FlatCAMApp.py:6274 +#: FlatCAMApp.py:6345 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:6279 FlatCAMApp.py:6402 +#: FlatCAMApp.py:6350 FlatCAMApp.py:6473 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:6291 +#: FlatCAMApp.py:6362 msgid "Save Gerber source file" msgstr "Save Gerber source file" -#: FlatCAMApp.py:6296 +#: FlatCAMApp.py:6367 msgid "[WARNING_NOTCL] Save Gerber source file cancelled." msgstr "[WARNING_NOTCL] Save Gerber source file cancelled." -#: FlatCAMApp.py:6315 +#: FlatCAMApp.py:6386 msgid "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." @@ -638,21 +638,21 @@ msgstr "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." -#: FlatCAMApp.py:6320 FlatCAMApp.py:6361 +#: FlatCAMApp.py:6391 FlatCAMApp.py:6432 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:6328 FlatCAMApp.py:6332 +#: FlatCAMApp.py:6399 FlatCAMApp.py:6403 msgid "Save Excellon source file" msgstr "Save Excellon source file" -#: FlatCAMApp.py:6337 +#: FlatCAMApp.py:6408 msgid "[WARNING_NOTCL] Saving Excellon source file cancelled." msgstr "[WARNING_NOTCL] Saving Excellon source file cancelled." -#: FlatCAMApp.py:6356 +#: FlatCAMApp.py:6427 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." @@ -660,68 +660,68 @@ msgstr "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." -#: FlatCAMApp.py:6369 FlatCAMApp.py:6373 +#: FlatCAMApp.py:6440 FlatCAMApp.py:6444 msgid "Export Excellon" msgstr "Export Excellon" -#: FlatCAMApp.py:6378 +#: FlatCAMApp.py:6449 msgid "[WARNING_NOTCL] Export Excellon cancelled." msgstr "[WARNING_NOTCL] Export Excellon cancelled." -#: FlatCAMApp.py:6397 +#: FlatCAMApp.py:6468 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:6410 FlatCAMApp.py:6414 +#: FlatCAMApp.py:6481 FlatCAMApp.py:6485 msgid "Export Gerber" msgstr "Export Gerber" -#: FlatCAMApp.py:6419 +#: FlatCAMApp.py:6490 msgid "[WARNING_NOTCL] Export Gerber cancelled." msgstr "[WARNING_NOTCL] Export Gerber cancelled." -#: FlatCAMApp.py:6449 +#: FlatCAMApp.py:6520 msgid "[ERROR_NOTCL] Only Geometry objects can be used." msgstr "[ERROR_NOTCL] Only Geometry objects can be used." -#: FlatCAMApp.py:6463 FlatCAMApp.py:6467 +#: FlatCAMApp.py:6534 FlatCAMApp.py:6538 msgid "Export DXF" msgstr "Export DXF" -#: FlatCAMApp.py:6473 +#: FlatCAMApp.py:6544 msgid "[WARNING_NOTCL] Export DXF cancelled." msgstr "[WARNING_NOTCL] Export DXF cancelled." -#: FlatCAMApp.py:6493 FlatCAMApp.py:6496 +#: FlatCAMApp.py:6564 FlatCAMApp.py:6567 msgid "Import SVG" msgstr "Import SVG" -#: FlatCAMApp.py:6505 +#: FlatCAMApp.py:6576 msgid "[WARNING_NOTCL] Open SVG cancelled." msgstr "[WARNING_NOTCL] Open SVG cancelled." -#: FlatCAMApp.py:6524 FlatCAMApp.py:6528 +#: FlatCAMApp.py:6595 FlatCAMApp.py:6599 msgid "Import DXF" msgstr "Import DXF" -#: FlatCAMApp.py:6537 +#: FlatCAMApp.py:6608 msgid "[WARNING_NOTCL] Open DXF cancelled." msgstr "[WARNING_NOTCL] Open DXF cancelled." -#: FlatCAMApp.py:6555 +#: FlatCAMApp.py:6626 #, python-format msgid "%s" msgstr "%s" -#: FlatCAMApp.py:6575 +#: FlatCAMApp.py:6646 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:6582 +#: FlatCAMApp.py:6653 msgid "" "[WARNING_NOTCL] There is no selected object for which to see it's source " "file code." @@ -729,25 +729,25 @@ msgstr "" "[WARNING_NOTCL] There is no selected object for which to see it's source " "file code." -#: FlatCAMApp.py:6590 +#: FlatCAMApp.py:6661 msgid "Source Editor" msgstr "Source Editor" -#: FlatCAMApp.py:6600 +#: FlatCAMApp.py:6671 #, python-format msgid "[ERROR]App.on_view_source() -->%s" msgstr "[ERROR]App.on_view_source() -->%s" -#: FlatCAMApp.py:6612 FlatCAMApp.py:7754 FlatCAMObj.py:5588 +#: FlatCAMApp.py:6683 FlatCAMApp.py:7825 FlatCAMObj.py:5588 #: flatcamTools/ToolSolderPaste.py:1278 msgid "Code Editor" msgstr "Code Editor" -#: FlatCAMApp.py:6624 +#: FlatCAMApp.py:6695 msgid "Script Editor" msgstr "Script Editor" -#: FlatCAMApp.py:6627 +#: FlatCAMApp.py:6698 msgid "" "#\n" "# CREATE A NEW FLATCAM TCL SCRIPT\n" @@ -791,98 +791,98 @@ msgstr "" "#\n" "\n" -#: FlatCAMApp.py:6650 FlatCAMApp.py:6653 +#: FlatCAMApp.py:6721 FlatCAMApp.py:6724 msgid "Open TCL script" msgstr "Open TCL script" -#: FlatCAMApp.py:6661 +#: FlatCAMApp.py:6732 msgid "[WARNING_NOTCL] Open TCL script cancelled." msgstr "[WARNING_NOTCL] Open TCL script cancelled." -#: FlatCAMApp.py:6673 +#: FlatCAMApp.py:6744 #, python-format msgid "[ERROR]App.on_fileopenscript() -->%s" msgstr "[ERROR]App.on_fileopenscript() -->%s" -#: FlatCAMApp.py:6699 FlatCAMApp.py:6702 +#: FlatCAMApp.py:6770 FlatCAMApp.py:6773 msgid "Run TCL script" msgstr "Run TCL script" -#: FlatCAMApp.py:6710 +#: FlatCAMApp.py:6781 msgid "[WARNING_NOTCL] Run TCL script cancelled." msgstr "[WARNING_NOTCL] Run TCL script cancelled." -#: FlatCAMApp.py:6760 FlatCAMApp.py:6764 +#: FlatCAMApp.py:6831 FlatCAMApp.py:6835 msgid "Save Project As ..." msgstr "Save Project As ..." -#: FlatCAMApp.py:6761 +#: FlatCAMApp.py:6832 #, python-brace-format msgid "{l_save}/Project_{date}" msgstr "{l_save}/Project_{date}" -#: FlatCAMApp.py:6769 +#: FlatCAMApp.py:6840 msgid "[WARNING_NOTCL] Save Project cancelled." msgstr "[WARNING_NOTCL] Save Project cancelled." -#: FlatCAMApp.py:6813 +#: FlatCAMApp.py:6884 msgid "Exporting SVG" msgstr "Exporting SVG" -#: FlatCAMApp.py:6847 FlatCAMApp.py:6953 FlatCAMApp.py:7068 +#: FlatCAMApp.py:6918 FlatCAMApp.py:7024 FlatCAMApp.py:7139 #, python-format msgid "[success] SVG file exported to %s" msgstr "[success] SVG file exported to %s" -#: FlatCAMApp.py:6878 FlatCAMApp.py:6999 +#: FlatCAMApp.py:6949 FlatCAMApp.py:7070 #, python-format msgid "[WARNING_NOTCL] No object Box. Using instead %s" msgstr "[WARNING_NOTCL] No object Box. Using instead %s" -#: FlatCAMApp.py:6956 FlatCAMApp.py:7071 +#: FlatCAMApp.py:7027 FlatCAMApp.py:7142 msgid "Generating Film ... Please wait." msgstr "Generating Film ... Please wait." -#: FlatCAMApp.py:7219 +#: FlatCAMApp.py:7290 #, python-format msgid "[success] Excellon file exported to %s" msgstr "[success] Excellon file exported to %s" -#: FlatCAMApp.py:7226 +#: FlatCAMApp.py:7297 msgid "Exporting Excellon" msgstr "Exporting Excellon" -#: FlatCAMApp.py:7231 FlatCAMApp.py:7238 +#: FlatCAMApp.py:7302 FlatCAMApp.py:7309 msgid "[ERROR_NOTCL] Could not export Excellon file." msgstr "[ERROR_NOTCL] Could not export Excellon file." -#: FlatCAMApp.py:7336 +#: FlatCAMApp.py:7407 #, python-format msgid "[success] Gerber file exported to %s" msgstr "[success] Gerber file exported to %s" -#: FlatCAMApp.py:7343 +#: FlatCAMApp.py:7414 msgid "Exporting Gerber" msgstr "Exporting Gerber" -#: FlatCAMApp.py:7348 FlatCAMApp.py:7355 +#: FlatCAMApp.py:7419 FlatCAMApp.py:7426 msgid "[ERROR_NOTCL] Could not export Gerber file." msgstr "[ERROR_NOTCL] Could not export Gerber file." -#: FlatCAMApp.py:7395 +#: FlatCAMApp.py:7466 #, python-format msgid "[success] DXF file exported to %s" msgstr "[success] DXF file exported to %s" -#: FlatCAMApp.py:7401 +#: FlatCAMApp.py:7472 msgid "Exporting DXF" msgstr "Exporting DXF" -#: FlatCAMApp.py:7406 FlatCAMApp.py:7413 +#: FlatCAMApp.py:7477 FlatCAMApp.py:7484 msgid "[[WARNING_NOTCL]] Could not export DXF file." msgstr "[[WARNING_NOTCL]] Could not export DXF file." -#: FlatCAMApp.py:7433 FlatCAMApp.py:7475 FlatCAMApp.py:7519 +#: FlatCAMApp.py:7504 FlatCAMApp.py:7546 FlatCAMApp.py:7590 msgid "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" @@ -890,95 +890,95 @@ msgstr "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" -#: FlatCAMApp.py:7443 +#: FlatCAMApp.py:7514 msgid "Importing SVG" msgstr "Importing SVG" -#: FlatCAMApp.py:7454 FlatCAMApp.py:7496 FlatCAMApp.py:7539 FlatCAMApp.py:7616 -#: FlatCAMApp.py:7677 FlatCAMApp.py:7740 flatcamTools/ToolPDF.py:212 +#: FlatCAMApp.py:7525 FlatCAMApp.py:7567 FlatCAMApp.py:7610 FlatCAMApp.py:7687 +#: FlatCAMApp.py:7748 FlatCAMApp.py:7811 flatcamTools/ToolPDF.py:212 #, python-format msgid "[success] Opened: %s" msgstr "[success] Opened: %s" -#: FlatCAMApp.py:7485 +#: FlatCAMApp.py:7556 msgid "Importing DXF" msgstr "Importing DXF" -#: FlatCAMApp.py:7527 +#: FlatCAMApp.py:7598 msgid "Importing Image" msgstr "Importing Image" -#: FlatCAMApp.py:7568 FlatCAMApp.py:7570 +#: FlatCAMApp.py:7639 FlatCAMApp.py:7641 #, python-format msgid "[ERROR_NOTCL] Failed to open file: %s" msgstr "[ERROR_NOTCL] Failed to open file: %s" -#: FlatCAMApp.py:7573 +#: FlatCAMApp.py:7644 #, python-brace-format msgid "[ERROR_NOTCL] Failed to parse file: {name}. {error}" msgstr "[ERROR_NOTCL] Failed to parse file: {name}. {error}" -#: FlatCAMApp.py:7580 FlatCAMObj.py:4266 +#: FlatCAMApp.py:7651 FlatCAMObj.py:4266 #: flatcamEditors/FlatCAMExcEditor.py:2077 msgid "[ERROR] An internal error has ocurred. See shell.\n" msgstr "[ERROR] An internal error has ocurred. See shell.\n" -#: FlatCAMApp.py:7589 +#: FlatCAMApp.py:7660 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:7597 +#: FlatCAMApp.py:7668 msgid "Opening Gerber" msgstr "Opening Gerber" -#: FlatCAMApp.py:7607 +#: FlatCAMApp.py:7678 msgid "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." msgstr "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." -#: FlatCAMApp.py:7640 flatcamTools/ToolPcbWizard.py:421 +#: FlatCAMApp.py:7711 flatcamTools/ToolPcbWizard.py:421 msgid "[ERROR_NOTCL] This is not Excellon file." msgstr "[ERROR_NOTCL] This is not Excellon file." -#: FlatCAMApp.py:7643 +#: FlatCAMApp.py:7714 #, python-format msgid "[ERROR_NOTCL] Cannot open file: %s" msgstr "[ERROR_NOTCL] Cannot open file: %s" -#: FlatCAMApp.py:7648 flatcamTools/ToolPcbWizard.py:429 +#: FlatCAMApp.py:7719 flatcamTools/ToolPcbWizard.py:429 msgid "[ERROR_NOTCL] An internal error has occurred. See shell.\n" msgstr "[ERROR_NOTCL] An internal error has occurred. See shell.\n" -#: FlatCAMApp.py:7661 flatcamTools/ToolPDF.py:262 +#: FlatCAMApp.py:7732 flatcamTools/ToolPDF.py:262 #: flatcamTools/ToolPcbWizard.py:442 #, python-format msgid "[ERROR_NOTCL] No geometry found in file: %s" msgstr "[ERROR_NOTCL] No geometry found in file: %s" -#: FlatCAMApp.py:7664 +#: FlatCAMApp.py:7735 msgid "Opening Excellon." msgstr "Opening Excellon." -#: FlatCAMApp.py:7670 +#: FlatCAMApp.py:7741 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:7707 +#: FlatCAMApp.py:7778 #, python-format msgid "[ERROR_NOTCL] Failed to open %s" msgstr "[ERROR_NOTCL] Failed to open %s" -#: FlatCAMApp.py:7717 +#: FlatCAMApp.py:7788 msgid "[ERROR_NOTCL] This is not GCODE" msgstr "[ERROR_NOTCL] This is not GCODE" -#: FlatCAMApp.py:7723 +#: FlatCAMApp.py:7794 msgid "Opening G-Code." msgstr "Opening G-Code." -#: FlatCAMApp.py:7731 +#: FlatCAMApp.py:7802 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 " @@ -988,26 +988,26 @@ msgstr "" " Attempting to create a FlatCAM CNCJob Object from G-Code file failed during " "processing" -#: FlatCAMApp.py:7771 +#: FlatCAMApp.py:7842 #, python-format msgid "[ERROR_NOTCL] Failed to open config file: %s" msgstr "[ERROR_NOTCL] Failed to open config file: %s" -#: FlatCAMApp.py:7797 FlatCAMApp.py:7814 +#: FlatCAMApp.py:7868 FlatCAMApp.py:7885 #, python-format msgid "[ERROR_NOTCL] Failed to open project file: %s" msgstr "[ERROR_NOTCL] Failed to open project file: %s" -#: FlatCAMApp.py:7837 +#: FlatCAMApp.py:7908 #, python-format msgid "[success] Project loaded from: %s" msgstr "[success] Project loaded from: %s" -#: FlatCAMApp.py:7942 +#: FlatCAMApp.py:8013 msgid "Available commands:\n" msgstr "Available commands:\n" -#: FlatCAMApp.py:7944 +#: FlatCAMApp.py:8015 msgid "" "\n" "\n" @@ -1019,27 +1019,27 @@ msgstr "" "Type help for usage.\n" " Example: help open_gerber" -#: FlatCAMApp.py:8094 +#: FlatCAMApp.py:8165 msgid "Shows list of commands." msgstr "Shows list of commands." -#: FlatCAMApp.py:8151 +#: FlatCAMApp.py:8222 msgid "[ERROR_NOTCL] Failed to load recent item list." msgstr "[ERROR_NOTCL] Failed to load recent item list." -#: FlatCAMApp.py:8158 +#: FlatCAMApp.py:8229 msgid "[ERROR_NOTCL] Failed to parse recent item list." msgstr "[ERROR_NOTCL] Failed to parse recent item list." -#: FlatCAMApp.py:8202 +#: FlatCAMApp.py:8273 msgid "Clear Recent files" msgstr "Clear Recent files" -#: FlatCAMApp.py:8219 flatcamGUI/FlatCAMGUI.py:968 +#: FlatCAMApp.py:8290 flatcamGUI/FlatCAMGUI.py:968 msgid "Shortcut Key List" msgstr "Shortcut Key List" -#: FlatCAMApp.py:8226 +#: FlatCAMApp.py:8297 msgid "" "\n" "

Selected Tab - Choose an Item from " @@ -1135,23 +1135,23 @@ msgstr "" "\n" " " -#: FlatCAMApp.py:8333 +#: FlatCAMApp.py:8404 msgid "[WARNING_NOTCL] Failed checking for latest version. Could not connect." msgstr "[WARNING_NOTCL] Failed checking for latest version. Could not connect." -#: FlatCAMApp.py:8340 +#: FlatCAMApp.py:8411 msgid "[ERROR_NOTCL] Could not parse information about latest version." msgstr "[ERROR_NOTCL] Could not parse information about latest version." -#: FlatCAMApp.py:8350 +#: FlatCAMApp.py:8421 msgid "[success] FlatCAM is up to date!" msgstr "[success] FlatCAM is up to date!" -#: FlatCAMApp.py:8355 +#: FlatCAMApp.py:8426 msgid "Newer Version Available" msgstr "Newer Version Available" -#: FlatCAMApp.py:8356 +#: FlatCAMApp.py:8427 msgid "" "There is a newer version of FlatCAM available for download:\n" "\n" @@ -1159,55 +1159,55 @@ msgstr "" "There is a newer version of FlatCAM available for download:\n" "\n" -#: FlatCAMApp.py:8358 +#: FlatCAMApp.py:8429 msgid "info" msgstr "info" -#: FlatCAMApp.py:8377 +#: FlatCAMApp.py:8448 msgid "[success] All plots disabled." msgstr "[success] All plots disabled." -#: FlatCAMApp.py:8383 +#: FlatCAMApp.py:8454 msgid "[success] All non selected plots disabled." msgstr "[success] All non selected plots disabled." -#: FlatCAMApp.py:8389 +#: FlatCAMApp.py:8460 msgid "[success] All plots enabled." msgstr "[success] All plots enabled." -#: FlatCAMApp.py:8395 +#: FlatCAMApp.py:8466 msgid "[success] Selected plots enabled..." msgstr "[success] Selected plots enabled..." -#: FlatCAMApp.py:8403 +#: FlatCAMApp.py:8474 msgid "[success] Selected plots disabled..." msgstr "[success] Selected plots disabled..." -#: FlatCAMApp.py:8413 FlatCAMApp.py:8426 +#: FlatCAMApp.py:8484 FlatCAMApp.py:8497 msgid "Working ..." msgstr "Working ..." -#: FlatCAMApp.py:8460 +#: FlatCAMApp.py:8531 msgid "Saving FlatCAM Project" msgstr "Saving FlatCAM Project" -#: FlatCAMApp.py:8481 FlatCAMApp.py:8512 +#: FlatCAMApp.py:8552 FlatCAMApp.py:8583 #, python-format msgid "[success] Project saved to: %s" msgstr "[success] Project saved to: %s" -#: FlatCAMApp.py:8499 +#: FlatCAMApp.py:8570 #, 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:8506 +#: FlatCAMApp.py:8577 #, 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:8514 +#: FlatCAMApp.py:8585 #, 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." diff --git a/locale/ro/LC_MESSAGES/strings.mo b/locale/ro/LC_MESSAGES/strings.mo index 8bbe5afc6d6287d3caca14e85b086b6df68f5e51..fce84432ece48cdd978dbd3a4e441af22e18ec2f 100644 GIT binary patch delta 42 tcmaESSm^O#p@tU5ElknnEXG!*X4B)#nN+~6_V#inAZFg)Ud|Gu1prc&4wnD` delta 42 tcmaESSm^O#p@tU5ElknnEQVGF#?#}=nN+~6_V#inAZFg)Ud|Gu1prX*4ub#y diff --git a/locale/ro/LC_MESSAGES/strings.po b/locale/ro/LC_MESSAGES/strings.po index 3bc7bfb9..240f004d 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-06-22 21:03+0300\n" -"PO-Revision-Date: 2019-06-22 21:03+0300\n" +"POT-Creation-Date: 2019-06-22 23:56+0300\n" +"PO-Revision-Date: 2019-06-22 23:56+0300\n" "Last-Translator: \n" "Language-Team: \n" "Language: ro\n" @@ -41,13 +41,13 @@ msgstr "Deschiderea fişierului de configurare a eşuat." msgid "Open Script file failed." msgstr "Deschiderea fişierului Script eşuat." -#: FlatCAMApp.py:2234 +#: FlatCAMApp.py:2244 msgid "[WARNING_NOTCL] Select a Geometry, Gerber or Excellon Object to edit." msgstr "" "[WARNING_NOTCL] Selectează un obiect tip Geometrie Gerber sau Excellon " "pentru editare." -#: FlatCAMApp.py:2244 +#: FlatCAMApp.py:2254 msgid "" "[WARNING_NOTCL] Simultanoeus editing of tools geometry in a MultiGeo " "Geometry is not possible.\n" @@ -57,102 +57,102 @@ msgstr "" "obiect tip Geometrie MultiGeo nu este posibilă.\n" "Se poate edita numai o singură geometrie de fiecare dată." -#: FlatCAMApp.py:2299 +#: FlatCAMApp.py:2309 msgid "[WARNING_NOTCL] Editor is activated ..." msgstr "[WARNING_NOTCL] Editorul este activ. .." -#: FlatCAMApp.py:2317 +#: FlatCAMApp.py:2327 msgid "Do you want to save the edited object?" msgstr "Vrei sa salvezi obiectul editat?" -#: FlatCAMApp.py:2318 flatcamGUI/FlatCAMGUI.py:1618 +#: FlatCAMApp.py:2328 flatcamGUI/FlatCAMGUI.py:1618 msgid "Close Editor" msgstr "Inchide Editorul" -#: FlatCAMApp.py:2321 FlatCAMApp.py:3413 FlatCAMApp.py:5918 +#: FlatCAMApp.py:2331 FlatCAMApp.py:3423 FlatCAMApp.py:5989 #: FlatCAMTranslation.py:89 flatcamGUI/FlatCAMGUI.py:3730 msgid "Yes" msgstr "Da" -#: FlatCAMApp.py:2322 FlatCAMApp.py:3414 FlatCAMApp.py:5919 +#: FlatCAMApp.py:2332 FlatCAMApp.py:3424 FlatCAMApp.py:5990 #: FlatCAMTranslation.py:90 flatcamGUI/FlatCAMGUI.py:3731 msgid "No" msgstr "Nu" -#: FlatCAMApp.py:2323 FlatCAMApp.py:3415 FlatCAMApp.py:3764 FlatCAMApp.py:5920 +#: FlatCAMApp.py:2333 FlatCAMApp.py:3425 FlatCAMApp.py:3836 FlatCAMApp.py:5991 msgid "Cancel" msgstr "Anuleaza" -#: FlatCAMApp.py:2350 +#: FlatCAMApp.py:2360 msgid "[WARNING] Object empty after edit." msgstr "[WARNING] Obiectul nu are date dupa editare." -#: FlatCAMApp.py:2372 FlatCAMApp.py:2391 FlatCAMApp.py:2403 +#: FlatCAMApp.py:2382 FlatCAMApp.py:2401 FlatCAMApp.py:2413 msgid "[WARNING_NOTCL] Select a Gerber, Geometry or Excellon Object to update." msgstr "" "[WARNING_NOTCL] Selectează un obiect tip Gerber, Geometrie sau Excellon " "pentru salvare." -#: FlatCAMApp.py:2375 +#: FlatCAMApp.py:2385 #, python-format msgid "[selected] %s is updated, returning to App..." msgstr "[selected] %s este actualizat, intoarcere la aplicaţie." -#: FlatCAMApp.py:2740 +#: FlatCAMApp.py:2750 msgid "[ERROR] Could not load defaults file." msgstr "[ERROR] Nu am putut incărca fişierul cu valori default." -#: FlatCAMApp.py:2752 +#: FlatCAMApp.py:2762 msgid "[ERROR] Failed to parse defaults file." msgstr "[ERROR] Parsarea fişierului cu valori default a eșuat." -#: FlatCAMApp.py:2773 FlatCAMApp.py:2777 +#: FlatCAMApp.py:2783 FlatCAMApp.py:2787 msgid "Import FlatCAM Preferences" msgstr "Importa Preferințele FlatCAM" -#: FlatCAMApp.py:2783 +#: FlatCAMApp.py:2793 msgid "[WARNING_NOTCL] FlatCAM preferences import cancelled." msgstr "[WARNING_NOTCL] Importul preferințelor FlatCAM a eșuat." -#: FlatCAMApp.py:2791 FlatCAMApp.py:2845 FlatCAMApp.py:3292 +#: FlatCAMApp.py:2801 FlatCAMApp.py:2855 FlatCAMApp.py:3302 msgid "[ERROR_NOTCL] Could not load defaults file." msgstr "" "[ERROR_NOTCL] Nu a fost posibilă incărcarea fişierului cu valori default." -#: FlatCAMApp.py:2799 FlatCAMApp.py:3301 +#: FlatCAMApp.py:2809 FlatCAMApp.py:3311 msgid "[ERROR_NOTCL] Failed to parse defaults file." msgstr "[ERROR_NOTCL] Parsarea fişierului cu valori default a eșuat." -#: FlatCAMApp.py:2802 +#: FlatCAMApp.py:2812 #, python-format msgid "[success] Imported Defaults from %s" msgstr "[success] Valorile default au fost importate din %s" -#: FlatCAMApp.py:2817 FlatCAMApp.py:2822 +#: FlatCAMApp.py:2827 FlatCAMApp.py:2832 msgid "Export FlatCAM Preferences" msgstr "Exporta Preferințele FlatCAM" -#: FlatCAMApp.py:2829 +#: FlatCAMApp.py:2839 msgid "[WARNING_NOTCL] FlatCAM preferences export cancelled." msgstr "[WARNING_NOTCL] Exportul preferințelor FlatCAM este anulat." -#: FlatCAMApp.py:2864 FlatCAMApp.py:3346 +#: FlatCAMApp.py:2874 FlatCAMApp.py:3356 msgid "[ERROR_NOTCL] Failed to write defaults to file." msgstr "[ERROR_NOTCL] Salvarea valorilor default intr-un fişier a eșuat." -#: FlatCAMApp.py:2917 +#: FlatCAMApp.py:2927 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 eșuat." -#: FlatCAMApp.py:2994 camlib.py:4457 +#: FlatCAMApp.py:3004 camlib.py:4457 msgid "[ERROR_NOTCL] An internal error has ocurred. See shell.\n" msgstr "" "[ERROR_NOTCL] A apărut o eroare internă. Verifică in TCL Shell pt mai multe " "detalii.\n" -#: FlatCAMApp.py:2995 +#: FlatCAMApp.py:3005 #, python-brace-format msgid "" "Object ({kind}) failed because: {error} \n" @@ -161,11 +161,11 @@ msgstr "" "Obiectul ({kind}) a eșuat din cauza: {error} \n" "\n" -#: FlatCAMApp.py:3015 +#: FlatCAMApp.py:3025 msgid "Converting units to " msgstr "Se convertesc unitatile la " -#: FlatCAMApp.py:3094 FlatCAMApp.py:3097 FlatCAMApp.py:3100 FlatCAMApp.py:3103 +#: FlatCAMApp.py:3104 FlatCAMApp.py:3107 FlatCAMApp.py:3110 FlatCAMApp.py:3113 #, python-brace-format msgid "" "[selected] {kind} created/selected: {name}{name}" -#: FlatCAMApp.py:3197 +#: FlatCAMApp.py:3207 #, python-brace-format msgid "" "FlatCAM
Version {version} {beta} ({date}) - " @@ -196,35 +196,35 @@ msgstr "" "flatcam/src/Beta/\">aici.
Sectiunea DOWNLOAD este aici.
" -#: FlatCAMApp.py:3350 +#: FlatCAMApp.py:3360 msgid "[success] Defaults saved." msgstr "[success] Valorile default au fost salvate." -#: FlatCAMApp.py:3371 +#: FlatCAMApp.py:3381 msgid "[ERROR_NOTCL] Could not load factory defaults file." msgstr "" "[ERROR_NOTCL] Fişierul cu valori default de fabrică nu a putut fi deschis." -#: FlatCAMApp.py:3380 +#: FlatCAMApp.py:3390 msgid "[ERROR_NOTCL] Failed to parse factory defaults file." msgstr "" "[ERROR_NOTCL] Parsarea fişierului cu valori default de fabrică a eșuat." -#: FlatCAMApp.py:3394 +#: FlatCAMApp.py:3404 msgid "[ERROR_NOTCL] Failed to write factory defaults to file." msgstr "" "[ERROR_NOTCL]] Salvarea fişierului cu valori default de fabrică intr-un " "fişier a eșuat." -#: FlatCAMApp.py:3398 +#: FlatCAMApp.py:3408 msgid "Factory defaults saved." msgstr "Valori default de fabrică au fost salvate." -#: FlatCAMApp.py:3403 flatcamGUI/FlatCAMGUI.py:3106 +#: FlatCAMApp.py:3413 flatcamGUI/FlatCAMGUI.py:3106 msgid "[WARNING_NOTCL] Application is saving the project. Please wait ..." msgstr "[WARNING_NOTCL] Aplicația salvează proiectul. Vă rugăm aşteptați ..." -#: FlatCAMApp.py:3408 +#: FlatCAMApp.py:3418 msgid "" "There are files/objects modified in FlatCAM. \n" "Do you want to Save the project?" @@ -232,11 +232,11 @@ msgstr "" "FlatCAM are fişiere/obiecte care au fost modificate. \n" "Dorești să Salvezi proiectul?" -#: FlatCAMApp.py:3411 FlatCAMApp.py:5916 +#: FlatCAMApp.py:3421 FlatCAMApp.py:5987 msgid "Save changes" msgstr "Salvează modificarile." -#: FlatCAMApp.py:3478 +#: FlatCAMApp.py:3488 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 " @@ -253,72 +253,72 @@ msgstr "" "informatii și rezultatul ar putea să nu fie cel dorit. \n" "Verifică codul G-Code generat." -#: FlatCAMApp.py:3519 +#: FlatCAMApp.py:3529 msgid "[ERROR_NOTCL] Failed. Excellon joining works only on Excellon objects." msgstr "" "[ERROR_NOTCL] Eșuat. Fuzionarea Excellon functionează doar cu obiecte de tip " "Excellon." -#: FlatCAMApp.py:3541 +#: FlatCAMApp.py:3551 msgid "[ERROR_NOTCL] Failed. Gerber joining works only on Gerber objects." msgstr "" "[ERROR_NOTCL] Eșuat. Fuzionarea Gerber functionează doar cu obiecte de tip " "Gerber ." -#: FlatCAMApp.py:3556 FlatCAMApp.py:3581 +#: FlatCAMApp.py:3566 FlatCAMApp.py:3591 msgid "[ERROR_NOTCL] Failed. Select a Geometry Object and try again." msgstr "" "[ERROR_NOTCL] Eșuat. Selectează un obiect Geometrie și încearcă din nou." -#: FlatCAMApp.py:3560 FlatCAMApp.py:3585 +#: FlatCAMApp.py:3570 FlatCAMApp.py:3595 #, python-format msgid "[ERROR_NOTCL] Expected a FlatCAMGeometry, got %s" msgstr "[ERROR_NOTCL] Se astepta o Geometrie FlatCAM, s-a primit %s" -#: FlatCAMApp.py:3573 +#: FlatCAMApp.py:3583 msgid "[success] A Geometry object was converted to MultiGeo type." msgstr "[success] Un obiect Geometrie a fost convertit la tipul MultiGeo." -#: FlatCAMApp.py:3599 +#: FlatCAMApp.py:3609 msgid "[success] A Geometry object was converted to SingleGeo type." msgstr "[success] Un obiect Geometrie a fost convertit la tipul SingleGeo ." -#: FlatCAMApp.py:3763 FlatCAMApp.py:4603 FlatCAMApp.py:6191 FlatCAMApp.py:6202 -#: FlatCAMApp.py:6442 FlatCAMApp.py:6452 +#: FlatCAMApp.py:3835 FlatCAMApp.py:4674 FlatCAMApp.py:6262 FlatCAMApp.py:6273 +#: FlatCAMApp.py:6513 FlatCAMApp.py:6523 msgid "Ok" msgstr "Ok" -#: FlatCAMApp.py:3809 +#: FlatCAMApp.py:3880 #, python-format msgid "[success] Converted units to %s" msgstr "[success] Conversie unitati la %s" -#: FlatCAMApp.py:3820 +#: FlatCAMApp.py:3891 msgid "[WARNING_NOTCL] Units conversion cancelled." msgstr "[WARNING_NOTCL] Conversia unitatilor este anulată." -#: FlatCAMApp.py:4472 +#: FlatCAMApp.py:4543 msgid "Open file" msgstr "Deschide fişierul ..." -#: FlatCAMApp.py:4503 FlatCAMApp.py:4508 +#: FlatCAMApp.py:4574 FlatCAMApp.py:4579 msgid "Export G-Code ..." msgstr "Exporta G-Code ..." -#: FlatCAMApp.py:4511 +#: FlatCAMApp.py:4582 msgid "[WARNING_NOTCL] Export Code cancelled." msgstr "[WARNING_NOTCL Exportul GCode este anulat." -#: FlatCAMApp.py:4521 +#: FlatCAMApp.py:4592 msgid "[WARNING] No such file or directory" msgstr "[WARNING] Nu exista un aşa fişier sau director" -#: FlatCAMApp.py:4528 +#: FlatCAMApp.py:4599 #, python-format msgid "Saved to: %s" msgstr "Salvat in: %s" -#: FlatCAMApp.py:4591 FlatCAMApp.py:4624 FlatCAMApp.py:4635 FlatCAMApp.py:4646 +#: FlatCAMApp.py:4662 FlatCAMApp.py:4695 FlatCAMApp.py:4706 FlatCAMApp.py:4717 #: flatcamTools/ToolNonCopperClear.py:489 flatcamTools/ToolSolderPaste.py:765 msgid "" "[WARNING_NOTCL] Please enter a tool diameter with non-zero value, in Float " @@ -327,12 +327,12 @@ msgstr "" "[WARNING_NOTCL] Introdu un diametru al uneltei valid: valoare ne-nula in " "format Real." -#: FlatCAMApp.py:4596 FlatCAMApp.py:4629 FlatCAMApp.py:4640 FlatCAMApp.py:4651 +#: FlatCAMApp.py:4667 FlatCAMApp.py:4700 FlatCAMApp.py:4711 FlatCAMApp.py:4722 #: flatcamGUI/FlatCAMGUI.py:3001 msgid "[WARNING_NOTCL] Adding Tool cancelled ..." msgstr "[WARNING_NOTCL] Adăugarea unei unelte anulată ..." -#: FlatCAMApp.py:4599 +#: FlatCAMApp.py:4670 msgid "" "Adding Tool works only when Advanced is checked.\n" "Go to Preferences -> General - Show Advanced Options." @@ -340,35 +340,35 @@ msgstr "" "Adăugarea de unelte noi functionează doar in modul Avansat.\n" "Pentru aceasta mergi in Preferințe -> General - Activează Modul Avansat." -#: FlatCAMApp.py:4712 +#: FlatCAMApp.py:4783 msgid "Object(s) deleted ..." msgstr "Obiect(ele) șters(e)." -#: FlatCAMApp.py:4716 +#: FlatCAMApp.py:4787 msgid "Failed. No object(s) selected..." msgstr "Eșuat. Nici-un obiect nu este selectat." -#: FlatCAMApp.py:4718 +#: FlatCAMApp.py:4789 msgid "Save the work in Editor and try again ..." msgstr "Salvează continutul din Editor și încearcă din nou." -#: FlatCAMApp.py:4731 +#: FlatCAMApp.py:4802 msgid "Click to set the origin ..." msgstr "Click pentru a seta originea..." -#: FlatCAMApp.py:4743 +#: FlatCAMApp.py:4814 msgid "Jump to ..." msgstr "Sari la ..." -#: FlatCAMApp.py:4744 +#: FlatCAMApp.py:4815 msgid "Enter the coordinates in format X,Y:" msgstr "Introduceți coordonatele in format X,Y:" -#: FlatCAMApp.py:4751 +#: FlatCAMApp.py:4822 msgid "Wrong coordinates. Enter coordinates in format: X,Y" msgstr "Coordonate gresite. Introduceți coordonatele in format X,Y." -#: FlatCAMApp.py:4769 flatcamEditors/FlatCAMExcEditor.py:2320 +#: FlatCAMApp.py:4840 flatcamEditors/FlatCAMExcEditor.py:2320 #: flatcamEditors/FlatCAMExcEditor.py:2327 #: flatcamEditors/FlatCAMGeoEditor.py:3648 #: flatcamEditors/FlatCAMGeoEditor.py:3662 @@ -382,88 +382,88 @@ msgstr "Coordonate gresite. Introduceți coordonatele in format X,Y." msgid "[success] Done." msgstr "[success] Executat." -#: FlatCAMApp.py:4901 FlatCAMApp.py:4968 +#: FlatCAMApp.py:4972 FlatCAMApp.py:5039 msgid "[WARNING_NOTCL] No object is selected. Select an object and try again." msgstr "" "[WARNING_NOTCL] Nici-un obiect nu este selectat. Selectează un obiect și " "incearcă din nou." -#: FlatCAMApp.py:5009 +#: FlatCAMApp.py:5080 msgid "[success] Origin set ..." msgstr "[success] Originea a fost setată ..." -#: FlatCAMApp.py:5029 +#: FlatCAMApp.py:5100 msgid "Preferences" msgstr "Preferințe" -#: FlatCAMApp.py:5049 +#: FlatCAMApp.py:5120 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:5074 +#: FlatCAMApp.py:5145 msgid "[success] Flip on Y axis done." msgstr "[success] Oglindire pe axa Y executată." -#: FlatCAMApp.py:5076 FlatCAMApp.py:5116 +#: FlatCAMApp.py:5147 FlatCAMApp.py:5187 #: flatcamEditors/FlatCAMGeoEditor.py:1355 #: flatcamEditors/FlatCAMGrbEditor.py:5343 flatcamTools/ToolTransform.py:748 #, python-format msgid "[ERROR_NOTCL] Due of %s, Flip action was not executed." msgstr "[ERROR_NOTCL] Datorita %s, oglindirea a eșuat." -#: FlatCAMApp.py:5089 +#: FlatCAMApp.py:5160 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:5114 +#: FlatCAMApp.py:5185 msgid "[success] Flip on X axis done." msgstr "[success] Oglindirea pe axa X executată." -#: FlatCAMApp.py:5129 +#: FlatCAMApp.py:5200 msgid "[WARNING_NOTCL] No object selected to Rotate." msgstr "[WARNING_NOTCL] Nici-un obiect selectat pentru Rotaţie." -#: FlatCAMApp.py:5132 FlatCAMApp.py:5177 FlatCAMApp.py:5208 +#: FlatCAMApp.py:5203 FlatCAMApp.py:5248 FlatCAMApp.py:5279 msgid "Transform" msgstr "Transformare" -#: FlatCAMApp.py:5132 FlatCAMApp.py:5177 FlatCAMApp.py:5208 +#: FlatCAMApp.py:5203 FlatCAMApp.py:5248 FlatCAMApp.py:5279 msgid "Enter the Angle value:" msgstr "Introduceți valoaea Unghiului:" -#: FlatCAMApp.py:5162 +#: FlatCAMApp.py:5233 msgid "[success] Rotation done." msgstr "[success] Rotaţie executată." -#: FlatCAMApp.py:5164 flatcamEditors/FlatCAMGeoEditor.py:1298 +#: FlatCAMApp.py:5235 flatcamEditors/FlatCAMGeoEditor.py:1298 #: flatcamEditors/FlatCAMGrbEditor.py:5272 flatcamTools/ToolTransform.py:677 #, python-format msgid "[ERROR_NOTCL] Due of %s, rotation movement was not executed." msgstr "[ERROR_NOTCL] Datorita %s, Rotatia a eșuat." -#: FlatCAMApp.py:5175 +#: FlatCAMApp.py:5246 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:5196 +#: FlatCAMApp.py:5267 msgid "[success] Skew on X axis done." msgstr "[success] Deformare pe axa X executată." -#: FlatCAMApp.py:5206 +#: FlatCAMApp.py:5277 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:5227 +#: FlatCAMApp.py:5298 msgid "[success] Skew on Y axis done." msgstr "[success] Deformare pe axa Y executată." -#: FlatCAMApp.py:5297 +#: FlatCAMApp.py:5368 msgid "Grid On/Off" msgstr "Grid On/Off" -#: FlatCAMApp.py:5310 flatcamEditors/FlatCAMGeoEditor.py:937 +#: FlatCAMApp.py:5381 flatcamEditors/FlatCAMGeoEditor.py:937 #: flatcamEditors/FlatCAMGrbEditor.py:2381 #: flatcamEditors/FlatCAMGrbEditor.py:4861 flatcamGUI/ObjectUI.py:991 #: flatcamTools/ToolDblSided.py:160 flatcamTools/ToolDblSided.py:208 @@ -473,7 +473,7 @@ msgstr "Grid On/Off" msgid "Add" msgstr "Adaugă" -#: FlatCAMApp.py:5311 FlatCAMObj.py:3295 +#: FlatCAMApp.py:5382 FlatCAMObj.py:3295 #: flatcamEditors/FlatCAMGrbEditor.py:2386 flatcamGUI/FlatCAMGUI.py:527 #: flatcamGUI/FlatCAMGUI.py:724 flatcamGUI/FlatCAMGUI.py:1616 #: flatcamGUI/FlatCAMGUI.py:1953 flatcamGUI/ObjectUI.py:1007 @@ -482,68 +482,68 @@ msgstr "Adaugă" msgid "Delete" msgstr "Șterge" -#: FlatCAMApp.py:5324 +#: FlatCAMApp.py:5395 msgid "New Grid ..." msgstr "Grid nou ..." -#: FlatCAMApp.py:5325 +#: FlatCAMApp.py:5396 msgid "Enter a Grid Value:" msgstr "Introduceti of valoare pt Grid:" -#: FlatCAMApp.py:5333 FlatCAMApp.py:5360 +#: FlatCAMApp.py:5404 FlatCAMApp.py:5431 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:5339 +#: FlatCAMApp.py:5410 msgid "[success] New Grid added ..." msgstr "[success] O noua valoare pt Grila a fost adăugată..." -#: FlatCAMApp.py:5342 +#: FlatCAMApp.py:5413 msgid "[WARNING_NOTCL] Grid already exists ..." msgstr "[WARNING_NOTCL] Grila există deja." -#: FlatCAMApp.py:5345 +#: FlatCAMApp.py:5416 msgid "[WARNING_NOTCL] Adding New Grid cancelled ..." msgstr "[WARNING_NOTCL] Adăugarea unei valori de Grilă a fost anulată ..." -#: FlatCAMApp.py:5367 +#: FlatCAMApp.py:5438 msgid "[ERROR_NOTCL] Grid Value does not exist ..." msgstr "[ERROR_NOTCL] Valoarea Grilei nu există ..." -#: FlatCAMApp.py:5370 +#: FlatCAMApp.py:5441 msgid "[success] Grid Value deleted ..." msgstr "[success] Valoarea Grila a fost stearsă." -#: FlatCAMApp.py:5373 +#: FlatCAMApp.py:5444 msgid "[WARNING_NOTCL] Delete Grid value cancelled ..." msgstr "[WARNING_NOTCL] Ștergerea unei valori de Grilă a fost anulată ..." -#: FlatCAMApp.py:5412 +#: FlatCAMApp.py:5483 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:5416 +#: FlatCAMApp.py:5487 msgid "Name copied on clipboard ..." msgstr "Numele a fost copiat pe Clipboard ..." -#: FlatCAMApp.py:5458 flatcamEditors/FlatCAMGrbEditor.py:3901 +#: FlatCAMApp.py:5529 flatcamEditors/FlatCAMGrbEditor.py:3901 msgid "[success] Coordinates copied to clipboard." msgstr "[success] Coordonatele au fost copiate in clipboard." -#: FlatCAMApp.py:5714 FlatCAMApp.py:5717 FlatCAMApp.py:5720 FlatCAMApp.py:5723 -#: FlatCAMApp.py:5738 FlatCAMApp.py:5741 FlatCAMApp.py:5744 FlatCAMApp.py:5747 -#: FlatCAMApp.py:5787 FlatCAMApp.py:5790 FlatCAMApp.py:5793 FlatCAMApp.py:5796 +#: FlatCAMApp.py:5785 FlatCAMApp.py:5788 FlatCAMApp.py:5791 FlatCAMApp.py:5794 +#: FlatCAMApp.py:5809 FlatCAMApp.py:5812 FlatCAMApp.py:5815 FlatCAMApp.py:5818 +#: FlatCAMApp.py:5858 FlatCAMApp.py:5861 FlatCAMApp.py:5864 FlatCAMApp.py:5867 #: ObjectCollection.py:719 ObjectCollection.py:722 ObjectCollection.py:725 #: ObjectCollection.py:728 #, python-brace-format msgid "[selected]{name} selected" msgstr "[selected]{name} selectat" -#: FlatCAMApp.py:5913 +#: FlatCAMApp.py:5984 msgid "" "There are files/objects opened in FlatCAM.\n" "Creating a New project will delete them.\n" @@ -553,111 +553,111 @@ msgstr "" "Crearea unui nou Proiect le va șterge..\n" "Doriti să Salvati proiectul curentt?" -#: FlatCAMApp.py:5934 +#: FlatCAMApp.py:6005 msgid "[success] New Project created..." msgstr "[success] Un nou Proiect a fost creat..." -#: FlatCAMApp.py:6050 FlatCAMApp.py:6053 flatcamGUI/FlatCAMGUI.py:608 +#: FlatCAMApp.py:6121 FlatCAMApp.py:6124 flatcamGUI/FlatCAMGUI.py:608 #: flatcamGUI/FlatCAMGUI.py:1832 msgid "Open Gerber" msgstr "Încarcă Gerber" -#: FlatCAMApp.py:6058 +#: FlatCAMApp.py:6129 msgid "[WARNING_NOTCL] Open Gerber cancelled." msgstr "[WARNING_NOTCL] Incărcarea unui fişier Gerber este anulată." -#: FlatCAMApp.py:6079 FlatCAMApp.py:6082 flatcamGUI/FlatCAMGUI.py:609 +#: FlatCAMApp.py:6150 FlatCAMApp.py:6153 flatcamGUI/FlatCAMGUI.py:609 #: flatcamGUI/FlatCAMGUI.py:1833 msgid "Open Excellon" msgstr "Încarcă Excellon" -#: FlatCAMApp.py:6087 +#: FlatCAMApp.py:6158 msgid "[WARNING_NOTCL] Open Excellon cancelled." msgstr "[WARNING_NOTCL] Incărcarea unui fişier Excellon este anulată." -#: FlatCAMApp.py:6109 FlatCAMApp.py:6112 +#: FlatCAMApp.py:6180 FlatCAMApp.py:6183 msgid "Open G-Code" msgstr "Încarcă G-Code" -#: FlatCAMApp.py:6117 +#: FlatCAMApp.py:6188 msgid "[WARNING_NOTCL] Open G-Code cancelled." msgstr "[WARNING_NOTCL] Incărcarea unui fişier G-Code este anulată." -#: FlatCAMApp.py:6135 FlatCAMApp.py:6138 +#: FlatCAMApp.py:6206 FlatCAMApp.py:6209 msgid "Open Project" msgstr "Încarcă Project" -#: FlatCAMApp.py:6146 +#: FlatCAMApp.py:6217 msgid "[WARNING_NOTCL] Open Project cancelled." msgstr "[WARNING_NOTCL] Incărcarea unui Proiect a fost anulată." -#: FlatCAMApp.py:6165 FlatCAMApp.py:6168 +#: FlatCAMApp.py:6236 FlatCAMApp.py:6239 msgid "Open Configuration File" msgstr "Încarcă un fişier de Configurare" -#: FlatCAMApp.py:6172 +#: FlatCAMApp.py:6243 msgid "[WARNING_NOTCL] Open Config cancelled." msgstr "[WARNING_NOTCL] Incărcarea unui fişier de Configurare este anulată." -#: FlatCAMApp.py:6187 FlatCAMApp.py:6438 FlatCAMApp.py:8591 FlatCAMApp.py:8611 -#: FlatCAMApp.py:8632 FlatCAMApp.py:8654 +#: FlatCAMApp.py:6258 FlatCAMApp.py:6509 FlatCAMApp.py:8662 FlatCAMApp.py:8682 +#: FlatCAMApp.py:8703 FlatCAMApp.py:8725 msgid "[WARNING_NOTCL] No object selected." msgstr "[WARNING_NOTCL] Nici-un obiect selectat." -#: FlatCAMApp.py:6188 FlatCAMApp.py:6439 +#: FlatCAMApp.py:6259 FlatCAMApp.py:6510 msgid "Please Select a Geometry object to export" msgstr "Selectează un obiect Geometrie pentru export" -#: FlatCAMApp.py:6199 +#: FlatCAMApp.py:6270 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:6212 FlatCAMApp.py:6216 +#: FlatCAMApp.py:6283 FlatCAMApp.py:6287 msgid "Export SVG" msgstr "Exporta SVG" -#: FlatCAMApp.py:6221 +#: FlatCAMApp.py:6292 msgid "[WARNING_NOTCL] Export SVG cancelled." msgstr "[WARNING_NOTCL] Exportul SVG este anulat." -#: FlatCAMApp.py:6240 +#: FlatCAMApp.py:6311 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:6246 FlatCAMApp.py:6250 +#: FlatCAMApp.py:6317 FlatCAMApp.py:6321 msgid "Export PNG Image" msgstr "Exporta imagine PNG" -#: FlatCAMApp.py:6255 +#: FlatCAMApp.py:6326 msgid "Export PNG cancelled." msgstr "Exportul imagine PNG este anulat." -#: FlatCAMApp.py:6274 +#: FlatCAMApp.py:6345 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:6279 FlatCAMApp.py:6402 +#: FlatCAMApp.py:6350 FlatCAMApp.py:6473 msgid "" "[ERROR_NOTCL] Failed. Only Gerber objects can be saved as Gerber files..." msgstr "" "[ERROR_NOTCL] Eșuat. Doar obiectele tip Gerber pot fi salvate ca fişiere " "Gerber..." -#: FlatCAMApp.py:6291 +#: FlatCAMApp.py:6362 msgid "Save Gerber source file" msgstr "Salvează codul sursa Gerber ca fişier" -#: FlatCAMApp.py:6296 +#: FlatCAMApp.py:6367 msgid "[WARNING_NOTCL] Save Gerber source file cancelled." msgstr "[WARNING_NOTCL] Salvarea codului sursa Gerber este anulată." -#: FlatCAMApp.py:6315 +#: FlatCAMApp.py:6386 msgid "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." @@ -665,22 +665,22 @@ msgstr "" "[WARNING_NOTCL] Nici-un obiect selectat. Selectează un obiect Excellon " "pentru export." -#: FlatCAMApp.py:6320 FlatCAMApp.py:6361 +#: FlatCAMApp.py:6391 FlatCAMApp.py:6432 msgid "" "[ERROR_NOTCL] Failed. Only Excellon objects can be saved as Excellon files..." msgstr "" "[ERROR_NOTCL] Eșuat. Doar obiectele tip Excellon pot fi salvate ca fişiere " "Excellon ..." -#: FlatCAMApp.py:6328 FlatCAMApp.py:6332 +#: FlatCAMApp.py:6399 FlatCAMApp.py:6403 msgid "Save Excellon source file" msgstr "Salvează codul sursa Excellon ca fişier" -#: FlatCAMApp.py:6337 +#: FlatCAMApp.py:6408 msgid "[WARNING_NOTCL] Saving Excellon source file cancelled." msgstr "[WARNING_NOTCL] Salvarea codului sursa Excellon este anulată." -#: FlatCAMApp.py:6356 +#: FlatCAMApp.py:6427 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." @@ -688,94 +688,94 @@ msgstr "" "[WARNING_NOTCL] Nici-un obiect selectat. Selectează un obiect Excellon " "pentru export." -#: FlatCAMApp.py:6369 FlatCAMApp.py:6373 +#: FlatCAMApp.py:6440 FlatCAMApp.py:6444 msgid "Export Excellon" msgstr "Exporta Excellon" -#: FlatCAMApp.py:6378 +#: FlatCAMApp.py:6449 msgid "[WARNING_NOTCL] Export Excellon cancelled." msgstr "[WARNING_NOTCL] Exportul Excellon anulat." -#: FlatCAMApp.py:6397 +#: FlatCAMApp.py:6468 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:6410 FlatCAMApp.py:6414 +#: FlatCAMApp.py:6481 FlatCAMApp.py:6485 msgid "Export Gerber" msgstr "Exporta Gerber" -#: FlatCAMApp.py:6419 +#: FlatCAMApp.py:6490 msgid "[WARNING_NOTCL] Export Gerber cancelled." msgstr "[WARNING_NOTCL] Exportul Gerber este anulat." -#: FlatCAMApp.py:6449 +#: FlatCAMApp.py:6520 msgid "[ERROR_NOTCL] Only Geometry objects can be used." msgstr "[ERROR_NOTCL] Doar obiecte tip Geometrie pot fi folosite." -#: FlatCAMApp.py:6463 FlatCAMApp.py:6467 +#: FlatCAMApp.py:6534 FlatCAMApp.py:6538 msgid "Export DXF" msgstr "Exporta DXF" -#: FlatCAMApp.py:6473 +#: FlatCAMApp.py:6544 msgid "[WARNING_NOTCL] Export DXF cancelled." msgstr "[WARNING_NOTCL] Exportul DXF anulat." -#: FlatCAMApp.py:6493 FlatCAMApp.py:6496 +#: FlatCAMApp.py:6564 FlatCAMApp.py:6567 msgid "Import SVG" msgstr "Importa SVG" -#: FlatCAMApp.py:6505 +#: FlatCAMApp.py:6576 msgid "[WARNING_NOTCL] Open SVG cancelled." msgstr "[WARNING_NOTCL] Importul SVG anulat." -#: FlatCAMApp.py:6524 FlatCAMApp.py:6528 +#: FlatCAMApp.py:6595 FlatCAMApp.py:6599 msgid "Import DXF" msgstr "Importa DXF" -#: FlatCAMApp.py:6537 +#: FlatCAMApp.py:6608 msgid "[WARNING_NOTCL] Open DXF cancelled." msgstr "[WARNING_NOTCL] Incărcarea fişier DXF anulată." -#: FlatCAMApp.py:6555 +#: FlatCAMApp.py:6626 #, python-format msgid "%s" msgstr "%s" -#: FlatCAMApp.py:6575 +#: FlatCAMApp.py:6646 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:6582 +#: FlatCAMApp.py:6653 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:6590 +#: FlatCAMApp.py:6661 msgid "Source Editor" msgstr "Editor Cod" -#: FlatCAMApp.py:6600 +#: FlatCAMApp.py:6671 #, python-format msgid "[ERROR]App.on_view_source() -->%s" msgstr "[ERROR]App.on_view_source() -->%s" -#: FlatCAMApp.py:6612 FlatCAMApp.py:7754 FlatCAMObj.py:5588 +#: FlatCAMApp.py:6683 FlatCAMApp.py:7825 FlatCAMObj.py:5588 #: flatcamTools/ToolSolderPaste.py:1278 msgid "Code Editor" msgstr "Editor Cod" -#: FlatCAMApp.py:6624 +#: FlatCAMApp.py:6695 msgid "Script Editor" msgstr "Editor Script." -#: FlatCAMApp.py:6627 +#: FlatCAMApp.py:6698 msgid "" "#\n" "# CREATE A NEW FLATCAM TCL SCRIPT\n" @@ -819,99 +819,99 @@ msgstr "" "#\n" "\n" -#: FlatCAMApp.py:6650 FlatCAMApp.py:6653 +#: FlatCAMApp.py:6721 FlatCAMApp.py:6724 msgid "Open TCL script" msgstr "Încarcă TCL script" -#: FlatCAMApp.py:6661 +#: FlatCAMApp.py:6732 msgid "[WARNING_NOTCL] Open TCL script cancelled." msgstr "[WARNING_NOTCL] Incărcarea TCL script anulată." -#: FlatCAMApp.py:6673 +#: FlatCAMApp.py:6744 #, python-format msgid "[ERROR]App.on_fileopenscript() -->%s" msgstr "[ERROR]App.on_fileopenscript() -->%s" -#: FlatCAMApp.py:6699 FlatCAMApp.py:6702 +#: FlatCAMApp.py:6770 FlatCAMApp.py:6773 msgid "Run TCL script" msgstr "Ruleaza TCL script" -#: FlatCAMApp.py:6710 +#: FlatCAMApp.py:6781 msgid "[WARNING_NOTCL] Run TCL script cancelled." msgstr "[WARNING_NOTCL] Rularea fisierului Script a fost anulată." -#: FlatCAMApp.py:6760 FlatCAMApp.py:6764 +#: FlatCAMApp.py:6831 FlatCAMApp.py:6835 msgid "Save Project As ..." msgstr "Salvează Proiectul ca ..." -#: FlatCAMApp.py:6761 +#: FlatCAMApp.py:6832 #, python-brace-format msgid "{l_save}/Project_{date}" msgstr "{l_save}/Proiect_{date}" -#: FlatCAMApp.py:6769 +#: FlatCAMApp.py:6840 msgid "[WARNING_NOTCL] Save Project cancelled." msgstr "[WARNING_NOTCL] Salvarea Proiect anulată." -#: FlatCAMApp.py:6813 +#: FlatCAMApp.py:6884 msgid "Exporting SVG" msgstr "SVG in curs de export" -#: FlatCAMApp.py:6847 FlatCAMApp.py:6953 FlatCAMApp.py:7068 +#: FlatCAMApp.py:6918 FlatCAMApp.py:7024 FlatCAMApp.py:7139 #, python-format msgid "[success] SVG file exported to %s" msgstr "[success] Fişier SVG exportat in %s" -#: FlatCAMApp.py:6878 FlatCAMApp.py:6999 +#: FlatCAMApp.py:6949 FlatCAMApp.py:7070 #, 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:6956 FlatCAMApp.py:7071 +#: FlatCAMApp.py:7027 FlatCAMApp.py:7142 msgid "Generating Film ... Please wait." msgstr "Filmul se generează ... Aşteaptă!" -#: FlatCAMApp.py:7219 +#: FlatCAMApp.py:7290 #, python-format msgid "[success] Excellon file exported to %s" msgstr "[success] Fişierul Excellon exportat in %s" -#: FlatCAMApp.py:7226 +#: FlatCAMApp.py:7297 msgid "Exporting Excellon" msgstr "Excellon in curs de export" -#: FlatCAMApp.py:7231 FlatCAMApp.py:7238 +#: FlatCAMApp.py:7302 FlatCAMApp.py:7309 msgid "[ERROR_NOTCL] Could not export Excellon file." msgstr "[ERROR_NOTCL] Fişierul Excellon nu a putut fi exportat." -#: FlatCAMApp.py:7336 +#: FlatCAMApp.py:7407 #, python-format msgid "[success] Gerber file exported to %s" msgstr "[success] Fişier Gerber exportat in %s" -#: FlatCAMApp.py:7343 +#: FlatCAMApp.py:7414 msgid "Exporting Gerber" msgstr "Gerber in curs de export" -#: FlatCAMApp.py:7348 FlatCAMApp.py:7355 +#: FlatCAMApp.py:7419 FlatCAMApp.py:7426 msgid "[ERROR_NOTCL] Could not export Gerber file." msgstr "[ERROR_NOTCL] Fişierul Gerber nu a putut fi exportat." -#: FlatCAMApp.py:7395 +#: FlatCAMApp.py:7466 #, python-format msgid "[success] DXF file exported to %s" msgstr "[success] Fişierul DXF exportat in %s" -#: FlatCAMApp.py:7401 +#: FlatCAMApp.py:7472 msgid "Exporting DXF" msgstr "DXF in curs de export" -#: FlatCAMApp.py:7406 FlatCAMApp.py:7413 +#: FlatCAMApp.py:7477 FlatCAMApp.py:7484 msgid "[[WARNING_NOTCL]] Could not export DXF file." msgstr "[[WARNING_NOTCL]] Fişierul DXF nu a putut fi exportat." -#: FlatCAMApp.py:7433 FlatCAMApp.py:7475 FlatCAMApp.py:7519 +#: FlatCAMApp.py:7504 FlatCAMApp.py:7546 FlatCAMApp.py:7590 msgid "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" @@ -919,102 +919,102 @@ msgstr "" "[ERROR_NOTCL] Typul parametrului nu este compatibil. Doar Geometrie is " "Gerber sunt acceptate." -#: FlatCAMApp.py:7443 +#: FlatCAMApp.py:7514 msgid "Importing SVG" msgstr "SVG in curs de ia fi importat" -#: FlatCAMApp.py:7454 FlatCAMApp.py:7496 FlatCAMApp.py:7539 FlatCAMApp.py:7616 -#: FlatCAMApp.py:7677 FlatCAMApp.py:7740 flatcamTools/ToolPDF.py:212 +#: FlatCAMApp.py:7525 FlatCAMApp.py:7567 FlatCAMApp.py:7610 FlatCAMApp.py:7687 +#: FlatCAMApp.py:7748 FlatCAMApp.py:7811 flatcamTools/ToolPDF.py:212 #, python-format msgid "[success] Opened: %s" msgstr "[success] Incărcat: %s" -#: FlatCAMApp.py:7485 +#: FlatCAMApp.py:7556 msgid "Importing DXF" msgstr "DXF in curs de a fi importat" -#: FlatCAMApp.py:7527 +#: FlatCAMApp.py:7598 msgid "Importing Image" msgstr "Imaginea in curs de a fi importata" -#: FlatCAMApp.py:7568 FlatCAMApp.py:7570 +#: FlatCAMApp.py:7639 FlatCAMApp.py:7641 #, python-format msgid "[ERROR_NOTCL] Failed to open file: %s" msgstr "[ERROR_NOTCL] Eşec in incărcarea fişierului %s" -#: FlatCAMApp.py:7573 +#: FlatCAMApp.py:7644 #, python-brace-format msgid "[ERROR_NOTCL] Failed to parse file: {name}. {error}" msgstr "[ERROR_NOTCL] Eşec in parsarea fişierului: {name}. {error}" -#: FlatCAMApp.py:7580 FlatCAMObj.py:4266 +#: FlatCAMApp.py:7651 FlatCAMObj.py:4266 #: flatcamEditors/FlatCAMExcEditor.py:2077 msgid "[ERROR] An internal error has ocurred. See shell.\n" msgstr "" "[ERROR] A apărut o eroare interna. Verifică in TCL Shell pt mai multe " "detalii.\n" -#: FlatCAMApp.py:7589 +#: FlatCAMApp.py:7660 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:7597 +#: FlatCAMApp.py:7668 msgid "Opening Gerber" msgstr "Gerber in curs de incărcare" -#: FlatCAMApp.py:7607 +#: FlatCAMApp.py:7678 msgid "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." msgstr "" "[ERROR_NOTCL] Incărcarea Gerber a eșuat. Probabil nu este de tip Gerber." -#: FlatCAMApp.py:7640 flatcamTools/ToolPcbWizard.py:421 +#: FlatCAMApp.py:7711 flatcamTools/ToolPcbWizard.py:421 msgid "[ERROR_NOTCL] This is not Excellon file." msgstr "[ERROR_NOTCL] Acesta nu este un fişier Excellon." -#: FlatCAMApp.py:7643 +#: FlatCAMApp.py:7714 #, python-format msgid "[ERROR_NOTCL] Cannot open file: %s" msgstr "[ERROR_NOTCL] Fişierul %s nu se poate incărca." -#: FlatCAMApp.py:7648 flatcamTools/ToolPcbWizard.py:429 +#: FlatCAMApp.py:7719 flatcamTools/ToolPcbWizard.py:429 msgid "[ERROR_NOTCL] An internal error has occurred. See shell.\n" msgstr "" "[ERROR_NOTCL] A apărut o eroare interna. Verifică in TCL Shell pt mai multe " "detalii.\n" -#: FlatCAMApp.py:7661 flatcamTools/ToolPDF.py:262 +#: FlatCAMApp.py:7732 flatcamTools/ToolPDF.py:262 #: flatcamTools/ToolPcbWizard.py:442 #, python-format msgid "[ERROR_NOTCL] No geometry found in file: %s" msgstr "" "[ERROR_NOTCL] Nici-o informaţie de tip geometrie nu s-a gasit in fişierul: %s" -#: FlatCAMApp.py:7664 +#: FlatCAMApp.py:7735 msgid "Opening Excellon." msgstr "Excellon in curs de incărcare" -#: FlatCAMApp.py:7670 +#: FlatCAMApp.py:7741 msgid "[ERROR_NOTCL] Open Excellon file failed. Probable not an Excellon file." msgstr "" "[ERROR_NOTCL] Incărcarea Excellon a eșuat. Probabil nu este de tip Excellon." -#: FlatCAMApp.py:7707 +#: FlatCAMApp.py:7778 #, python-format msgid "[ERROR_NOTCL] Failed to open %s" msgstr "[ERROR_NOTCL] Incărcarea fişierului %s a eșuat." -#: FlatCAMApp.py:7717 +#: FlatCAMApp.py:7788 msgid "[ERROR_NOTCL] This is not GCODE" msgstr "[ERROR_NOTCL] Acest obiect nu este de tip GCode" -#: FlatCAMApp.py:7723 +#: FlatCAMApp.py:7794 msgid "Opening G-Code." msgstr "G-Code in curs de incărcare" -#: FlatCAMApp.py:7731 +#: FlatCAMApp.py:7802 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 " @@ -1025,26 +1025,26 @@ msgstr "" "Incercarea de a crea un obiect CNCJob din G-Code a eșuat in timpul " "procesarii." -#: FlatCAMApp.py:7771 +#: FlatCAMApp.py:7842 #, python-format msgid "[ERROR_NOTCL] Failed to open config file: %s" msgstr "[ERROR_NOTCL] Eşec in incărcarea fişierului de configurare: %s" -#: FlatCAMApp.py:7797 FlatCAMApp.py:7814 +#: FlatCAMApp.py:7868 FlatCAMApp.py:7885 #, python-format msgid "[ERROR_NOTCL] Failed to open project file: %s" msgstr "[ERROR_NOTCL] Eşec in incărcarea fişierului proiect: %s" -#: FlatCAMApp.py:7837 +#: FlatCAMApp.py:7908 #, python-format msgid "[success] Project loaded from: %s" msgstr "[success] Proeictul a fost incărcat din: %s" -#: FlatCAMApp.py:7942 +#: FlatCAMApp.py:8013 msgid "Available commands:\n" msgstr "Comenzi disponibile:\n" -#: FlatCAMApp.py:7944 +#: FlatCAMApp.py:8015 msgid "" "\n" "\n" @@ -1056,27 +1056,27 @@ msgstr "" "Introduceți help pentru utilizare.\n" "Exemplu: help open_gerber" -#: FlatCAMApp.py:8094 +#: FlatCAMApp.py:8165 msgid "Shows list of commands." msgstr "Arata o lista de comenzi." -#: FlatCAMApp.py:8151 +#: FlatCAMApp.py:8222 msgid "[ERROR_NOTCL] Failed to load recent item list." msgstr "[ERROR_NOTCL] Eşec in incărcarea listei cu obiecte recente." -#: FlatCAMApp.py:8158 +#: FlatCAMApp.py:8229 msgid "[ERROR_NOTCL] Failed to parse recent item list." msgstr "[ERROR_NOTCL] Eşec in parsarea listei cu obiecte recente." -#: FlatCAMApp.py:8202 +#: FlatCAMApp.py:8273 msgid "Clear Recent files" msgstr "Sterge fişierele recente" -#: FlatCAMApp.py:8219 flatcamGUI/FlatCAMGUI.py:968 +#: FlatCAMApp.py:8290 flatcamGUI/FlatCAMGUI.py:968 msgid "Shortcut Key List" msgstr "Lista cu taste Shortcut" -#: FlatCAMApp.py:8226 +#: FlatCAMApp.py:8297 msgid "" "\n" "

Selected Tab - Choose an Item from " @@ -1173,27 +1173,27 @@ msgstr "" "\n" " " -#: FlatCAMApp.py:8333 +#: FlatCAMApp.py:8404 msgid "[WARNING_NOTCL] Failed checking for latest version. Could not connect." msgstr "" "[WARNING_NOTCL] Verificarea pentru ultima versiune a eșuat. Nu a fost " "posibilă conectarea la server." -#: FlatCAMApp.py:8340 +#: FlatCAMApp.py:8411 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:8350 +#: FlatCAMApp.py:8421 msgid "[success] FlatCAM is up to date!" msgstr "[success] FlatCAM este la ultima versiune!" -#: FlatCAMApp.py:8355 +#: FlatCAMApp.py:8426 msgid "Newer Version Available" msgstr "O nouă versiune este disponibila" -#: FlatCAMApp.py:8356 +#: FlatCAMApp.py:8427 msgid "" "There is a newer version of FlatCAM available for download:\n" "\n" @@ -1201,58 +1201,58 @@ msgstr "" "O nouă versiune de FlatCAM este disponibilă pentru download::\n" "\n" -#: FlatCAMApp.py:8358 +#: FlatCAMApp.py:8429 msgid "info" msgstr "Informaţie" -#: FlatCAMApp.py:8377 +#: FlatCAMApp.py:8448 msgid "[success] All plots disabled." msgstr "[success] Toate afişările sunt dezactivate." -#: FlatCAMApp.py:8383 +#: FlatCAMApp.py:8454 msgid "[success] All non selected plots disabled." msgstr "[success] Toate afişările care nu sunt selectate sunt dezactivate." -#: FlatCAMApp.py:8389 +#: FlatCAMApp.py:8460 msgid "[success] All plots enabled." msgstr "[success] Toate afişările sunt activate." -#: FlatCAMApp.py:8395 +#: FlatCAMApp.py:8466 msgid "[success] Selected plots enabled..." msgstr "[success] Toate afişările sunt activate..." -#: FlatCAMApp.py:8403 +#: FlatCAMApp.py:8474 msgid "[success] Selected plots disabled..." msgstr "[success] Toate afişările sunt dezactivate..." -#: FlatCAMApp.py:8413 FlatCAMApp.py:8426 +#: FlatCAMApp.py:8484 FlatCAMApp.py:8497 msgid "Working ..." msgstr "Se lucrează..." -#: FlatCAMApp.py:8460 +#: FlatCAMApp.py:8531 msgid "Saving FlatCAM Project" msgstr "Proiectul FlatCAM este in curs de salvare" -#: FlatCAMApp.py:8481 FlatCAMApp.py:8512 +#: FlatCAMApp.py:8552 FlatCAMApp.py:8583 #, python-format msgid "[success] Project saved to: %s" msgstr "[success] Proiectul s-a salvat in: %s" -#: FlatCAMApp.py:8499 +#: FlatCAMApp.py:8570 #, python-format msgid "[ERROR_NOTCL] Failed to verify project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Verificarea proiectului salvat a eșuat: %s. Incearcă să il " "salvezi din nou." -#: FlatCAMApp.py:8506 +#: FlatCAMApp.py:8577 #, python-format msgid "[ERROR_NOTCL] Failed to parse saved project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Parsarea proiectului salvat a eșuat: %s. Incearcă să il " "salvezi din nou." -#: FlatCAMApp.py:8514 +#: FlatCAMApp.py:8585 #, python-format msgid "[ERROR_NOTCL] Failed to save project file: %s. Retry to save it." msgstr "" diff --git a/locale/ru/LC_MESSAGES/strings.mo b/locale/ru/LC_MESSAGES/strings.mo index d003669f7ec9cb88baa779fed0369666618a9dda..f9e3f9795cd9dc0dac005543478a5e26c905a4a8 100644 GIT binary patch delta 33518 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 HF8lugs6ltf delta 30224 zcmZwQ1$Y(Lqp#uFI}n@%cL+|f1cC+&?(XjHR-BDXvEuITl48Xv?oy<<6ezAmN@?%+ zo3(N-=RS9y|L`uKHA`mpPI7u~jg9;1ejMMOgwbX?96h5uPHJ3{!*R;SaGad=mFhSV zeK@fsro$1K5tm^iJccpx1_t0moac3%_Xy79evT6dr(!%@h$^=p<2sJd*<%9E2~0)C z6-h$jcRWks{Bu`KF8TWKo>lL z3Ge|X#1E*3Vhk`1q{EcN^P%p%x{bHC4n=ivu5~f$&R1e=+-l={QP(+vNx8mr!)Cli zhQ#@1OGf`8y4wK?>RJ}Vk{t1&1k3Wdff=a9w-z-LJ24P13}O5g zxKDzH_#NsFq7OCcX;2k&TZ>vNVQrRo1I$hShGC8qf;Uk&6lb_uU{jeo!Rky`h*cG+d`dLSyMs$*m z&qI}4iCUb#%>=X`_n>-y8g;?jsG)m-x`1btsTd12B8gD-(xbLn9@K@yQ4NhU2|!>2JDUc*x8jOOA{8Z`xdQ5|22y5KKZ z6i;DJj4{S>+F?FS#rkvR6VQcs;ygTvJ+bjva|dTJHSwFMDfx_km|&b4+9X(kcm|A# zovnSa5b+^65qIE^Sb998gXhp+`#&+M8md&NkqEZ&LRgo0Ih($~x*oHT{tN03@1q__ zZ&6bieS+PFsP;lo?H5OtuVT}ipidc{ZNdNyBR&o_gnLo@{vvAsKEded;dWwR3{?F9 zjEiYdyD2;RV-bvrrEGd-R0o<^yG&&KQ3F@C>HM+o+EHhiWMC zBvUREDjtUFSZNH#%BXsMF$ia4I^1QwK8f+y;`&U2I^vydE*Kv**XdAqQV26*2~3Nv zu^o=UW%$&_Cr)vk^2Fa`bu97|D;_7{2mFGi@zqqvVfvlCzG>#p_o9aC6l#bsV?z8L zHMcJ?HagQydK_#(G%e~;+7I>MnudCEu0u`PAgvm7S}=0n|33sin@6Zbi@38W%n z9md6DsGeQMX!ry*H7`(i^cgi$31^$RPKEJ_XT%Jc7j>b!sB#@J8TLf&j`22qKE~Gm zUqL_>He(Vzj2hDG*7um0c>Fo0BN=fc@eo{xw^3_k++5R!BT>Wk1K|GBVFOJG@gGq4&s)4zvJ6?q;@FZ%;A7WWdIG<++Hoyp6 zj4AORF2%3t%S&M40<&5#U~S?-3)!RC2i3ugs1d5U$n1_bn4NfE8()H&g01L>2T?kanxcc&tC)`X3)DW3yTp{w zjk;h#RK4P;5vz#tu%3;#S>iKy)RTljGDe{0XgX%W#aIT9VOosCxG6t7>P`!wIv9?c zg3_oVZi?Cs{ZUi57Bw};Q8)I{=4bQq^w69(L^aq0yI~*H1LPrA!?5L!!#ZDhokOrDyjpA(I3yFM)E4^$@;|l7X68TMct@(wX4tZClH;4*r=fl#AuiTHCJg- z7s!cfpfIZ82-JSAWb>P#rl2Eg#73f~>Jn;%@8D1P7w*9^Yn0FYms)Fvs2ZwZD@=_8 zP>XApP2Yi;h@VAug#cI8J`7k7{rds@{Cmg*Msr0~mw&S=2~f!B}`_1LLp2 zpClB=cc>xGv(Z=&wS5Lz=b{?giR$jK0a-aU#@+WJcXsK2*6%sE*d( z#Q290=tP1l&O;6L8jOScP#rvps(2Z*;XRukYqLpDgqo@#jE`AS^$TD=EQOkae%A4* zcIW$SU?pbu@DjobWL(+8(+|^bH3jFQ8eEPV!p*1)?!o{(fa>6RRKvGWyXrA pB4 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 F{{U3*7~TK? diff --git a/locale/ru/LC_MESSAGES/strings.po b/locale/ru/LC_MESSAGES/strings.po index d92d4f0a..ef66ba33 100644 --- a/locale/ru/LC_MESSAGES/strings.po +++ b/locale/ru/LC_MESSAGES/strings.po @@ -5,8 +5,8 @@ msgid "" msgstr "" "Project-Id-Version: \n" -"POT-Creation-Date: 2019-06-22 21:03+0300\n" -"PO-Revision-Date: 2019-06-22 21:32+0300\n" +"POT-Creation-Date: 2019-06-22 23:57+0300\n" +"PO-Revision-Date: 2019-06-23 00:03+0300\n" "Last-Translator: Andrey Kultyapov \n" "Language-Team: \n" "Language: ru\n" @@ -41,13 +41,13 @@ msgstr "Не удалось открыть файл конфигурации." msgid "Open Script file failed." msgstr "Ошибка открытия файла сценария." -#: FlatCAMApp.py:2234 +#: FlatCAMApp.py:2244 msgid "[WARNING_NOTCL] Select a Geometry, Gerber or Excellon Object to edit." msgstr "" "[WARNING_NOTCL] Выберите объект Geometry, Gerber или Excellon для " "редактирования." -#: FlatCAMApp.py:2244 +#: FlatCAMApp.py:2254 msgid "" "[WARNING_NOTCL] Simultanoeus editing of tools geometry in a MultiGeo " "Geometry is not possible.\n" @@ -57,97 +57,97 @@ msgstr "" "невозможно.\n" "Редактируйте только одну геометрию за раз." -#: FlatCAMApp.py:2299 +#: FlatCAMApp.py:2309 msgid "[WARNING_NOTCL] Editor is activated ..." msgstr "[WARNING_NOTCL] Редактор активирован ..." -#: FlatCAMApp.py:2317 +#: FlatCAMApp.py:2327 msgid "Do you want to save the edited object?" msgstr "Вы хотите сохранить редактируемый объект?" -#: FlatCAMApp.py:2318 flatcamGUI/FlatCAMGUI.py:1618 +#: FlatCAMApp.py:2328 flatcamGUI/FlatCAMGUI.py:1618 msgid "Close Editor" msgstr "Закрыть редактор" -#: FlatCAMApp.py:2321 FlatCAMApp.py:3413 FlatCAMApp.py:5918 +#: FlatCAMApp.py:2331 FlatCAMApp.py:3423 FlatCAMApp.py:5989 #: FlatCAMTranslation.py:89 flatcamGUI/FlatCAMGUI.py:3730 msgid "Yes" msgstr "Да" -#: FlatCAMApp.py:2322 FlatCAMApp.py:3414 FlatCAMApp.py:5919 +#: FlatCAMApp.py:2332 FlatCAMApp.py:3424 FlatCAMApp.py:5990 #: FlatCAMTranslation.py:90 flatcamGUI/FlatCAMGUI.py:3731 msgid "No" msgstr "Нет" -#: FlatCAMApp.py:2323 FlatCAMApp.py:3415 FlatCAMApp.py:3764 FlatCAMApp.py:5920 +#: FlatCAMApp.py:2333 FlatCAMApp.py:3425 FlatCAMApp.py:3836 FlatCAMApp.py:5991 msgid "Cancel" msgstr "Отмена" -#: FlatCAMApp.py:2350 +#: FlatCAMApp.py:2360 msgid "[WARNING] Object empty after edit." msgstr "[WARNING] Объект пуст после редактирования." -#: FlatCAMApp.py:2372 FlatCAMApp.py:2391 FlatCAMApp.py:2403 +#: FlatCAMApp.py:2382 FlatCAMApp.py:2401 FlatCAMApp.py:2413 msgid "[WARNING_NOTCL] Select a Gerber, Geometry or Excellon Object to update." msgstr "" "[WARNING_NOTCL] Выберите объект Gerber, Geometry или Excellon для обновления." -#: FlatCAMApp.py:2375 +#: FlatCAMApp.py:2385 #, python-format msgid "[selected] %s is updated, returning to App..." msgstr "[selected] %s обновлён, возврат в приложение ..." -#: FlatCAMApp.py:2740 +#: FlatCAMApp.py:2750 msgid "[ERROR] Could not load defaults file." msgstr "[ERROR] Не удаётся загрузить файл настроек." -#: FlatCAMApp.py:2752 +#: FlatCAMApp.py:2762 msgid "[ERROR] Failed to parse defaults file." msgstr "[ERRORr] Не удаётся прочитать файл настроек." -#: FlatCAMApp.py:2773 FlatCAMApp.py:2777 +#: FlatCAMApp.py:2783 FlatCAMApp.py:2787 msgid "Import FlatCAM Preferences" msgstr "Импорт настроек FlatCAM" -#: FlatCAMApp.py:2783 +#: FlatCAMApp.py:2793 msgid "[WARNING_NOTCL] FlatCAM preferences import cancelled." msgstr "[WARNING_NOTCL] Импорт настроек FlatCAM отменен." -#: FlatCAMApp.py:2791 FlatCAMApp.py:2845 FlatCAMApp.py:3292 +#: FlatCAMApp.py:2801 FlatCAMApp.py:2855 FlatCAMApp.py:3302 msgid "[ERROR_NOTCL] Could not load defaults file." msgstr "[ERROR_NOTCL] Не удалось загрузить файл значений по умолчанию." -#: FlatCAMApp.py:2799 FlatCAMApp.py:3301 +#: FlatCAMApp.py:2809 FlatCAMApp.py:3311 msgid "[ERROR_NOTCL] Failed to parse defaults file." msgstr "[ERROR_NOTCL] Не удалось прочитать файл значений по умолчанию." -#: FlatCAMApp.py:2802 +#: FlatCAMApp.py:2812 #, python-format msgid "[success] Imported Defaults from %s" msgstr "[success] Значения по умолчанию импортированы из %s" -#: FlatCAMApp.py:2817 FlatCAMApp.py:2822 +#: FlatCAMApp.py:2827 FlatCAMApp.py:2832 msgid "Export FlatCAM Preferences" msgstr "Экспорт настроек FlatCAM" -#: FlatCAMApp.py:2829 +#: FlatCAMApp.py:2839 msgid "[WARNING_NOTCL] FlatCAM preferences export cancelled." msgstr "[WARNING_NOTCL] Экспорт настроек FlatCAM завершён." -#: FlatCAMApp.py:2864 FlatCAMApp.py:3346 +#: FlatCAMApp.py:2874 FlatCAMApp.py:3356 msgid "[ERROR_NOTCL] Failed to write defaults to file." msgstr "[ERROR_NOTCL] Не удалось записать значения по умолчанию в файл." -#: FlatCAMApp.py:2917 +#: FlatCAMApp.py:2927 msgid "[ERROR_NOTCL] Failed to open recent files file for writing." msgstr "[ERROR_NOTCL] Не удалось открыть файл истории файлов для записи." -#: FlatCAMApp.py:2994 camlib.py:4457 +#: FlatCAMApp.py:3004 camlib.py:4457 msgid "[ERROR_NOTCL] An internal error has ocurred. See shell.\n" msgstr "" "[ERROR_NOTCL] Произошла внутренняя ошибка. Посмотрите в командную строку.\n" -#: FlatCAMApp.py:2995 +#: FlatCAMApp.py:3005 #, python-brace-format msgid "" "Object ({kind}) failed because: {error} \n" @@ -156,11 +156,11 @@ msgstr "" "Объект ({kind}) не выполнен, потому что: {error} \n" "\n" -#: FlatCAMApp.py:3015 +#: FlatCAMApp.py:3025 msgid "Converting units to " msgstr "Конвертирование единиц в " -#: FlatCAMApp.py:3094 FlatCAMApp.py:3097 FlatCAMApp.py:3100 FlatCAMApp.py:3103 +#: FlatCAMApp.py:3104 FlatCAMApp.py:3107 FlatCAMApp.py:3110 FlatCAMApp.py:3113 #, python-brace-format msgid "" "[selected] {kind} created/selected: {name}{name}" -#: FlatCAMApp.py:3197 +#: FlatCAMApp.py:3207 #, python-brace-format msgid "" "FlatCAM
Version {version} {beta} ({date}) - " @@ -191,31 +191,31 @@ msgstr "" "a>
ЗАГРУЗИТЬ можно отсюда.
" -#: FlatCAMApp.py:3350 +#: FlatCAMApp.py:3360 msgid "[success] Defaults saved." msgstr "[success] Значения по умолчанию сохранены." -#: FlatCAMApp.py:3371 +#: FlatCAMApp.py:3381 msgid "[ERROR_NOTCL] Could not load factory defaults file." msgstr "[ERROR_NOTCL] Не удалось загрузить файл с исходными значениями." -#: FlatCAMApp.py:3380 +#: FlatCAMApp.py:3390 msgid "[ERROR_NOTCL] Failed to parse factory defaults file." msgstr "[ERROR_NOTCL] Не удалось прочитать файл с исходными значениями." -#: FlatCAMApp.py:3394 +#: FlatCAMApp.py:3404 msgid "[ERROR_NOTCL] Failed to write factory defaults to file." msgstr "[ERROR_NOTCL] Не удалось записать исходные значения в файл." -#: FlatCAMApp.py:3398 +#: FlatCAMApp.py:3408 msgid "Factory defaults saved." msgstr "Исходные значения сохранены." -#: FlatCAMApp.py:3403 flatcamGUI/FlatCAMGUI.py:3106 +#: FlatCAMApp.py:3413 flatcamGUI/FlatCAMGUI.py:3106 msgid "[WARNING_NOTCL] Application is saving the project. Please wait ..." msgstr "[WARNING_NOTCL] Приложение сохраняет проект. Пожалуйста, подождите ..." -#: FlatCAMApp.py:3408 +#: FlatCAMApp.py:3418 msgid "" "There are files/objects modified in FlatCAM. \n" "Do you want to Save the project?" @@ -223,11 +223,11 @@ msgstr "" "Есть файлы/объекты, измененные в FlatCAM.\n" "Вы хотите сохранить проект?" -#: FlatCAMApp.py:3411 FlatCAMApp.py:5916 +#: FlatCAMApp.py:3421 FlatCAMApp.py:5987 msgid "Save changes" msgstr "Сохранить изменения" -#: FlatCAMApp.py:3478 +#: FlatCAMApp.py:3488 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 " @@ -243,70 +243,70 @@ msgstr "" "потеряна, и результат может не соответствовать ожидаемому. \n" "Проверьте сгенерированный GCODE." -#: FlatCAMApp.py:3519 +#: FlatCAMApp.py:3529 msgid "[ERROR_NOTCL] Failed. Excellon joining works only on Excellon objects." msgstr "" "[ERROR_NOTCL] Неудача. Присоединение Excellon работает только на объектах " "Excellon." -#: FlatCAMApp.py:3541 +#: FlatCAMApp.py:3551 msgid "[ERROR_NOTCL] Failed. Gerber joining works only on Gerber objects." msgstr "" "[ERROR_NOTCL] Неудача. Объединение Gerber работает только на объектах Gerber." -#: FlatCAMApp.py:3556 FlatCAMApp.py:3581 +#: FlatCAMApp.py:3566 FlatCAMApp.py:3591 msgid "[ERROR_NOTCL] Failed. Select a Geometry Object and try again." msgstr "[ERROR_NOTCL] Неудалось. Выберите объект Geometry и попробуйте снова." -#: FlatCAMApp.py:3560 FlatCAMApp.py:3585 +#: FlatCAMApp.py:3570 FlatCAMApp.py:3595 #, python-format msgid "[ERROR_NOTCL] Expected a FlatCAMGeometry, got %s" msgstr "[ERROR_NOTCL] Ожидается FlatCAMGeometry, получено %s" -#: FlatCAMApp.py:3573 +#: FlatCAMApp.py:3583 msgid "[success] A Geometry object was converted to MultiGeo type." msgstr "[success] Объект Geometry был преобразован в тип MultiGeo." -#: FlatCAMApp.py:3599 +#: FlatCAMApp.py:3609 msgid "[success] A Geometry object was converted to SingleGeo type." msgstr "[success] Объект Geometry был преобразован в тип SingleGeo." -#: FlatCAMApp.py:3763 FlatCAMApp.py:4603 FlatCAMApp.py:6191 FlatCAMApp.py:6202 -#: FlatCAMApp.py:6442 FlatCAMApp.py:6452 +#: FlatCAMApp.py:3835 FlatCAMApp.py:4674 FlatCAMApp.py:6262 FlatCAMApp.py:6273 +#: FlatCAMApp.py:6513 FlatCAMApp.py:6523 msgid "Ok" msgstr "Да" -#: FlatCAMApp.py:3809 +#: FlatCAMApp.py:3880 #, python-format msgid "[success] Converted units to %s" msgstr "[success] Конвертирование единиц в %s" -#: FlatCAMApp.py:3820 +#: FlatCAMApp.py:3891 msgid "[WARNING_NOTCL] Units conversion cancelled." msgstr "[WARNING_NOTCL] Преобразование единиц завершено." -#: FlatCAMApp.py:4472 +#: FlatCAMApp.py:4543 msgid "Open file" msgstr "Открыть файл" -#: FlatCAMApp.py:4503 FlatCAMApp.py:4508 +#: FlatCAMApp.py:4574 FlatCAMApp.py:4579 msgid "Export G-Code ..." msgstr "Экспорт G-Code …" -#: FlatCAMApp.py:4511 +#: FlatCAMApp.py:4582 msgid "[WARNING_NOTCL] Export Code cancelled." msgstr "[WARNING_NOTCL] Экспорт Code завершён." -#: FlatCAMApp.py:4521 +#: FlatCAMApp.py:4592 msgid "[WARNING] No such file or directory" msgstr "[WARNING] Нет такого файла или каталога" -#: FlatCAMApp.py:4528 +#: FlatCAMApp.py:4599 #, python-format msgid "Saved to: %s" msgstr "Сохранёно в: %s" -#: FlatCAMApp.py:4591 FlatCAMApp.py:4624 FlatCAMApp.py:4635 FlatCAMApp.py:4646 +#: FlatCAMApp.py:4662 FlatCAMApp.py:4695 FlatCAMApp.py:4706 FlatCAMApp.py:4717 #: flatcamTools/ToolNonCopperClear.py:489 flatcamTools/ToolSolderPaste.py:765 msgid "" "[WARNING_NOTCL] Please enter a tool diameter with non-zero value, in Float " @@ -315,12 +315,12 @@ msgstr "" "[WARNING_NOTCL] Пожалуйста, введите диаметр инструмента с ненулевым " "значением в float формате." -#: FlatCAMApp.py:4596 FlatCAMApp.py:4629 FlatCAMApp.py:4640 FlatCAMApp.py:4651 +#: FlatCAMApp.py:4667 FlatCAMApp.py:4700 FlatCAMApp.py:4711 FlatCAMApp.py:4722 #: flatcamGUI/FlatCAMGUI.py:3001 msgid "[WARNING_NOTCL] Adding Tool cancelled ..." msgstr "[WARNING_NOTCL] Добавление инструмента завершено ..." -#: FlatCAMApp.py:4599 +#: FlatCAMApp.py:4670 msgid "" "Adding Tool works only when Advanced is checked.\n" "Go to Preferences -> General - Show Advanced Options." @@ -329,35 +329,35 @@ msgstr "" "«Дополнительно».\n" "Перейдите в Настройки -> Основные парам. - Показать дополнительные параметры." -#: FlatCAMApp.py:4712 +#: FlatCAMApp.py:4783 msgid "Object(s) deleted ..." msgstr "Объект(ы) удален ..." -#: FlatCAMApp.py:4716 +#: FlatCAMApp.py:4787 msgid "Failed. No object(s) selected..." msgstr "Нудача. Объекты не выбраны ..." -#: FlatCAMApp.py:4718 +#: FlatCAMApp.py:4789 msgid "Save the work in Editor and try again ..." msgstr "Сохраните работу в редакторе и попробуйте снова ..." -#: FlatCAMApp.py:4731 +#: FlatCAMApp.py:4802 msgid "Click to set the origin ..." msgstr "Кликните, чтобы указать начало ..." -#: FlatCAMApp.py:4743 +#: FlatCAMApp.py:4814 msgid "Jump to ..." msgstr "Перейти к ..." -#: FlatCAMApp.py:4744 +#: FlatCAMApp.py:4815 msgid "Enter the coordinates in format X,Y:" msgstr "Введите координаты в формате X, Y:" -#: FlatCAMApp.py:4751 +#: FlatCAMApp.py:4822 msgid "Wrong coordinates. Enter coordinates in format: X,Y" msgstr "Неверные координаты. Введите координаты в формате: X, Y" -#: FlatCAMApp.py:4769 flatcamEditors/FlatCAMExcEditor.py:2320 +#: FlatCAMApp.py:4840 flatcamEditors/FlatCAMExcEditor.py:2320 #: flatcamEditors/FlatCAMExcEditor.py:2327 #: flatcamEditors/FlatCAMGeoEditor.py:3648 #: flatcamEditors/FlatCAMGeoEditor.py:3662 @@ -371,85 +371,85 @@ msgstr "Неверные координаты. Введите координат msgid "[success] Done." msgstr "[success] Готово." -#: FlatCAMApp.py:4901 FlatCAMApp.py:4968 +#: FlatCAMApp.py:4972 FlatCAMApp.py:5039 msgid "[WARNING_NOTCL] No object is selected. Select an object and try again." msgstr "[WARNING_NOTCL] Объект не выбран. Выберите объект и попробуйте снова." -#: FlatCAMApp.py:5009 +#: FlatCAMApp.py:5080 msgid "[success] Origin set ..." msgstr "[success] Начало установлено ..." -#: FlatCAMApp.py:5029 +#: FlatCAMApp.py:5100 msgid "Preferences" msgstr "Настройки" -#: FlatCAMApp.py:5049 +#: FlatCAMApp.py:5120 msgid "[WARNING_NOTCL] No object selected to Flip on Y axis." msgstr "[WARNING_NOTCL] Не выбран объект для отражения по оси Y." -#: FlatCAMApp.py:5074 +#: FlatCAMApp.py:5145 msgid "[success] Flip on Y axis done." msgstr "[success] Отражение по оси Y завершено." -#: FlatCAMApp.py:5076 FlatCAMApp.py:5116 +#: FlatCAMApp.py:5147 FlatCAMApp.py:5187 #: flatcamEditors/FlatCAMGeoEditor.py:1355 #: flatcamEditors/FlatCAMGrbEditor.py:5343 flatcamTools/ToolTransform.py:748 #, python-format msgid "[ERROR_NOTCL] Due of %s, Flip action was not executed." msgstr "[ERROR_NOTCL] Из-за %s, операция переворота не была выполнена." -#: FlatCAMApp.py:5089 +#: FlatCAMApp.py:5160 msgid "[WARNING_NOTCL] No object selected to Flip on X axis." msgstr "[WARNING_NOTCL] Не выбран объект для отражения по оси Х." -#: FlatCAMApp.py:5114 +#: FlatCAMApp.py:5185 msgid "[success] Flip on X axis done." msgstr "[success] Отражение по оси Х завершено." -#: FlatCAMApp.py:5129 +#: FlatCAMApp.py:5200 msgid "[WARNING_NOTCL] No object selected to Rotate." msgstr "[WARNING_NOTCL] Не выбран ни один объект для вращения." -#: FlatCAMApp.py:5132 FlatCAMApp.py:5177 FlatCAMApp.py:5208 +#: FlatCAMApp.py:5203 FlatCAMApp.py:5248 FlatCAMApp.py:5279 msgid "Transform" msgstr "Трансформация" -#: FlatCAMApp.py:5132 FlatCAMApp.py:5177 FlatCAMApp.py:5208 +#: FlatCAMApp.py:5203 FlatCAMApp.py:5248 FlatCAMApp.py:5279 msgid "Enter the Angle value:" msgstr "Введите значение угла:" -#: FlatCAMApp.py:5162 +#: FlatCAMApp.py:5233 msgid "[success] Rotation done." msgstr "[success] Вращение завершено." -#: FlatCAMApp.py:5164 flatcamEditors/FlatCAMGeoEditor.py:1298 +#: FlatCAMApp.py:5235 flatcamEditors/FlatCAMGeoEditor.py:1298 #: flatcamEditors/FlatCAMGrbEditor.py:5272 flatcamTools/ToolTransform.py:677 #, python-format msgid "[ERROR_NOTCL] Due of %s, rotation movement was not executed." msgstr "[ERROR_NOTCL] Из-за %s вращение не было выполнено." -#: FlatCAMApp.py:5175 +#: FlatCAMApp.py:5246 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on X axis." msgstr "[WARNING_NOTCL] Не выбран ни один объект для наклона/сдвига по оси X." -#: FlatCAMApp.py:5196 +#: FlatCAMApp.py:5267 msgid "[success] Skew on X axis done." msgstr "[success] Наклон по оси X выполнен." -#: FlatCAMApp.py:5206 +#: FlatCAMApp.py:5277 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on Y axis." msgstr "" "[WARNING_NOTCL] Нет объекта, выбранного для перекоса / сдвига по оси Y." -#: FlatCAMApp.py:5227 +#: FlatCAMApp.py:5298 msgid "[success] Skew on Y axis done." msgstr "[success] Наклон по оси Y сделано." -#: FlatCAMApp.py:5297 +#: FlatCAMApp.py:5368 msgid "Grid On/Off" msgstr "Сетка вкл/откл" -#: FlatCAMApp.py:5310 flatcamEditors/FlatCAMGeoEditor.py:937 +#: FlatCAMApp.py:5381 flatcamEditors/FlatCAMGeoEditor.py:937 #: flatcamEditors/FlatCAMGrbEditor.py:2381 #: flatcamEditors/FlatCAMGrbEditor.py:4861 flatcamGUI/ObjectUI.py:991 #: flatcamTools/ToolDblSided.py:160 flatcamTools/ToolDblSided.py:208 @@ -459,7 +459,7 @@ msgstr "Сетка вкл/откл" msgid "Add" msgstr "Добавить" -#: FlatCAMApp.py:5311 FlatCAMObj.py:3295 +#: FlatCAMApp.py:5382 FlatCAMObj.py:3295 #: flatcamEditors/FlatCAMGrbEditor.py:2386 flatcamGUI/FlatCAMGUI.py:527 #: flatcamGUI/FlatCAMGUI.py:724 flatcamGUI/FlatCAMGUI.py:1616 #: flatcamGUI/FlatCAMGUI.py:1953 flatcamGUI/ObjectUI.py:1007 @@ -468,15 +468,15 @@ msgstr "Добавить" msgid "Delete" msgstr "Удалить" -#: FlatCAMApp.py:5324 +#: FlatCAMApp.py:5395 msgid "New Grid ..." msgstr "Новая сетка ..." -#: FlatCAMApp.py:5325 +#: FlatCAMApp.py:5396 msgid "Enter a Grid Value:" msgstr "Введите размер сетки:" -#: FlatCAMApp.py:5333 FlatCAMApp.py:5360 +#: FlatCAMApp.py:5404 FlatCAMApp.py:5431 msgid "" "[WARNING_NOTCL] Please enter a grid value with non-zero value, in Float " "format." @@ -484,52 +484,52 @@ msgstr "" "[WARNING_NOTCL] Пожалуйста, введите значение сетки с ненулевым значением в " "float формате." -#: FlatCAMApp.py:5339 +#: FlatCAMApp.py:5410 msgid "[success] New Grid added ..." msgstr "[success] Новая сетка добавлена ..." -#: FlatCAMApp.py:5342 +#: FlatCAMApp.py:5413 msgid "[WARNING_NOTCL] Grid already exists ..." msgstr "[WARNING_NOTCL] Сетка уже существует ..." -#: FlatCAMApp.py:5345 +#: FlatCAMApp.py:5416 msgid "[WARNING_NOTCL] Adding New Grid cancelled ..." msgstr "[WARNING_NOTCL] Добавление новой сетки отменено ..." -#: FlatCAMApp.py:5367 +#: FlatCAMApp.py:5438 msgid "[ERROR_NOTCL] Grid Value does not exist ..." msgstr "[ERROR_NOTCL] Значение сетки не существует ..." -#: FlatCAMApp.py:5370 +#: FlatCAMApp.py:5441 msgid "[success] Grid Value deleted ..." msgstr "[success] Значение сетки удалено ..." -#: FlatCAMApp.py:5373 +#: FlatCAMApp.py:5444 msgid "[WARNING_NOTCL] Delete Grid value cancelled ..." msgstr "[WARNING_NOTCL] Удалить отмененное значение сетки ..." -#: FlatCAMApp.py:5412 +#: FlatCAMApp.py:5483 msgid "[WARNING_NOTCL] No object selected to copy it's name" msgstr "[WARNING_NOTCL] Нет объекта, выбранного для копирования его имени." -#: FlatCAMApp.py:5416 +#: FlatCAMApp.py:5487 msgid "Name copied on clipboard ..." msgstr "Имя скопировано в буфер обмена ..." -#: FlatCAMApp.py:5458 flatcamEditors/FlatCAMGrbEditor.py:3901 +#: FlatCAMApp.py:5529 flatcamEditors/FlatCAMGrbEditor.py:3901 msgid "[success] Coordinates copied to clipboard." msgstr "[success] Координаты копируются в буфер обмена." -#: FlatCAMApp.py:5714 FlatCAMApp.py:5717 FlatCAMApp.py:5720 FlatCAMApp.py:5723 -#: FlatCAMApp.py:5738 FlatCAMApp.py:5741 FlatCAMApp.py:5744 FlatCAMApp.py:5747 -#: FlatCAMApp.py:5787 FlatCAMApp.py:5790 FlatCAMApp.py:5793 FlatCAMApp.py:5796 +#: FlatCAMApp.py:5785 FlatCAMApp.py:5788 FlatCAMApp.py:5791 FlatCAMApp.py:5794 +#: FlatCAMApp.py:5809 FlatCAMApp.py:5812 FlatCAMApp.py:5815 FlatCAMApp.py:5818 +#: FlatCAMApp.py:5858 FlatCAMApp.py:5861 FlatCAMApp.py:5864 FlatCAMApp.py:5867 #: ObjectCollection.py:719 ObjectCollection.py:722 ObjectCollection.py:725 #: ObjectCollection.py:728 #, python-brace-format msgid "[selected]{name} selected" msgstr "[selected]{name} выбран" -#: FlatCAMApp.py:5913 +#: FlatCAMApp.py:5984 msgid "" "There are files/objects opened in FlatCAM.\n" "Creating a New project will delete them.\n" @@ -539,111 +539,111 @@ msgstr "" "Создание нового проекта удалит их.\n" "Вы хотите сохранить проект?" -#: FlatCAMApp.py:5934 +#: FlatCAMApp.py:6005 msgid "[success] New Project created..." msgstr "[success] Новый проект создан ..." -#: FlatCAMApp.py:6050 FlatCAMApp.py:6053 flatcamGUI/FlatCAMGUI.py:608 +#: FlatCAMApp.py:6121 FlatCAMApp.py:6124 flatcamGUI/FlatCAMGUI.py:608 #: flatcamGUI/FlatCAMGUI.py:1832 msgid "Open Gerber" msgstr "Открыть Gerber" -#: FlatCAMApp.py:6058 +#: FlatCAMApp.py:6129 msgid "[WARNING_NOTCL] Open Gerber cancelled." msgstr "[WARNING_NOTCL] Открытый Gerber отменен." -#: FlatCAMApp.py:6079 FlatCAMApp.py:6082 flatcamGUI/FlatCAMGUI.py:609 +#: FlatCAMApp.py:6150 FlatCAMApp.py:6153 flatcamGUI/FlatCAMGUI.py:609 #: flatcamGUI/FlatCAMGUI.py:1833 msgid "Open Excellon" msgstr "Открыть Excellon" -#: FlatCAMApp.py:6087 +#: FlatCAMApp.py:6158 msgid "[WARNING_NOTCL] Open Excellon cancelled." msgstr "[WARNING_NOTCL] Открытый Excellon отменен." -#: FlatCAMApp.py:6109 FlatCAMApp.py:6112 +#: FlatCAMApp.py:6180 FlatCAMApp.py:6183 msgid "Open G-Code" msgstr "Открыть G-Code" -#: FlatCAMApp.py:6117 +#: FlatCAMApp.py:6188 msgid "[WARNING_NOTCL] Open G-Code cancelled." msgstr "[WARNING_NOTCL] Открытый G-код отменен." -#: FlatCAMApp.py:6135 FlatCAMApp.py:6138 +#: FlatCAMApp.py:6206 FlatCAMApp.py:6209 msgid "Open Project" msgstr "Открыть проект" -#: FlatCAMApp.py:6146 +#: FlatCAMApp.py:6217 msgid "[WARNING_NOTCL] Open Project cancelled." msgstr "[WARNING_NOTCL] Открытый проект отменен." -#: FlatCAMApp.py:6165 FlatCAMApp.py:6168 +#: FlatCAMApp.py:6236 FlatCAMApp.py:6239 msgid "Open Configuration File" msgstr "Открыть файл конфигурации" -#: FlatCAMApp.py:6172 +#: FlatCAMApp.py:6243 msgid "[WARNING_NOTCL] Open Config cancelled." msgstr "[WARNING_NOTCL] Открытие конфигурации завершено." -#: FlatCAMApp.py:6187 FlatCAMApp.py:6438 FlatCAMApp.py:8591 FlatCAMApp.py:8611 -#: FlatCAMApp.py:8632 FlatCAMApp.py:8654 +#: FlatCAMApp.py:6258 FlatCAMApp.py:6509 FlatCAMApp.py:8662 FlatCAMApp.py:8682 +#: FlatCAMApp.py:8703 FlatCAMApp.py:8725 msgid "[WARNING_NOTCL] No object selected." msgstr "[WARNING_NOTCL] Нет выбранных объектов." -#: FlatCAMApp.py:6188 FlatCAMApp.py:6439 +#: FlatCAMApp.py:6259 FlatCAMApp.py:6510 msgid "Please Select a Geometry object to export" msgstr "Выберите объект Geometry для экспорта" -#: FlatCAMApp.py:6199 +#: FlatCAMApp.py:6270 msgid "[ERROR_NOTCL] Only Geometry, Gerber and CNCJob objects can be used." msgstr "" "[ERROR_NOTCL] Можно использовать только объекты Geometry, Gerber и CNC " "работа." -#: FlatCAMApp.py:6212 FlatCAMApp.py:6216 +#: FlatCAMApp.py:6283 FlatCAMApp.py:6287 msgid "Export SVG" msgstr "Экспорт SVG" -#: FlatCAMApp.py:6221 +#: FlatCAMApp.py:6292 msgid "[WARNING_NOTCL] Export SVG cancelled." msgstr "[WARNING_NOTCL] Экспорт SVG отменен." -#: FlatCAMApp.py:6240 +#: FlatCAMApp.py:6311 msgid "[[WARNING_NOTCL]] Data must be a 3D array with last dimension 3 or 4" msgstr "" "[[WARNING_NOTCL]] Данные должны быть 3D массивом с последним размером 3 или 4" -#: FlatCAMApp.py:6246 FlatCAMApp.py:6250 +#: FlatCAMApp.py:6317 FlatCAMApp.py:6321 msgid "Export PNG Image" msgstr "Экспорт PNG изображения" -#: FlatCAMApp.py:6255 +#: FlatCAMApp.py:6326 msgid "Export PNG cancelled." msgstr "Экспорт PNG завершён." -#: FlatCAMApp.py:6274 +#: FlatCAMApp.py:6345 msgid "" "[WARNING_NOTCL] No object selected. Please select an Gerber object to export." msgstr "" "[WARNING_NOTCL] Нет выбранных объектов. Пожалуйста, выберите Gerber объект " "для экспорта." -#: FlatCAMApp.py:6279 FlatCAMApp.py:6402 +#: FlatCAMApp.py:6350 FlatCAMApp.py:6473 msgid "" "[ERROR_NOTCL] Failed. Only Gerber objects can be saved as Gerber files..." msgstr "" "[ERROR_NOTCL] Неудачный. Только объекты Gerber могут быть сохранены как " "файлы Gerber..." -#: FlatCAMApp.py:6291 +#: FlatCAMApp.py:6362 msgid "Save Gerber source file" msgstr "Сохранить исходный файл Gerber" -#: FlatCAMApp.py:6296 +#: FlatCAMApp.py:6367 msgid "[WARNING_NOTCL] Save Gerber source file cancelled." msgstr "[WARNING_NOTCL] Сохранить исходный файл Gerber отменено." -#: FlatCAMApp.py:6315 +#: FlatCAMApp.py:6386 msgid "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." @@ -651,22 +651,22 @@ msgstr "" "[WARNING_NOTCL] Объект не выбран. Пожалуйста, выберите отличный объект для " "экспорта." -#: FlatCAMApp.py:6320 FlatCAMApp.py:6361 +#: FlatCAMApp.py:6391 FlatCAMApp.py:6432 msgid "" "[ERROR_NOTCL] Failed. Only Excellon objects can be saved as Excellon files..." msgstr "" "[ERROR_NOTCL] Неудачный. Только объекты Excellon могут быть сохранены как " "файлы Excellon..." -#: FlatCAMApp.py:6328 FlatCAMApp.py:6332 +#: FlatCAMApp.py:6399 FlatCAMApp.py:6403 msgid "Save Excellon source file" msgstr "Сохранить исходный файл Excellon" -#: FlatCAMApp.py:6337 +#: FlatCAMApp.py:6408 msgid "[WARNING_NOTCL] Saving Excellon source file cancelled." msgstr "[WARNING_NOTCL] Сохранение исходного файла Excellon отменено." -#: FlatCAMApp.py:6356 +#: FlatCAMApp.py:6427 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." @@ -674,70 +674,70 @@ msgstr "" "[WARNING_NOTCL] Объект не выбран. Пожалуйста, выберите отличный объект для " "экспорта." -#: FlatCAMApp.py:6369 FlatCAMApp.py:6373 +#: FlatCAMApp.py:6440 FlatCAMApp.py:6444 msgid "Export Excellon" msgstr "Экспорт Excellon" -#: FlatCAMApp.py:6378 +#: FlatCAMApp.py:6449 msgid "[WARNING_NOTCL] Export Excellon cancelled." msgstr "[WARNING_NOTCL] Экспорт Excellon отменен." -#: FlatCAMApp.py:6397 +#: FlatCAMApp.py:6468 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Gerber object to export." msgstr "" "[WARNING_NOTCL] Нет выбранных объектов. Пожалуйста, выберите Gerber объект " "для экспорта." -#: FlatCAMApp.py:6410 FlatCAMApp.py:6414 +#: FlatCAMApp.py:6481 FlatCAMApp.py:6485 msgid "Export Gerber" msgstr "Экспорт Gerber" -#: FlatCAMApp.py:6419 +#: FlatCAMApp.py:6490 msgid "[WARNING_NOTCL] Export Gerber cancelled." msgstr "[WARNING_NOTCL] Экспорт Гербера отменен." -#: FlatCAMApp.py:6449 +#: FlatCAMApp.py:6520 msgid "[ERROR_NOTCL] Only Geometry objects can be used." msgstr "[ERROR_NOTCL] Можно использовать только геометрические объекты." -#: FlatCAMApp.py:6463 FlatCAMApp.py:6467 +#: FlatCAMApp.py:6534 FlatCAMApp.py:6538 msgid "Export DXF" msgstr "Экспорт DXF" -#: FlatCAMApp.py:6473 +#: FlatCAMApp.py:6544 msgid "[WARNING_NOTCL] Export DXF cancelled." msgstr "[WARNING_NOTCL] Экспорт DXF отменен." -#: FlatCAMApp.py:6493 FlatCAMApp.py:6496 +#: FlatCAMApp.py:6564 FlatCAMApp.py:6567 msgid "Import SVG" msgstr "Импорт SVG" -#: FlatCAMApp.py:6505 +#: FlatCAMApp.py:6576 msgid "[WARNING_NOTCL] Open SVG cancelled." msgstr "[WARNING_NOTCL] Открытие СВГ отменен." -#: FlatCAMApp.py:6524 FlatCAMApp.py:6528 +#: FlatCAMApp.py:6595 FlatCAMApp.py:6599 msgid "Import DXF" msgstr "Импорт DXF" -#: FlatCAMApp.py:6537 +#: FlatCAMApp.py:6608 msgid "[WARNING_NOTCL] Open DXF cancelled." msgstr "[WARNING_NOTCL] Открытие DXF отменено." -#: FlatCAMApp.py:6555 +#: FlatCAMApp.py:6626 #, python-format msgid "%s" msgstr "%s" -#: FlatCAMApp.py:6575 +#: FlatCAMApp.py:6646 msgid "" "[WARNING_NOTCL] Select an Gerber or Excellon file to view it's source file." msgstr "" "[WARNING_NOTCL] Выберите файл Gerber или Excellon для просмотра исходного " "файла." -#: FlatCAMApp.py:6582 +#: FlatCAMApp.py:6653 msgid "" "[WARNING_NOTCL] There is no selected object for which to see it's source " "file code." @@ -745,25 +745,25 @@ msgstr "" "[WARNING_NOTCL] Нет выбранного объекта, для которого можно увидеть исходный " "код файла." -#: FlatCAMApp.py:6590 +#: FlatCAMApp.py:6661 msgid "Source Editor" msgstr "Редактор исходного кода" -#: FlatCAMApp.py:6600 +#: FlatCAMApp.py:6671 #, python-format msgid "[ERROR]App.on_view_source() -->%s" msgstr "[ERROR] Приложение.on_view_source() -->%s" -#: FlatCAMApp.py:6612 FlatCAMApp.py:7754 FlatCAMObj.py:5588 +#: FlatCAMApp.py:6683 FlatCAMApp.py:7825 FlatCAMObj.py:5588 #: flatcamTools/ToolSolderPaste.py:1278 msgid "Code Editor" msgstr "Редактор кода" -#: FlatCAMApp.py:6624 +#: FlatCAMApp.py:6695 msgid "Script Editor" msgstr "Редактор сценариев" -#: FlatCAMApp.py:6627 +#: FlatCAMApp.py:6698 msgid "" "#\n" "# CREATE A NEW FLATCAM TCL SCRIPT\n" @@ -807,98 +807,98 @@ msgstr "" "#\n" "\n" -#: FlatCAMApp.py:6650 FlatCAMApp.py:6653 +#: FlatCAMApp.py:6721 FlatCAMApp.py:6724 msgid "Open TCL script" msgstr "Открыть сценарий TCL" -#: FlatCAMApp.py:6661 +#: FlatCAMApp.py:6732 msgid "[WARNING_NOTCL] Open TCL script cancelled." msgstr "[WARNING_NOTCL] Открытый сценарий TCL отменен." -#: FlatCAMApp.py:6673 +#: FlatCAMApp.py:6744 #, python-format msgid "[ERROR]App.on_fileopenscript() -->%s" msgstr "[ERROR]App.on_fileopenscript() -->%s" -#: FlatCAMApp.py:6699 FlatCAMApp.py:6702 +#: FlatCAMApp.py:6770 FlatCAMApp.py:6773 msgid "Run TCL script" msgstr "Запустить сценарий TCL" -#: FlatCAMApp.py:6710 +#: FlatCAMApp.py:6781 msgid "[WARNING_NOTCL] Run TCL script cancelled." msgstr "[WARNING_NOTCL] Запуск скрипта отменен." -#: FlatCAMApp.py:6760 FlatCAMApp.py:6764 +#: FlatCAMApp.py:6831 FlatCAMApp.py:6835 msgid "Save Project As ..." msgstr "Сохранить проект как..." -#: FlatCAMApp.py:6761 +#: FlatCAMApp.py:6832 #, python-brace-format msgid "{l_save}/Project_{date}" msgstr "{l_save}/Project_{date}" -#: FlatCAMApp.py:6769 +#: FlatCAMApp.py:6840 msgid "[WARNING_NOTCL] Save Project cancelled." msgstr "[WARNING_NOTCL] Сохранить проект отменен." -#: FlatCAMApp.py:6813 +#: FlatCAMApp.py:6884 msgid "Exporting SVG" msgstr "Экспортирование SVG" -#: FlatCAMApp.py:6847 FlatCAMApp.py:6953 FlatCAMApp.py:7068 +#: FlatCAMApp.py:6918 FlatCAMApp.py:7024 FlatCAMApp.py:7139 #, python-format msgid "[success] SVG file exported to %s" msgstr "[success] SVG-файл экспортируется в %s" -#: FlatCAMApp.py:6878 FlatCAMApp.py:6999 +#: FlatCAMApp.py:6949 FlatCAMApp.py:7070 #, python-format msgid "[WARNING_NOTCL] No object Box. Using instead %s" msgstr "[WARNING_NOTCL] Нет поле объекта. Использование вместо %s" -#: FlatCAMApp.py:6956 FlatCAMApp.py:7071 +#: FlatCAMApp.py:7027 FlatCAMApp.py:7142 msgid "Generating Film ... Please wait." msgstr "Создание фильма ... Пожалуйста, подождите." -#: FlatCAMApp.py:7219 +#: FlatCAMApp.py:7290 #, python-format msgid "[success] Excellon file exported to %s" msgstr "[success] Файл Excellon экспортируется в %s" -#: FlatCAMApp.py:7226 +#: FlatCAMApp.py:7297 msgid "Exporting Excellon" msgstr "Экспорт Excellon" -#: FlatCAMApp.py:7231 FlatCAMApp.py:7238 +#: FlatCAMApp.py:7302 FlatCAMApp.py:7309 msgid "[ERROR_NOTCL] Could not export Excellon file." msgstr "[ERROR_NOTCL] Не удалось экспортировать файл Excellon." -#: FlatCAMApp.py:7336 +#: FlatCAMApp.py:7407 #, python-format msgid "[success] Gerber file exported to %s" msgstr "[success] Gerber файл экспортируется в %s" -#: FlatCAMApp.py:7343 +#: FlatCAMApp.py:7414 msgid "Exporting Gerber" msgstr "Экспортирование Gerber" -#: FlatCAMApp.py:7348 FlatCAMApp.py:7355 +#: FlatCAMApp.py:7419 FlatCAMApp.py:7426 msgid "[ERROR_NOTCL] Could not export Gerber file." msgstr "[ERROR_NOTCL] Не удалось экспортировать файл Gerber." -#: FlatCAMApp.py:7395 +#: FlatCAMApp.py:7466 #, python-format msgid "[success] DXF file exported to %s" msgstr "[success] Файл DXF экспортируется в %s" -#: FlatCAMApp.py:7401 +#: FlatCAMApp.py:7472 msgid "Exporting DXF" msgstr "Экспорт DXF" -#: FlatCAMApp.py:7406 FlatCAMApp.py:7413 +#: FlatCAMApp.py:7477 FlatCAMApp.py:7484 msgid "[[WARNING_NOTCL]] Could not export DXF file." msgstr "[[WARNING_NOTCL]] Не удалось экспортировать файл DXF." -#: FlatCAMApp.py:7433 FlatCAMApp.py:7475 FlatCAMApp.py:7519 +#: FlatCAMApp.py:7504 FlatCAMApp.py:7546 FlatCAMApp.py:7590 msgid "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" @@ -906,96 +906,96 @@ msgstr "" "[ERROR_NOTCL] В качестве параметра выбран не поддерживаемый тип. " "Поддерживаются только Geometry и Gerber." -#: FlatCAMApp.py:7443 +#: FlatCAMApp.py:7514 msgid "Importing SVG" msgstr "Импортирование SVG" -#: FlatCAMApp.py:7454 FlatCAMApp.py:7496 FlatCAMApp.py:7539 FlatCAMApp.py:7616 -#: FlatCAMApp.py:7677 FlatCAMApp.py:7740 flatcamTools/ToolPDF.py:212 +#: FlatCAMApp.py:7525 FlatCAMApp.py:7567 FlatCAMApp.py:7610 FlatCAMApp.py:7687 +#: FlatCAMApp.py:7748 FlatCAMApp.py:7811 flatcamTools/ToolPDF.py:212 #, python-format msgid "[success] Opened: %s" msgstr "[success] Открыт: %s" -#: FlatCAMApp.py:7485 +#: FlatCAMApp.py:7556 msgid "Importing DXF" msgstr "Импорт DXF" -#: FlatCAMApp.py:7527 +#: FlatCAMApp.py:7598 msgid "Importing Image" msgstr "Импорт изображения" -#: FlatCAMApp.py:7568 FlatCAMApp.py:7570 +#: FlatCAMApp.py:7639 FlatCAMApp.py:7641 #, python-format msgid "[ERROR_NOTCL] Failed to open file: %s" msgstr "[ERROR_NOTCL] Не удалось открыть файл: %s" -#: FlatCAMApp.py:7573 +#: FlatCAMApp.py:7644 #, python-brace-format msgid "[ERROR_NOTCL] Failed to parse file: {name}. {error}" msgstr "[ERROR_NOTCL] Не удалось проанализировать файл: {name}. {error}" -#: FlatCAMApp.py:7580 FlatCAMObj.py:4266 +#: FlatCAMApp.py:7651 FlatCAMObj.py:4266 #: flatcamEditors/FlatCAMExcEditor.py:2077 msgid "[ERROR] An internal error has ocurred. See shell.\n" msgstr "[ERROR] Произошла внутренняя ошибка. Посмотрите в командную строку.\n" -#: FlatCAMApp.py:7589 +#: FlatCAMApp.py:7660 msgid "" "[ERROR_NOTCL] Object is not Gerber file or empty. Aborting object creation." msgstr "" "[ERROR_NOTCL] Объект не является файлом Gerber или пустым. Прерывание " "создания объекта." -#: FlatCAMApp.py:7597 +#: FlatCAMApp.py:7668 msgid "Opening Gerber" msgstr "Открытие Gerber" -#: FlatCAMApp.py:7607 +#: FlatCAMApp.py:7678 msgid "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." msgstr "[ERROR_NOTCL] Открыть Gerber не удалось. Вероятно, не файл Gerber." -#: FlatCAMApp.py:7640 flatcamTools/ToolPcbWizard.py:421 +#: FlatCAMApp.py:7711 flatcamTools/ToolPcbWizard.py:421 msgid "[ERROR_NOTCL] This is not Excellon file." msgstr "[ERROR_NOTCL] Это не Excellon файл." -#: FlatCAMApp.py:7643 +#: FlatCAMApp.py:7714 #, python-format msgid "[ERROR_NOTCL] Cannot open file: %s" msgstr "[ERROR_NOTCL] Не удается открыть файл: %s" -#: FlatCAMApp.py:7648 flatcamTools/ToolPcbWizard.py:429 +#: FlatCAMApp.py:7719 flatcamTools/ToolPcbWizard.py:429 msgid "[ERROR_NOTCL] An internal error has occurred. See shell.\n" msgstr "[ERROR_NOTCL] Произошла внутренняя ошибка. Вижу оболочки.\n" -#: FlatCAMApp.py:7661 flatcamTools/ToolPDF.py:262 +#: FlatCAMApp.py:7732 flatcamTools/ToolPDF.py:262 #: flatcamTools/ToolPcbWizard.py:442 #, python-format msgid "[ERROR_NOTCL] No geometry found in file: %s" msgstr "[ERROR_NOTCL] Geometry не найдена в файле: %s" -#: FlatCAMApp.py:7664 +#: FlatCAMApp.py:7735 msgid "Opening Excellon." msgstr "Открытие Excellon." -#: FlatCAMApp.py:7670 +#: FlatCAMApp.py:7741 msgid "[ERROR_NOTCL] Open Excellon file failed. Probable not an Excellon file." msgstr "" "[ERROR_NOTCL] Не удалось открыть файл Excellon. Вероятно, не файл Excellon." -#: FlatCAMApp.py:7707 +#: FlatCAMApp.py:7778 #, python-format msgid "[ERROR_NOTCL] Failed to open %s" msgstr "[ERROR_NOTCL] Не удалось открыть: %s" -#: FlatCAMApp.py:7717 +#: FlatCAMApp.py:7788 msgid "[ERROR_NOTCL] This is not GCODE" msgstr "[ERROR_NOTCL] Это не G-код" -#: FlatCAMApp.py:7723 +#: FlatCAMApp.py:7794 msgid "Opening G-Code." msgstr "Открытие G-Code." -#: FlatCAMApp.py:7731 +#: FlatCAMApp.py:7802 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 " @@ -1006,26 +1006,26 @@ msgstr "" "Попытка создать объект задания ЧПУ с плоским кулачком из файла G-кода не " "удалась во время обработки" -#: FlatCAMApp.py:7771 +#: FlatCAMApp.py:7842 #, python-format msgid "[ERROR_NOTCL] Failed to open config file: %s" msgstr "[ERROR_NOTCL] Не удалось открыть файл конфигурации: %s" -#: FlatCAMApp.py:7797 FlatCAMApp.py:7814 +#: FlatCAMApp.py:7868 FlatCAMApp.py:7885 #, python-format msgid "[ERROR_NOTCL] Failed to open project file: %s" msgstr "[ERROR_NOTCL] Не удалось открыть файл проекта : %s" -#: FlatCAMApp.py:7837 +#: FlatCAMApp.py:7908 #, python-format msgid "[success] Project loaded from: %s" msgstr "[success] Проект загружен из: %s" -#: FlatCAMApp.py:7942 +#: FlatCAMApp.py:8013 msgid "Available commands:\n" msgstr "Доступные команды:\n" -#: FlatCAMApp.py:7944 +#: FlatCAMApp.py:8015 msgid "" "\n" "\n" @@ -1037,27 +1037,27 @@ msgstr "" "Для дополнительной информации ведите help <имя_команды> .\n" "Пример: help open_gerber" -#: FlatCAMApp.py:8094 +#: FlatCAMApp.py:8165 msgid "Shows list of commands." msgstr "Показывает список команд." -#: FlatCAMApp.py:8151 +#: FlatCAMApp.py:8222 msgid "[ERROR_NOTCL] Failed to load recent item list." msgstr "[ERROR_NOTCL] Не удалось загрузить список номенклатуры." -#: FlatCAMApp.py:8158 +#: FlatCAMApp.py:8229 msgid "[ERROR_NOTCL] Failed to parse recent item list." msgstr "[ERROR_NOTCL] Не удалось проанализировать список последних элементов." -#: FlatCAMApp.py:8202 +#: FlatCAMApp.py:8273 msgid "Clear Recent files" msgstr "Очистить список" -#: FlatCAMApp.py:8219 flatcamGUI/FlatCAMGUI.py:968 +#: FlatCAMApp.py:8290 flatcamGUI/FlatCAMGUI.py:968 msgid "Shortcut Key List" msgstr "Список сочетаний клавиш" -#: FlatCAMApp.py:8226 +#: FlatCAMApp.py:8297 msgid "" "\n" "

Selected Tab - Choose an Item from " @@ -1107,26 +1107,26 @@ msgid "" " " msgstr "" -#: FlatCAMApp.py:8333 +#: FlatCAMApp.py:8404 msgid "[WARNING_NOTCL] Failed checking for latest version. Could not connect." msgstr "" "[WARNING_NOTCL] Не удалось проверить последнюю версию. Не удалось " "подключиться." -#: FlatCAMApp.py:8340 +#: FlatCAMApp.py:8411 msgid "[ERROR_NOTCL] Could not parse information about latest version." msgstr "" "[ERROR_NOTCL] Не удалось проанализировать информацию о последней версии." -#: FlatCAMApp.py:8350 +#: FlatCAMApp.py:8421 msgid "[success] FlatCAM is up to date!" msgstr "[success] FlatCAM в актуальном состоянии!" -#: FlatCAMApp.py:8355 +#: FlatCAMApp.py:8426 msgid "Newer Version Available" msgstr "Доступна новая версия" -#: FlatCAMApp.py:8356 +#: FlatCAMApp.py:8427 msgid "" "There is a newer version of FlatCAM available for download:\n" "\n" @@ -1134,58 +1134,58 @@ msgstr "" "Новая версия FlatCAM доступна для загрузки:\n" "\n" -#: FlatCAMApp.py:8358 +#: FlatCAMApp.py:8429 msgid "info" msgstr "инфо" -#: FlatCAMApp.py:8377 +#: FlatCAMApp.py:8448 msgid "[success] All plots disabled." msgstr "[success] Все участки отключены." -#: FlatCAMApp.py:8383 +#: FlatCAMApp.py:8454 msgid "[success] All non selected plots disabled." msgstr "[success] Все невыбранные участки отключены." -#: FlatCAMApp.py:8389 +#: FlatCAMApp.py:8460 msgid "[success] All plots enabled." msgstr "[success] Все участки включены." -#: FlatCAMApp.py:8395 +#: FlatCAMApp.py:8466 msgid "[success] Selected plots enabled..." msgstr "[success] Выбранные участки включены..." -#: FlatCAMApp.py:8403 +#: FlatCAMApp.py:8474 msgid "[success] Selected plots disabled..." msgstr "[success] Выбранные участки отключены..." -#: FlatCAMApp.py:8413 FlatCAMApp.py:8426 +#: FlatCAMApp.py:8484 FlatCAMApp.py:8497 msgid "Working ..." msgstr "Обработка…" -#: FlatCAMApp.py:8460 +#: FlatCAMApp.py:8531 msgid "Saving FlatCAM Project" msgstr "Сохранение проекта FlatCAM" -#: FlatCAMApp.py:8481 FlatCAMApp.py:8512 +#: FlatCAMApp.py:8552 FlatCAMApp.py:8583 #, python-format msgid "[success] Project saved to: %s" msgstr "[success] Проект, сохраненный на: %s" -#: FlatCAMApp.py:8499 +#: FlatCAMApp.py:8570 #, python-format msgid "[ERROR_NOTCL] Failed to verify project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Не удалось проверить файл проекта: %s. Повторите попытку " "сохранить его." -#: FlatCAMApp.py:8506 +#: FlatCAMApp.py:8577 #, python-format msgid "[ERROR_NOTCL] Failed to parse saved project file: %s. Retry to save it." msgstr "" "[ERROR_NOTCL] Не удалось проанализировать сохраненный файл проекта: %s. " "Повторите попытку сохранить его." -#: FlatCAMApp.py:8514 +#: FlatCAMApp.py:8585 #, python-format msgid "[ERROR_NOTCL] Failed to save project file: %s. Retry to save it." msgstr "" @@ -6674,25 +6674,30 @@ msgid "" "to create the desired exit hole diameter due of the tip shape.\n" "The value here can compensate the Cut Z parameter." msgstr "" +"Некоторые сверла (большие) нужно сверлить глубже\n" +"создать необходимый диаметр выходного отверстия за счет формы наконечника.\n" +"Значение здесь может компенсировать Cut Z параметра." #: flatcamGUI/FlatCAMGUI.py:4792 flatcamGUI/FlatCAMGUI.py:5354 msgid "Toolchange X,Y:" -msgstr "" +msgstr "Смена инструмента X, Y:" #: flatcamGUI/FlatCAMGUI.py:4794 flatcamGUI/FlatCAMGUI.py:5356 msgid "Toolchange X,Y position." -msgstr "" +msgstr "Изменение инструмента X, Y положение." #: flatcamGUI/FlatCAMGUI.py:4800 flatcamGUI/FlatCAMGUI.py:5363 #: flatcamGUI/ObjectUI.py:634 msgid "Start move Z:" -msgstr "" +msgstr "Начать движение Z:" #: flatcamGUI/FlatCAMGUI.py:4802 msgid "" "Height of the tool just after start.\n" "Delete the value if you don't need this feature." msgstr "" +"Высота инструмента сразу после запуска.\n" +"Удалить значение если вам не нужна эта функция." #: flatcamGUI/FlatCAMGUI.py:4809 flatcamGUI/FlatCAMGUI.py:5373 #: flatcamGUI/ObjectUI.py:644 flatcamGUI/ObjectUI.py:1144 @@ -6710,7 +6715,7 @@ msgstr "" #: flatcamGUI/FlatCAMGUI.py:4818 flatcamGUI/FlatCAMGUI.py:5383 #: flatcamGUI/ObjectUI.py:665 msgid "Feedrate Rapids:" -msgstr "" +msgstr "Пороги Скорости Подачи:" #: flatcamGUI/FlatCAMGUI.py:4820 flatcamGUI/ObjectUI.py:667 msgid "" @@ -6720,11 +6725,16 @@ msgid "" "It is useful only for Marlin,\n" "ignore for any other cases." msgstr "" +"Скорость инструмента во время сверления\n" +"(в единицах измерения в минуту).\n" +"Это для быстрого перемещения G00.\n" +"Полезно только для Marlin,\n" +"игнорировать для любых других случаев." #: flatcamGUI/FlatCAMGUI.py:4831 flatcamGUI/FlatCAMGUI.py:5407 #: flatcamGUI/ObjectUI.py:718 flatcamGUI/ObjectUI.py:1256 msgid "Probe Z depth:" -msgstr "" +msgstr "Глубина зонда Z:" #: flatcamGUI/FlatCAMGUI.py:4833 flatcamGUI/FlatCAMGUI.py:5409 #: flatcamGUI/ObjectUI.py:720 flatcamGUI/ObjectUI.py:1259 @@ -6732,16 +6742,18 @@ msgid "" "The maximum depth that the probe is allowed\n" "to probe. Negative value, in current units." msgstr "" +"Максимальная глубина, допустимая для зонда\n" +"зондировать. Отрицательное значение в текущих единицах." #: flatcamGUI/FlatCAMGUI.py:4841 flatcamGUI/FlatCAMGUI.py:5417 #: flatcamGUI/ObjectUI.py:730 flatcamGUI/ObjectUI.py:1270 msgid "Feedrate Probe:" -msgstr "" +msgstr "Датчик Скорости Подачи:" #: flatcamGUI/FlatCAMGUI.py:4843 flatcamGUI/FlatCAMGUI.py:5419 #: flatcamGUI/ObjectUI.py:732 flatcamGUI/ObjectUI.py:1273 msgid "The feedrate used while the probe is probing." -msgstr "" +msgstr "Скорость подачи, используемая во время зондирования." #: flatcamGUI/FlatCAMGUI.py:4849 flatcamGUI/FlatCAMGUI.py:5426 msgid "Fast Plunge:" @@ -6754,6 +6766,10 @@ msgid "" "meaning the fastest speed available.\n" "WARNING: the move is done at Toolchange X,Y coords." msgstr "" +"Проверяя это, вертикальное перемещение\n" +"Z_toolchange на Z_move выполняется с помощью G0,\n" +"это означает самую быструю скорость.\n" +"Предупреждение: перемещение выполняется при смене координат Toolchange X,Y." #: flatcamGUI/FlatCAMGUI.py:4860 msgid "Fast Retract:" @@ -6768,6 +6784,14 @@ msgid "" " - When checked the travel from Z cut (cut depth) to Z_move\n" "(travel height) is done as fast as possible (G0) in one move." msgstr "" +"Стратегия выхода из отверстия.\n" +" - - Когда не проверено, пока выходящ просверленное отверстие буровой " +"наконечник\n" +"будет путешествовать медленно, с установленной скоростью подачи (G1), до " +"нулевой глубины, а затем\n" +"путешествуйте как можно быстрее (G0) к Z_move (высота перемещения).\n" +" - Когда проверено перемещение от Z_cut(глубины отрезка) к Z_move\n" +"(высота перемещения) делается как можно быстрее (G0) за один ход." #: flatcamGUI/FlatCAMGUI.py:4881 msgid "Excellon Export" @@ -6778,10 +6802,12 @@ msgid "" "The parameters set here are used in the file exported\n" "when using the File -> Export -> Export Excellon menu entry." msgstr "" +"Заданные здесь параметры используются в экспортированном файле\n" +"при использовании файла - > экспорт - > Экспорт Excellon пункт меню." #: flatcamGUI/FlatCAMGUI.py:4897 flatcamGUI/FlatCAMGUI.py:4903 msgid "The units used in the Excellon file." -msgstr "" +msgstr "Единицы измерения, используемые в файле Excellon." #: flatcamGUI/FlatCAMGUI.py:4911 msgid "" @@ -6790,6 +6816,10 @@ msgid "" "Here we set the format used when the provided\n" "coordinates are not using period." msgstr "" +"Файлы ЧПУ сверла, как правило, по имени файлов Excellon \n" +"это файлы, которые можно найти в разных форматах.\n" +"Здесь мы устанавливаем формат, используемый, когда\n" +"координаты не используют точку." #: flatcamGUI/FlatCAMGUI.py:4947 msgid "Format:" diff --git a/locale_template/strings.pot b/locale_template/strings.pot index bcfaea2a..2fcc3304 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-06-22 21:02+0300\n" +"POT-Creation-Date: 2019-06-22 23:56+0300\n" "PO-Revision-Date: 2019-03-25 15:08+0200\n" "Last-Translator: \n" "Language-Team: \n" @@ -40,124 +40,124 @@ msgstr "" msgid "Open Script file failed." msgstr "" -#: FlatCAMApp.py:2234 +#: FlatCAMApp.py:2244 msgid "[WARNING_NOTCL] Select a Geometry, Gerber or Excellon Object to edit." msgstr "" -#: FlatCAMApp.py:2244 +#: FlatCAMApp.py:2254 msgid "" "[WARNING_NOTCL] Simultanoeus editing of tools geometry in a MultiGeo " "Geometry is not possible.\n" "Edit only one geometry at a time." msgstr "" -#: FlatCAMApp.py:2299 +#: FlatCAMApp.py:2309 msgid "[WARNING_NOTCL] Editor is activated ..." msgstr "" -#: FlatCAMApp.py:2317 +#: FlatCAMApp.py:2327 msgid "Do you want to save the edited object?" msgstr "" -#: FlatCAMApp.py:2318 flatcamGUI/FlatCAMGUI.py:1618 +#: FlatCAMApp.py:2328 flatcamGUI/FlatCAMGUI.py:1618 msgid "Close Editor" msgstr "" -#: FlatCAMApp.py:2321 FlatCAMApp.py:3413 FlatCAMApp.py:5918 +#: FlatCAMApp.py:2331 FlatCAMApp.py:3423 FlatCAMApp.py:5989 #: FlatCAMTranslation.py:89 flatcamGUI/FlatCAMGUI.py:3730 msgid "Yes" msgstr "" -#: FlatCAMApp.py:2322 FlatCAMApp.py:3414 FlatCAMApp.py:5919 +#: FlatCAMApp.py:2332 FlatCAMApp.py:3424 FlatCAMApp.py:5990 #: FlatCAMTranslation.py:90 flatcamGUI/FlatCAMGUI.py:3731 msgid "No" msgstr "" -#: FlatCAMApp.py:2323 FlatCAMApp.py:3415 FlatCAMApp.py:3764 FlatCAMApp.py:5920 +#: FlatCAMApp.py:2333 FlatCAMApp.py:3425 FlatCAMApp.py:3836 FlatCAMApp.py:5991 msgid "Cancel" msgstr "" -#: FlatCAMApp.py:2350 +#: FlatCAMApp.py:2360 msgid "[WARNING] Object empty after edit." msgstr "" -#: FlatCAMApp.py:2372 FlatCAMApp.py:2391 FlatCAMApp.py:2403 +#: FlatCAMApp.py:2382 FlatCAMApp.py:2401 FlatCAMApp.py:2413 msgid "[WARNING_NOTCL] Select a Gerber, Geometry or Excellon Object to update." msgstr "" -#: FlatCAMApp.py:2375 +#: FlatCAMApp.py:2385 #, python-format msgid "[selected] %s is updated, returning to App..." msgstr "" -#: FlatCAMApp.py:2740 +#: FlatCAMApp.py:2750 msgid "[ERROR] Could not load defaults file." msgstr "" -#: FlatCAMApp.py:2752 +#: FlatCAMApp.py:2762 msgid "[ERROR] Failed to parse defaults file." msgstr "" -#: FlatCAMApp.py:2773 FlatCAMApp.py:2777 +#: FlatCAMApp.py:2783 FlatCAMApp.py:2787 msgid "Import FlatCAM Preferences" msgstr "" -#: FlatCAMApp.py:2783 +#: FlatCAMApp.py:2793 msgid "[WARNING_NOTCL] FlatCAM preferences import cancelled." msgstr "" -#: FlatCAMApp.py:2791 FlatCAMApp.py:2845 FlatCAMApp.py:3292 +#: FlatCAMApp.py:2801 FlatCAMApp.py:2855 FlatCAMApp.py:3302 msgid "[ERROR_NOTCL] Could not load defaults file." msgstr "" -#: FlatCAMApp.py:2799 FlatCAMApp.py:3301 +#: FlatCAMApp.py:2809 FlatCAMApp.py:3311 msgid "[ERROR_NOTCL] Failed to parse defaults file." msgstr "" -#: FlatCAMApp.py:2802 +#: FlatCAMApp.py:2812 #, python-format msgid "[success] Imported Defaults from %s" msgstr "" -#: FlatCAMApp.py:2817 FlatCAMApp.py:2822 +#: FlatCAMApp.py:2827 FlatCAMApp.py:2832 msgid "Export FlatCAM Preferences" msgstr "" -#: FlatCAMApp.py:2829 +#: FlatCAMApp.py:2839 msgid "[WARNING_NOTCL] FlatCAM preferences export cancelled." msgstr "" -#: FlatCAMApp.py:2864 FlatCAMApp.py:3346 +#: FlatCAMApp.py:2874 FlatCAMApp.py:3356 msgid "[ERROR_NOTCL] Failed to write defaults to file." msgstr "" -#: FlatCAMApp.py:2917 +#: FlatCAMApp.py:2927 msgid "[ERROR_NOTCL] Failed to open recent files file for writing." msgstr "" -#: FlatCAMApp.py:2994 camlib.py:4457 +#: FlatCAMApp.py:3004 camlib.py:4457 msgid "[ERROR_NOTCL] An internal error has ocurred. See shell.\n" msgstr "" -#: FlatCAMApp.py:2995 +#: FlatCAMApp.py:3005 #, python-brace-format msgid "" "Object ({kind}) failed because: {error} \n" "\n" msgstr "" -#: FlatCAMApp.py:3015 +#: FlatCAMApp.py:3025 msgid "Converting units to " msgstr "" -#: FlatCAMApp.py:3094 FlatCAMApp.py:3097 FlatCAMApp.py:3100 FlatCAMApp.py:3103 +#: FlatCAMApp.py:3104 FlatCAMApp.py:3107 FlatCAMApp.py:3110 FlatCAMApp.py:3113 #, python-brace-format msgid "" "[selected] {kind} created/selected: {name}" msgstr "" -#: FlatCAMApp.py:3197 +#: FlatCAMApp.py:3207 #, python-brace-format msgid "" "FlatCAM
Version {version} {beta} ({date}) - " @@ -171,41 +171,41 @@ msgid "" "downloads/\">here.
" msgstr "" -#: FlatCAMApp.py:3350 +#: FlatCAMApp.py:3360 msgid "[success] Defaults saved." msgstr "" -#: FlatCAMApp.py:3371 +#: FlatCAMApp.py:3381 msgid "[ERROR_NOTCL] Could not load factory defaults file." msgstr "" -#: FlatCAMApp.py:3380 +#: FlatCAMApp.py:3390 msgid "[ERROR_NOTCL] Failed to parse factory defaults file." msgstr "" -#: FlatCAMApp.py:3394 +#: FlatCAMApp.py:3404 msgid "[ERROR_NOTCL] Failed to write factory defaults to file." msgstr "" -#: FlatCAMApp.py:3398 +#: FlatCAMApp.py:3408 msgid "Factory defaults saved." msgstr "" -#: FlatCAMApp.py:3403 flatcamGUI/FlatCAMGUI.py:3106 +#: FlatCAMApp.py:3413 flatcamGUI/FlatCAMGUI.py:3106 msgid "[WARNING_NOTCL] Application is saving the project. Please wait ..." msgstr "" -#: FlatCAMApp.py:3408 +#: FlatCAMApp.py:3418 msgid "" "There are files/objects modified in FlatCAM. \n" "Do you want to Save the project?" msgstr "" -#: FlatCAMApp.py:3411 FlatCAMApp.py:5916 +#: FlatCAMApp.py:3421 FlatCAMApp.py:5987 msgid "Save changes" msgstr "" -#: FlatCAMApp.py:3478 +#: FlatCAMApp.py:3488 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 " @@ -215,113 +215,113 @@ msgid "" "Check the generated GCODE." msgstr "" -#: FlatCAMApp.py:3519 +#: FlatCAMApp.py:3529 msgid "[ERROR_NOTCL] Failed. Excellon joining works only on Excellon objects." msgstr "" -#: FlatCAMApp.py:3541 +#: FlatCAMApp.py:3551 msgid "[ERROR_NOTCL] Failed. Gerber joining works only on Gerber objects." msgstr "" -#: FlatCAMApp.py:3556 FlatCAMApp.py:3581 +#: FlatCAMApp.py:3566 FlatCAMApp.py:3591 msgid "[ERROR_NOTCL] Failed. Select a Geometry Object and try again." msgstr "" -#: FlatCAMApp.py:3560 FlatCAMApp.py:3585 +#: FlatCAMApp.py:3570 FlatCAMApp.py:3595 #, python-format msgid "[ERROR_NOTCL] Expected a FlatCAMGeometry, got %s" msgstr "" -#: FlatCAMApp.py:3573 +#: FlatCAMApp.py:3583 msgid "[success] A Geometry object was converted to MultiGeo type." msgstr "" -#: FlatCAMApp.py:3599 +#: FlatCAMApp.py:3609 msgid "[success] A Geometry object was converted to SingleGeo type." msgstr "" -#: FlatCAMApp.py:3763 FlatCAMApp.py:4603 FlatCAMApp.py:6191 FlatCAMApp.py:6202 -#: FlatCAMApp.py:6442 FlatCAMApp.py:6452 +#: FlatCAMApp.py:3835 FlatCAMApp.py:4674 FlatCAMApp.py:6262 FlatCAMApp.py:6273 +#: FlatCAMApp.py:6513 FlatCAMApp.py:6523 msgid "Ok" msgstr "" -#: FlatCAMApp.py:3809 +#: FlatCAMApp.py:3880 #, python-format msgid "[success] Converted units to %s" msgstr "" -#: FlatCAMApp.py:3820 +#: FlatCAMApp.py:3891 msgid "[WARNING_NOTCL] Units conversion cancelled." msgstr "" -#: FlatCAMApp.py:4472 +#: FlatCAMApp.py:4543 msgid "Open file" msgstr "" -#: FlatCAMApp.py:4503 FlatCAMApp.py:4508 +#: FlatCAMApp.py:4574 FlatCAMApp.py:4579 msgid "Export G-Code ..." msgstr "" -#: FlatCAMApp.py:4511 +#: FlatCAMApp.py:4582 msgid "[WARNING_NOTCL] Export Code cancelled." msgstr "" -#: FlatCAMApp.py:4521 +#: FlatCAMApp.py:4592 msgid "[WARNING] No such file or directory" msgstr "" -#: FlatCAMApp.py:4528 +#: FlatCAMApp.py:4599 #, python-format msgid "Saved to: %s" msgstr "" -#: FlatCAMApp.py:4591 FlatCAMApp.py:4624 FlatCAMApp.py:4635 FlatCAMApp.py:4646 +#: FlatCAMApp.py:4662 FlatCAMApp.py:4695 FlatCAMApp.py:4706 FlatCAMApp.py:4717 #: flatcamTools/ToolNonCopperClear.py:489 flatcamTools/ToolSolderPaste.py:765 msgid "" "[WARNING_NOTCL] Please enter a tool diameter with non-zero value, in Float " "format." msgstr "" -#: FlatCAMApp.py:4596 FlatCAMApp.py:4629 FlatCAMApp.py:4640 FlatCAMApp.py:4651 +#: FlatCAMApp.py:4667 FlatCAMApp.py:4700 FlatCAMApp.py:4711 FlatCAMApp.py:4722 #: flatcamGUI/FlatCAMGUI.py:3001 msgid "[WARNING_NOTCL] Adding Tool cancelled ..." msgstr "" -#: FlatCAMApp.py:4599 +#: FlatCAMApp.py:4670 msgid "" "Adding Tool works only when Advanced is checked.\n" "Go to Preferences -> General - Show Advanced Options." msgstr "" -#: FlatCAMApp.py:4712 +#: FlatCAMApp.py:4783 msgid "Object(s) deleted ..." msgstr "" -#: FlatCAMApp.py:4716 +#: FlatCAMApp.py:4787 msgid "Failed. No object(s) selected..." msgstr "" -#: FlatCAMApp.py:4718 +#: FlatCAMApp.py:4789 msgid "Save the work in Editor and try again ..." msgstr "" -#: FlatCAMApp.py:4731 +#: FlatCAMApp.py:4802 msgid "Click to set the origin ..." msgstr "" -#: FlatCAMApp.py:4743 +#: FlatCAMApp.py:4814 msgid "Jump to ..." msgstr "" -#: FlatCAMApp.py:4744 +#: FlatCAMApp.py:4815 msgid "Enter the coordinates in format X,Y:" msgstr "" -#: FlatCAMApp.py:4751 +#: FlatCAMApp.py:4822 msgid "Wrong coordinates. Enter coordinates in format: X,Y" msgstr "" -#: FlatCAMApp.py:4769 flatcamEditors/FlatCAMExcEditor.py:2320 +#: FlatCAMApp.py:4840 flatcamEditors/FlatCAMExcEditor.py:2320 #: flatcamEditors/FlatCAMExcEditor.py:2327 #: flatcamEditors/FlatCAMGeoEditor.py:3648 #: flatcamEditors/FlatCAMGeoEditor.py:3662 @@ -335,84 +335,84 @@ msgstr "" msgid "[success] Done." msgstr "" -#: FlatCAMApp.py:4901 FlatCAMApp.py:4968 +#: FlatCAMApp.py:4972 FlatCAMApp.py:5039 msgid "[WARNING_NOTCL] No object is selected. Select an object and try again." msgstr "" -#: FlatCAMApp.py:5009 +#: FlatCAMApp.py:5080 msgid "[success] Origin set ..." msgstr "" -#: FlatCAMApp.py:5029 +#: FlatCAMApp.py:5100 msgid "Preferences" msgstr "" -#: FlatCAMApp.py:5049 +#: FlatCAMApp.py:5120 msgid "[WARNING_NOTCL] No object selected to Flip on Y axis." msgstr "" -#: FlatCAMApp.py:5074 +#: FlatCAMApp.py:5145 msgid "[success] Flip on Y axis done." msgstr "" -#: FlatCAMApp.py:5076 FlatCAMApp.py:5116 +#: FlatCAMApp.py:5147 FlatCAMApp.py:5187 #: flatcamEditors/FlatCAMGeoEditor.py:1355 #: flatcamEditors/FlatCAMGrbEditor.py:5343 flatcamTools/ToolTransform.py:748 #, python-format msgid "[ERROR_NOTCL] Due of %s, Flip action was not executed." msgstr "" -#: FlatCAMApp.py:5089 +#: FlatCAMApp.py:5160 msgid "[WARNING_NOTCL] No object selected to Flip on X axis." msgstr "" -#: FlatCAMApp.py:5114 +#: FlatCAMApp.py:5185 msgid "[success] Flip on X axis done." msgstr "" -#: FlatCAMApp.py:5129 +#: FlatCAMApp.py:5200 msgid "[WARNING_NOTCL] No object selected to Rotate." msgstr "" -#: FlatCAMApp.py:5132 FlatCAMApp.py:5177 FlatCAMApp.py:5208 +#: FlatCAMApp.py:5203 FlatCAMApp.py:5248 FlatCAMApp.py:5279 msgid "Transform" msgstr "" -#: FlatCAMApp.py:5132 FlatCAMApp.py:5177 FlatCAMApp.py:5208 +#: FlatCAMApp.py:5203 FlatCAMApp.py:5248 FlatCAMApp.py:5279 msgid "Enter the Angle value:" msgstr "" -#: FlatCAMApp.py:5162 +#: FlatCAMApp.py:5233 msgid "[success] Rotation done." msgstr "" -#: FlatCAMApp.py:5164 flatcamEditors/FlatCAMGeoEditor.py:1298 +#: FlatCAMApp.py:5235 flatcamEditors/FlatCAMGeoEditor.py:1298 #: flatcamEditors/FlatCAMGrbEditor.py:5272 flatcamTools/ToolTransform.py:677 #, python-format msgid "[ERROR_NOTCL] Due of %s, rotation movement was not executed." msgstr "" -#: FlatCAMApp.py:5175 +#: FlatCAMApp.py:5246 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on X axis." msgstr "" -#: FlatCAMApp.py:5196 +#: FlatCAMApp.py:5267 msgid "[success] Skew on X axis done." msgstr "" -#: FlatCAMApp.py:5206 +#: FlatCAMApp.py:5277 msgid "[WARNING_NOTCL] No object selected to Skew/Shear on Y axis." msgstr "" -#: FlatCAMApp.py:5227 +#: FlatCAMApp.py:5298 msgid "[success] Skew on Y axis done." msgstr "" -#: FlatCAMApp.py:5297 +#: FlatCAMApp.py:5368 msgid "Grid On/Off" msgstr "" -#: FlatCAMApp.py:5310 flatcamEditors/FlatCAMGeoEditor.py:937 +#: FlatCAMApp.py:5381 flatcamEditors/FlatCAMGeoEditor.py:937 #: flatcamEditors/FlatCAMGrbEditor.py:2381 #: flatcamEditors/FlatCAMGrbEditor.py:4861 flatcamGUI/ObjectUI.py:991 #: flatcamTools/ToolDblSided.py:160 flatcamTools/ToolDblSided.py:208 @@ -422,7 +422,7 @@ msgstr "" msgid "Add" msgstr "" -#: FlatCAMApp.py:5311 FlatCAMObj.py:3295 +#: FlatCAMApp.py:5382 FlatCAMObj.py:3295 #: flatcamEditors/FlatCAMGrbEditor.py:2386 flatcamGUI/FlatCAMGUI.py:527 #: flatcamGUI/FlatCAMGUI.py:724 flatcamGUI/FlatCAMGUI.py:1616 #: flatcamGUI/FlatCAMGUI.py:1953 flatcamGUI/ObjectUI.py:1007 @@ -431,278 +431,278 @@ msgstr "" msgid "Delete" msgstr "" -#: FlatCAMApp.py:5324 +#: FlatCAMApp.py:5395 msgid "New Grid ..." msgstr "" -#: FlatCAMApp.py:5325 +#: FlatCAMApp.py:5396 msgid "Enter a Grid Value:" msgstr "" -#: FlatCAMApp.py:5333 FlatCAMApp.py:5360 +#: FlatCAMApp.py:5404 FlatCAMApp.py:5431 msgid "" "[WARNING_NOTCL] Please enter a grid value with non-zero value, in Float " "format." msgstr "" -#: FlatCAMApp.py:5339 +#: FlatCAMApp.py:5410 msgid "[success] New Grid added ..." msgstr "" -#: FlatCAMApp.py:5342 +#: FlatCAMApp.py:5413 msgid "[WARNING_NOTCL] Grid already exists ..." msgstr "" -#: FlatCAMApp.py:5345 +#: FlatCAMApp.py:5416 msgid "[WARNING_NOTCL] Adding New Grid cancelled ..." msgstr "" -#: FlatCAMApp.py:5367 +#: FlatCAMApp.py:5438 msgid "[ERROR_NOTCL] Grid Value does not exist ..." msgstr "" -#: FlatCAMApp.py:5370 +#: FlatCAMApp.py:5441 msgid "[success] Grid Value deleted ..." msgstr "" -#: FlatCAMApp.py:5373 +#: FlatCAMApp.py:5444 msgid "[WARNING_NOTCL] Delete Grid value cancelled ..." msgstr "" -#: FlatCAMApp.py:5412 +#: FlatCAMApp.py:5483 msgid "[WARNING_NOTCL] No object selected to copy it's name" msgstr "" -#: FlatCAMApp.py:5416 +#: FlatCAMApp.py:5487 msgid "Name copied on clipboard ..." msgstr "" -#: FlatCAMApp.py:5458 flatcamEditors/FlatCAMGrbEditor.py:3901 +#: FlatCAMApp.py:5529 flatcamEditors/FlatCAMGrbEditor.py:3901 msgid "[success] Coordinates copied to clipboard." msgstr "" -#: FlatCAMApp.py:5714 FlatCAMApp.py:5717 FlatCAMApp.py:5720 FlatCAMApp.py:5723 -#: FlatCAMApp.py:5738 FlatCAMApp.py:5741 FlatCAMApp.py:5744 FlatCAMApp.py:5747 -#: FlatCAMApp.py:5787 FlatCAMApp.py:5790 FlatCAMApp.py:5793 FlatCAMApp.py:5796 +#: FlatCAMApp.py:5785 FlatCAMApp.py:5788 FlatCAMApp.py:5791 FlatCAMApp.py:5794 +#: FlatCAMApp.py:5809 FlatCAMApp.py:5812 FlatCAMApp.py:5815 FlatCAMApp.py:5818 +#: FlatCAMApp.py:5858 FlatCAMApp.py:5861 FlatCAMApp.py:5864 FlatCAMApp.py:5867 #: ObjectCollection.py:719 ObjectCollection.py:722 ObjectCollection.py:725 #: ObjectCollection.py:728 #, python-brace-format msgid "[selected]{name} selected" msgstr "" -#: FlatCAMApp.py:5913 +#: FlatCAMApp.py:5984 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:5934 +#: FlatCAMApp.py:6005 msgid "[success] New Project created..." msgstr "" -#: FlatCAMApp.py:6050 FlatCAMApp.py:6053 flatcamGUI/FlatCAMGUI.py:608 +#: FlatCAMApp.py:6121 FlatCAMApp.py:6124 flatcamGUI/FlatCAMGUI.py:608 #: flatcamGUI/FlatCAMGUI.py:1832 msgid "Open Gerber" msgstr "" -#: FlatCAMApp.py:6058 +#: FlatCAMApp.py:6129 msgid "[WARNING_NOTCL] Open Gerber cancelled." msgstr "" -#: FlatCAMApp.py:6079 FlatCAMApp.py:6082 flatcamGUI/FlatCAMGUI.py:609 +#: FlatCAMApp.py:6150 FlatCAMApp.py:6153 flatcamGUI/FlatCAMGUI.py:609 #: flatcamGUI/FlatCAMGUI.py:1833 msgid "Open Excellon" msgstr "" -#: FlatCAMApp.py:6087 +#: FlatCAMApp.py:6158 msgid "[WARNING_NOTCL] Open Excellon cancelled." msgstr "" -#: FlatCAMApp.py:6109 FlatCAMApp.py:6112 +#: FlatCAMApp.py:6180 FlatCAMApp.py:6183 msgid "Open G-Code" msgstr "" -#: FlatCAMApp.py:6117 +#: FlatCAMApp.py:6188 msgid "[WARNING_NOTCL] Open G-Code cancelled." msgstr "" -#: FlatCAMApp.py:6135 FlatCAMApp.py:6138 +#: FlatCAMApp.py:6206 FlatCAMApp.py:6209 msgid "Open Project" msgstr "" -#: FlatCAMApp.py:6146 +#: FlatCAMApp.py:6217 msgid "[WARNING_NOTCL] Open Project cancelled." msgstr "" -#: FlatCAMApp.py:6165 FlatCAMApp.py:6168 +#: FlatCAMApp.py:6236 FlatCAMApp.py:6239 msgid "Open Configuration File" msgstr "" -#: FlatCAMApp.py:6172 +#: FlatCAMApp.py:6243 msgid "[WARNING_NOTCL] Open Config cancelled." msgstr "" -#: FlatCAMApp.py:6187 FlatCAMApp.py:6438 FlatCAMApp.py:8591 FlatCAMApp.py:8611 -#: FlatCAMApp.py:8632 FlatCAMApp.py:8654 +#: FlatCAMApp.py:6258 FlatCAMApp.py:6509 FlatCAMApp.py:8662 FlatCAMApp.py:8682 +#: FlatCAMApp.py:8703 FlatCAMApp.py:8725 msgid "[WARNING_NOTCL] No object selected." msgstr "" -#: FlatCAMApp.py:6188 FlatCAMApp.py:6439 +#: FlatCAMApp.py:6259 FlatCAMApp.py:6510 msgid "Please Select a Geometry object to export" msgstr "" -#: FlatCAMApp.py:6199 +#: FlatCAMApp.py:6270 msgid "[ERROR_NOTCL] Only Geometry, Gerber and CNCJob objects can be used." msgstr "" -#: FlatCAMApp.py:6212 FlatCAMApp.py:6216 +#: FlatCAMApp.py:6283 FlatCAMApp.py:6287 msgid "Export SVG" msgstr "" -#: FlatCAMApp.py:6221 +#: FlatCAMApp.py:6292 msgid "[WARNING_NOTCL] Export SVG cancelled." msgstr "" -#: FlatCAMApp.py:6240 +#: FlatCAMApp.py:6311 msgid "[[WARNING_NOTCL]] Data must be a 3D array with last dimension 3 or 4" msgstr "" -#: FlatCAMApp.py:6246 FlatCAMApp.py:6250 +#: FlatCAMApp.py:6317 FlatCAMApp.py:6321 msgid "Export PNG Image" msgstr "" -#: FlatCAMApp.py:6255 +#: FlatCAMApp.py:6326 msgid "Export PNG cancelled." msgstr "" -#: FlatCAMApp.py:6274 +#: FlatCAMApp.py:6345 msgid "" "[WARNING_NOTCL] No object selected. Please select an Gerber object to export." msgstr "" -#: FlatCAMApp.py:6279 FlatCAMApp.py:6402 +#: FlatCAMApp.py:6350 FlatCAMApp.py:6473 msgid "" "[ERROR_NOTCL] Failed. Only Gerber objects can be saved as Gerber files..." msgstr "" -#: FlatCAMApp.py:6291 +#: FlatCAMApp.py:6362 msgid "Save Gerber source file" msgstr "" -#: FlatCAMApp.py:6296 +#: FlatCAMApp.py:6367 msgid "[WARNING_NOTCL] Save Gerber source file cancelled." msgstr "" -#: FlatCAMApp.py:6315 +#: FlatCAMApp.py:6386 msgid "" "[WARNING_NOTCL] No object selected. Please select an Excellon object to " "export." msgstr "" -#: FlatCAMApp.py:6320 FlatCAMApp.py:6361 +#: FlatCAMApp.py:6391 FlatCAMApp.py:6432 msgid "" "[ERROR_NOTCL] Failed. Only Excellon objects can be saved as Excellon files..." msgstr "" -#: FlatCAMApp.py:6328 FlatCAMApp.py:6332 +#: FlatCAMApp.py:6399 FlatCAMApp.py:6403 msgid "Save Excellon source file" msgstr "" -#: FlatCAMApp.py:6337 +#: FlatCAMApp.py:6408 msgid "[WARNING_NOTCL] Saving Excellon source file cancelled." msgstr "" -#: FlatCAMApp.py:6356 +#: FlatCAMApp.py:6427 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Excellon object to " "export." msgstr "" -#: FlatCAMApp.py:6369 FlatCAMApp.py:6373 +#: FlatCAMApp.py:6440 FlatCAMApp.py:6444 msgid "Export Excellon" msgstr "" -#: FlatCAMApp.py:6378 +#: FlatCAMApp.py:6449 msgid "[WARNING_NOTCL] Export Excellon cancelled." msgstr "" -#: FlatCAMApp.py:6397 +#: FlatCAMApp.py:6468 msgid "" "[WARNING_NOTCL] No object selected. Please Select an Gerber object to export." msgstr "" -#: FlatCAMApp.py:6410 FlatCAMApp.py:6414 +#: FlatCAMApp.py:6481 FlatCAMApp.py:6485 msgid "Export Gerber" msgstr "" -#: FlatCAMApp.py:6419 +#: FlatCAMApp.py:6490 msgid "[WARNING_NOTCL] Export Gerber cancelled." msgstr "" -#: FlatCAMApp.py:6449 +#: FlatCAMApp.py:6520 msgid "[ERROR_NOTCL] Only Geometry objects can be used." msgstr "" -#: FlatCAMApp.py:6463 FlatCAMApp.py:6467 +#: FlatCAMApp.py:6534 FlatCAMApp.py:6538 msgid "Export DXF" msgstr "" -#: FlatCAMApp.py:6473 +#: FlatCAMApp.py:6544 msgid "[WARNING_NOTCL] Export DXF cancelled." msgstr "" -#: FlatCAMApp.py:6493 FlatCAMApp.py:6496 +#: FlatCAMApp.py:6564 FlatCAMApp.py:6567 msgid "Import SVG" msgstr "" -#: FlatCAMApp.py:6505 +#: FlatCAMApp.py:6576 msgid "[WARNING_NOTCL] Open SVG cancelled." msgstr "" -#: FlatCAMApp.py:6524 FlatCAMApp.py:6528 +#: FlatCAMApp.py:6595 FlatCAMApp.py:6599 msgid "Import DXF" msgstr "" -#: FlatCAMApp.py:6537 +#: FlatCAMApp.py:6608 msgid "[WARNING_NOTCL] Open DXF cancelled." msgstr "" -#: FlatCAMApp.py:6555 +#: FlatCAMApp.py:6626 #, python-format msgid "%s" msgstr "" -#: FlatCAMApp.py:6575 +#: FlatCAMApp.py:6646 msgid "" "[WARNING_NOTCL] Select an Gerber or Excellon file to view it's source file." msgstr "" -#: FlatCAMApp.py:6582 +#: FlatCAMApp.py:6653 msgid "" "[WARNING_NOTCL] There is no selected object for which to see it's source " "file code." msgstr "" -#: FlatCAMApp.py:6590 +#: FlatCAMApp.py:6661 msgid "Source Editor" msgstr "" -#: FlatCAMApp.py:6600 +#: FlatCAMApp.py:6671 #, python-format msgid "[ERROR]App.on_view_source() -->%s" msgstr "" -#: FlatCAMApp.py:6612 FlatCAMApp.py:7754 FlatCAMObj.py:5588 +#: FlatCAMApp.py:6683 FlatCAMApp.py:7825 FlatCAMObj.py:5588 #: flatcamTools/ToolSolderPaste.py:1278 msgid "Code Editor" msgstr "" -#: FlatCAMApp.py:6624 +#: FlatCAMApp.py:6695 msgid "Script Editor" msgstr "" -#: FlatCAMApp.py:6627 +#: FlatCAMApp.py:6698 msgid "" "#\n" "# CREATE A NEW FLATCAM TCL SCRIPT\n" @@ -726,216 +726,216 @@ msgid "" "\n" msgstr "" -#: FlatCAMApp.py:6650 FlatCAMApp.py:6653 +#: FlatCAMApp.py:6721 FlatCAMApp.py:6724 msgid "Open TCL script" msgstr "" -#: FlatCAMApp.py:6661 +#: FlatCAMApp.py:6732 msgid "[WARNING_NOTCL] Open TCL script cancelled." msgstr "" -#: FlatCAMApp.py:6673 +#: FlatCAMApp.py:6744 #, python-format msgid "[ERROR]App.on_fileopenscript() -->%s" msgstr "" -#: FlatCAMApp.py:6699 FlatCAMApp.py:6702 +#: FlatCAMApp.py:6770 FlatCAMApp.py:6773 msgid "Run TCL script" msgstr "" -#: FlatCAMApp.py:6710 +#: FlatCAMApp.py:6781 msgid "[WARNING_NOTCL] Run TCL script cancelled." msgstr "" -#: FlatCAMApp.py:6760 FlatCAMApp.py:6764 +#: FlatCAMApp.py:6831 FlatCAMApp.py:6835 msgid "Save Project As ..." msgstr "" -#: FlatCAMApp.py:6761 +#: FlatCAMApp.py:6832 #, python-brace-format msgid "{l_save}/Project_{date}" msgstr "" -#: FlatCAMApp.py:6769 +#: FlatCAMApp.py:6840 msgid "[WARNING_NOTCL] Save Project cancelled." msgstr "" -#: FlatCAMApp.py:6813 +#: FlatCAMApp.py:6884 msgid "Exporting SVG" msgstr "" -#: FlatCAMApp.py:6847 FlatCAMApp.py:6953 FlatCAMApp.py:7068 +#: FlatCAMApp.py:6918 FlatCAMApp.py:7024 FlatCAMApp.py:7139 #, python-format msgid "[success] SVG file exported to %s" msgstr "" -#: FlatCAMApp.py:6878 FlatCAMApp.py:6999 +#: FlatCAMApp.py:6949 FlatCAMApp.py:7070 #, python-format msgid "[WARNING_NOTCL] No object Box. Using instead %s" msgstr "" -#: FlatCAMApp.py:6956 FlatCAMApp.py:7071 +#: FlatCAMApp.py:7027 FlatCAMApp.py:7142 msgid "Generating Film ... Please wait." msgstr "" -#: FlatCAMApp.py:7219 +#: FlatCAMApp.py:7290 #, python-format msgid "[success] Excellon file exported to %s" msgstr "" -#: FlatCAMApp.py:7226 +#: FlatCAMApp.py:7297 msgid "Exporting Excellon" msgstr "" -#: FlatCAMApp.py:7231 FlatCAMApp.py:7238 +#: FlatCAMApp.py:7302 FlatCAMApp.py:7309 msgid "[ERROR_NOTCL] Could not export Excellon file." msgstr "" -#: FlatCAMApp.py:7336 +#: FlatCAMApp.py:7407 #, python-format msgid "[success] Gerber file exported to %s" msgstr "" -#: FlatCAMApp.py:7343 +#: FlatCAMApp.py:7414 msgid "Exporting Gerber" msgstr "" -#: FlatCAMApp.py:7348 FlatCAMApp.py:7355 +#: FlatCAMApp.py:7419 FlatCAMApp.py:7426 msgid "[ERROR_NOTCL] Could not export Gerber file." msgstr "" -#: FlatCAMApp.py:7395 +#: FlatCAMApp.py:7466 #, python-format msgid "[success] DXF file exported to %s" msgstr "" -#: FlatCAMApp.py:7401 +#: FlatCAMApp.py:7472 msgid "Exporting DXF" msgstr "" -#: FlatCAMApp.py:7406 FlatCAMApp.py:7413 +#: FlatCAMApp.py:7477 FlatCAMApp.py:7484 msgid "[[WARNING_NOTCL]] Could not export DXF file." msgstr "" -#: FlatCAMApp.py:7433 FlatCAMApp.py:7475 FlatCAMApp.py:7519 +#: FlatCAMApp.py:7504 FlatCAMApp.py:7546 FlatCAMApp.py:7590 msgid "" "[ERROR_NOTCL] Not supported type is picked as parameter. Only Geometry and " "Gerber are supported" msgstr "" -#: FlatCAMApp.py:7443 +#: FlatCAMApp.py:7514 msgid "Importing SVG" msgstr "" -#: FlatCAMApp.py:7454 FlatCAMApp.py:7496 FlatCAMApp.py:7539 FlatCAMApp.py:7616 -#: FlatCAMApp.py:7677 FlatCAMApp.py:7740 flatcamTools/ToolPDF.py:212 +#: FlatCAMApp.py:7525 FlatCAMApp.py:7567 FlatCAMApp.py:7610 FlatCAMApp.py:7687 +#: FlatCAMApp.py:7748 FlatCAMApp.py:7811 flatcamTools/ToolPDF.py:212 #, python-format msgid "[success] Opened: %s" msgstr "" -#: FlatCAMApp.py:7485 +#: FlatCAMApp.py:7556 msgid "Importing DXF" msgstr "" -#: FlatCAMApp.py:7527 +#: FlatCAMApp.py:7598 msgid "Importing Image" msgstr "" -#: FlatCAMApp.py:7568 FlatCAMApp.py:7570 +#: FlatCAMApp.py:7639 FlatCAMApp.py:7641 #, python-format msgid "[ERROR_NOTCL] Failed to open file: %s" msgstr "" -#: FlatCAMApp.py:7573 +#: FlatCAMApp.py:7644 #, python-brace-format msgid "[ERROR_NOTCL] Failed to parse file: {name}. {error}" msgstr "" -#: FlatCAMApp.py:7580 FlatCAMObj.py:4266 +#: FlatCAMApp.py:7651 FlatCAMObj.py:4266 #: flatcamEditors/FlatCAMExcEditor.py:2077 msgid "[ERROR] An internal error has ocurred. See shell.\n" msgstr "" -#: FlatCAMApp.py:7589 +#: FlatCAMApp.py:7660 msgid "" "[ERROR_NOTCL] Object is not Gerber file or empty. Aborting object creation." msgstr "" -#: FlatCAMApp.py:7597 +#: FlatCAMApp.py:7668 msgid "Opening Gerber" msgstr "" -#: FlatCAMApp.py:7607 +#: FlatCAMApp.py:7678 msgid "[ERROR_NOTCL] Open Gerber failed. Probable not a Gerber file." msgstr "" -#: FlatCAMApp.py:7640 flatcamTools/ToolPcbWizard.py:421 +#: FlatCAMApp.py:7711 flatcamTools/ToolPcbWizard.py:421 msgid "[ERROR_NOTCL] This is not Excellon file." msgstr "" -#: FlatCAMApp.py:7643 +#: FlatCAMApp.py:7714 #, python-format msgid "[ERROR_NOTCL] Cannot open file: %s" msgstr "" -#: FlatCAMApp.py:7648 flatcamTools/ToolPcbWizard.py:429 +#: FlatCAMApp.py:7719 flatcamTools/ToolPcbWizard.py:429 msgid "[ERROR_NOTCL] An internal error has occurred. See shell.\n" msgstr "" -#: FlatCAMApp.py:7661 flatcamTools/ToolPDF.py:262 +#: FlatCAMApp.py:7732 flatcamTools/ToolPDF.py:262 #: flatcamTools/ToolPcbWizard.py:442 #, python-format msgid "[ERROR_NOTCL] No geometry found in file: %s" msgstr "" -#: FlatCAMApp.py:7664 +#: FlatCAMApp.py:7735 msgid "Opening Excellon." msgstr "" -#: FlatCAMApp.py:7670 +#: FlatCAMApp.py:7741 msgid "[ERROR_NOTCL] Open Excellon file failed. Probable not an Excellon file." msgstr "" -#: FlatCAMApp.py:7707 +#: FlatCAMApp.py:7778 #, python-format msgid "[ERROR_NOTCL] Failed to open %s" msgstr "" -#: FlatCAMApp.py:7717 +#: FlatCAMApp.py:7788 msgid "[ERROR_NOTCL] This is not GCODE" msgstr "" -#: FlatCAMApp.py:7723 +#: FlatCAMApp.py:7794 msgid "Opening G-Code." msgstr "" -#: FlatCAMApp.py:7731 +#: FlatCAMApp.py:7802 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:7771 +#: FlatCAMApp.py:7842 #, python-format msgid "[ERROR_NOTCL] Failed to open config file: %s" msgstr "" -#: FlatCAMApp.py:7797 FlatCAMApp.py:7814 +#: FlatCAMApp.py:7868 FlatCAMApp.py:7885 #, python-format msgid "[ERROR_NOTCL] Failed to open project file: %s" msgstr "" -#: FlatCAMApp.py:7837 +#: FlatCAMApp.py:7908 #, python-format msgid "[success] Project loaded from: %s" msgstr "" -#: FlatCAMApp.py:7942 +#: FlatCAMApp.py:8013 msgid "Available commands:\n" msgstr "" -#: FlatCAMApp.py:7944 +#: FlatCAMApp.py:8015 msgid "" "\n" "\n" @@ -943,27 +943,27 @@ msgid "" " Example: help open_gerber" msgstr "" -#: FlatCAMApp.py:8094 +#: FlatCAMApp.py:8165 msgid "Shows list of commands." msgstr "" -#: FlatCAMApp.py:8151 +#: FlatCAMApp.py:8222 msgid "[ERROR_NOTCL] Failed to load recent item list." msgstr "" -#: FlatCAMApp.py:8158 +#: FlatCAMApp.py:8229 msgid "[ERROR_NOTCL] Failed to parse recent item list." msgstr "" -#: FlatCAMApp.py:8202 +#: FlatCAMApp.py:8273 msgid "Clear Recent files" msgstr "" -#: FlatCAMApp.py:8219 flatcamGUI/FlatCAMGUI.py:968 +#: FlatCAMApp.py:8290 flatcamGUI/FlatCAMGUI.py:968 msgid "Shortcut Key List" msgstr "" -#: FlatCAMApp.py:8226 +#: FlatCAMApp.py:8297 msgid "" "\n" "

Selected Tab - Choose an Item from " @@ -1013,76 +1013,76 @@ msgid "" " " msgstr "" -#: FlatCAMApp.py:8333 +#: FlatCAMApp.py:8404 msgid "[WARNING_NOTCL] Failed checking for latest version. Could not connect." msgstr "" -#: FlatCAMApp.py:8340 +#: FlatCAMApp.py:8411 msgid "[ERROR_NOTCL] Could not parse information about latest version." msgstr "" -#: FlatCAMApp.py:8350 +#: FlatCAMApp.py:8421 msgid "[success] FlatCAM is up to date!" msgstr "" -#: FlatCAMApp.py:8355 +#: FlatCAMApp.py:8426 msgid "Newer Version Available" msgstr "" -#: FlatCAMApp.py:8356 +#: FlatCAMApp.py:8427 msgid "" "There is a newer version of FlatCAM available for download:\n" "\n" msgstr "" -#: FlatCAMApp.py:8358 +#: FlatCAMApp.py:8429 msgid "info" msgstr "" -#: FlatCAMApp.py:8377 +#: FlatCAMApp.py:8448 msgid "[success] All plots disabled." msgstr "" -#: FlatCAMApp.py:8383 +#: FlatCAMApp.py:8454 msgid "[success] All non selected plots disabled." msgstr "" -#: FlatCAMApp.py:8389 +#: FlatCAMApp.py:8460 msgid "[success] All plots enabled." msgstr "" -#: FlatCAMApp.py:8395 +#: FlatCAMApp.py:8466 msgid "[success] Selected plots enabled..." msgstr "" -#: FlatCAMApp.py:8403 +#: FlatCAMApp.py:8474 msgid "[success] Selected plots disabled..." msgstr "" -#: FlatCAMApp.py:8413 FlatCAMApp.py:8426 +#: FlatCAMApp.py:8484 FlatCAMApp.py:8497 msgid "Working ..." msgstr "" -#: FlatCAMApp.py:8460 +#: FlatCAMApp.py:8531 msgid "Saving FlatCAM Project" msgstr "" -#: FlatCAMApp.py:8481 FlatCAMApp.py:8512 +#: FlatCAMApp.py:8552 FlatCAMApp.py:8583 #, python-format msgid "[success] Project saved to: %s" msgstr "" -#: FlatCAMApp.py:8499 +#: FlatCAMApp.py:8570 #, python-format msgid "[ERROR_NOTCL] Failed to verify project file: %s. Retry to save it." msgstr "" -#: FlatCAMApp.py:8506 +#: FlatCAMApp.py:8577 #, python-format msgid "[ERROR_NOTCL] Failed to parse saved project file: %s. Retry to save it." msgstr "" -#: FlatCAMApp.py:8514 +#: FlatCAMApp.py:8585 #, python-format msgid "[ERROR_NOTCL] Failed to save project file: %s. Retry to save it." msgstr "" From 6007c8e58df96e406b10ac8b2fd6dcf99812d9b4 Mon Sep 17 00:00:00 2001 From: Symonty Symonty Date: Tue, 25 Jun 2019 04:40:33 +0000 Subject: [PATCH 15/15] Removed duplicate simplejson on line 5 already on line 13 requirements.txt edited online with Bitbucket. --- requirements.txt | 1 - 1 file changed, 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index d0824f83..8db283dd 100644 --- a/requirements.txt +++ b/requirements.txt @@ -2,7 +2,6 @@ # Python pacakges that cannot be installed with pip (e.g. PyQt5, GDAL) are not included. # Usage: pip install -r requirements.txt numpy>=1.8 -simplejson dill rtree pyopengl