- updated all the FlatCAM Tools and the Gerber UI FCComboBoxes to update the box value with the latest object loaded in the App

- some fixes in the NCC Tool
- modified some strings
This commit is contained in:
Marius Stanciu 2020-03-04 00:27:51 +02:00 committed by Marius
parent 0477a9860a
commit 15ee54d057
23 changed files with 309 additions and 200 deletions

View File

@ -733,7 +733,12 @@ class FlatCAMGerber(FlatCAMObj, Gerber):
# set the model for the Area Exception comboboxes
self.ui.obj_combo.setModel(self.app.collection)
self.ui.obj_combo.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.ui.obj_combo.set_last = True
self.ui.obj_combo.is_last = True
self.ui.obj_combo.obj_type = {
_("Gerber"): "Gerber", _("Geometry"): "Geometry"
}[self.ui.type_obj_combo.get_value()]
self.on_type_obj_index_changed()
self.ui.type_obj_combo.currentIndexChanged.connect(self.on_type_obj_index_changed)
self.ui.tool_type_radio.activated_custom.connect(self.on_tool_type_change)
@ -813,10 +818,12 @@ class FlatCAMGerber(FlatCAMObj, Gerber):
tool_diameter = tdia + (2 * cutz * math.tan(math.radians(half_tip_angle)))
self.ui.iso_tool_dia_entry.set_value(tool_diameter)
def on_type_obj_index_changed(self, index):
obj_type = self.ui.type_obj_combo.currentIndex()
def on_type_obj_index_changed(self):
val = self.ui.type_obj_combo.get_value()
obj_type = {"Gerber": 0, "Geometry": 2}[val]
self.ui.obj_combo.setRootModelIndex(self.app.collection.index(obj_type, 0, QtCore.QModelIndex()))
self.ui.obj_combo.setCurrentIndex(0)
self.ui.obj_combo.obj_type = {_("Gerber"): "Gerber", _("Geometry"): "Geometry"}[val]
def on_tool_type_change(self, state):
if state == 'circular':

View File

@ -9,6 +9,12 @@ CAD program, and create G-Code for Isolation routing.
=================================================
4.03.2020
- updated all the FlatCAM Tools and the Gerber UI FCComboBoxes to update the box value with the latest object loaded in the App
- some fixes in the NCC Tool
- modified some strings
02.03.2020
- added property that allow the FCComboBox to update the view with the last item loaded; updated the app to use this property

View File

@ -1286,6 +1286,7 @@ class FCComboBox(QtWidgets.QComboBox):
self.view.setContextMenuPolicy(Qt.CustomContextMenu)
self._set_last = False
self._obj_type = None
# the callback() will be called on customcontextmenu event and will be be passed 2 parameters:
# pos = mouse right click click position
@ -1309,17 +1310,27 @@ class FCComboBox(QtWidgets.QComboBox):
self.setCurrentIndex(self.findText(str(val)))
@property
def set_last(self):
def is_last(self):
return self._set_last
@set_last.setter
def set_last(self, val):
@is_last.setter
def is_last(self, val):
self._set_last = val
if self._set_last is True:
self.model().rowsInserted.connect(self.on_model_changed)
self.setCurrentIndex(1)
def on_model_changed(self, first, last):
self.setCurrentIndex(last)
@property
def obj_type(self):
return self._obj_type
@obj_type.setter
def obj_type(self, val):
self._obj_type = val
def on_model_changed(self, parent, first, last):
if self.model().data(parent, QtCore.Qt.DisplayRole) == self.obj_type:
self.setCurrentIndex(first)
class FCInputDialog(QtWidgets.QInputDialog):

View File

@ -446,11 +446,7 @@ class GerberObjectUI(ObjectUI):
# ##### Type of object to be excepted ############
# ################################################
self.type_obj_combo = FCComboBox()
self.type_obj_combo.addItems(["Gerber", "Geometry"])
# self.type_obj_combo.addItem("Gerber")
# self.type_obj_combo.addItem("Excellon")
# self.type_obj_combo.addItem("Geometry")
self.type_obj_combo.addItems([_("Gerber"), _("Geometry")])
# we get rid of item1 ("Excellon") as it is not suitable
# self.type_obj_combo.view().setRowHidden(1, True)

View File

@ -80,7 +80,7 @@ class AlignObjects(FlatCAMTool):
self.object_combo = FCComboBox()
self.object_combo.setModel(self.app.collection)
self.object_combo.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.object_combo.set_last = True
self.object_combo.is_last = True
self.object_combo.setToolTip(
_("Object to be aligned.")
@ -116,7 +116,7 @@ class AlignObjects(FlatCAMTool):
self.aligner_object_combo = FCComboBox()
self.aligner_object_combo.setModel(self.app.collection)
self.aligner_object_combo.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.aligner_object_combo.set_last = True
self.aligner_object_combo.is_last = True
self.aligner_object_combo.setToolTip(
_("Object to be aligned to. Aligner.")
@ -270,11 +270,13 @@ class AlignObjects(FlatCAMTool):
obj_type = {'grb': 0, 'exc': 1}[val]
self.object_combo.setRootModelIndex(self.app.collection.index(obj_type, 0, QtCore.QModelIndex()))
self.object_combo.setCurrentIndex(0)
self.object_combo.obj_type = {'grb': "Gerber", 'exc': "Excellon"}[val]
def on_type_aligner_changed(self, val):
obj_type = {'grb': 0, 'exc': 1}[val]
self.aligner_object_combo.setRootModelIndex(self.app.collection.index(obj_type, 0, QtCore.QModelIndex()))
self.aligner_object_combo.setCurrentIndex(0)
self.aligner_object_combo.obj_type = {'grb': "Gerber", 'exc': "Excellon"}[val]
def on_align(self):
self.app.delete_selection_shape()

View File

@ -195,7 +195,6 @@ class ToolCalibration(FlatCAMTool):
self.obj_type_combo = FCComboBox()
self.obj_type_combo.addItem(_("Gerber"))
self.obj_type_combo.addItem(_("Excellon"))
self.obj_type_combo.setCurrentIndex(1)
self.obj_type_combo.setItemIcon(0, QtGui.QIcon(self.app.resource_location + "/flatcam_icon16.png"))
self.obj_type_combo.setItemIcon(1, QtGui.QIcon(self.app.resource_location + "/drill16.png"))
@ -206,7 +205,7 @@ class ToolCalibration(FlatCAMTool):
self.object_combo = FCComboBox()
self.object_combo.setModel(self.app.collection)
self.object_combo.setRootModelIndex(self.app.collection.index(1, 0, QtCore.QModelIndex()))
self.object_combo.set_last = True
self.object_combo.is_last = True
self.object_label = QtWidgets.QLabel("%s:" % _("Source object selection"))
self.object_label.setToolTip(
@ -630,16 +629,13 @@ class ToolCalibration(FlatCAMTool):
self.adj_object_type_combo = FCComboBox()
self.adj_object_type_combo.addItems([_("Gerber"), _("Excellon"), _("Geometry")])
self.adj_object_type_combo.setCurrentIndex(0)
self.adj_object_type_combo.setItemIcon(0, QtGui.QIcon(self.app.resource_location + "/flatcam_icon16.png"))
self.adj_object_type_combo.setItemIcon(1, QtGui.QIcon(self.app.resource_location + "/drill16.png"))
self.adj_object_type_combo.setItemIcon(2, QtGui.QIcon(self.app.resource_location + "/geometry16.png"))
self.adj_object_type_label = QtWidgets.QLabel("%s:" % _("Adjusted object type"))
self.adj_object_type_label.setToolTip(
_("Type of the FlatCAM Object to be adjusted.")
)
self.adj_object_type_label.setToolTip(_("Type of the FlatCAM Object to be adjusted."))
grid_lay.addWidget(self.adj_object_type_label, 46, 0, 1, 3)
grid_lay.addWidget(self.adj_object_type_combo, 47, 0, 1, 3)
@ -647,7 +643,10 @@ class ToolCalibration(FlatCAMTool):
self.adj_object_combo = FCComboBox()
self.adj_object_combo.setModel(self.app.collection)
self.adj_object_combo.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.adj_object_combo.setCurrentIndex(0)
self.adj_object_combo.is_last = True
self.adj_object_combo.obj_type = {
_("Gerber"): "Gerber", _("Excellon"): "Excellon", _("Geometry"): "Geometry"
}[self.adj_object_type_combo.get_value()]
self.adj_object_label = QtWidgets.QLabel("%s:" % _("Adjusted object selection"))
self.adj_object_label.setToolTip(
@ -787,6 +786,14 @@ class ToolCalibration(FlatCAMTool):
self.skewx_entry.set_value(0.0)
self.skewy_entry.set_value(0.0)
# default object selection is Excellon = index_1
self.obj_type_combo.setCurrentIndex(1)
self.on_obj_type_combo()
self.adj_object_type_combo.setCurrentIndex(0)
self.on_adj_obj_type_combo()
# self.adj_object_combo.setCurrentIndex(0)
# calibrated object
self.cal_object = None
@ -795,12 +802,18 @@ class ToolCalibration(FlatCAMTool):
def on_obj_type_combo(self):
obj_type = self.obj_type_combo.currentIndex()
self.object_combo.setRootModelIndex(self.app.collection.index(obj_type, 0, QtCore.QModelIndex()))
self.object_combo.setCurrentIndex(0)
# self.object_combo.setCurrentIndex(0)
self.object_combo.obj_type = {
_("Gerber"): "Gerber", _("Excellon"): "Excellon"
}[self.obj_type_combo.get_value()]
def on_adj_obj_type_combo(self):
obj_type = self.adj_object_type_combo.currentIndex()
self.adj_object_combo.setRootModelIndex(self.app.collection.index(obj_type, 0, QtCore.QModelIndex()))
self.adj_object_combo.setCurrentIndex(0)
# self.adj_object_combo.setCurrentIndex(0)
self.adj_object_combo.obj_type = {
_("Gerber"): "Gerber", _("Excellon"): "Excellon", _("Geometry"): "Geometry"
}[self.adj_object_type_combo.get_value()]
def on_cal_source_radio(self, val):
if val == 'object':

View File

@ -69,7 +69,8 @@ class ToolCopperThieving(FlatCAMTool):
self.grb_object_combo = FCComboBox()
self.grb_object_combo.setModel(self.app.collection)
self.grb_object_combo.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.grb_object_combo.set_last = True
self.grb_object_combo.is_last = True
self.grb_object_combo.obj_type = 'Gerber'
self.grbobj_label = QtWidgets.QLabel("<b>%s:</b>" % _("GERBER"))
self.grbobj_label.setToolTip(
@ -135,35 +136,36 @@ class ToolCopperThieving(FlatCAMTool):
grid_lay.addWidget(self.reference_label, 3, 0)
grid_lay.addWidget(self.reference_radio, 3, 1)
self.box_combo_type_label = QtWidgets.QLabel('%s:' % _("Ref. Type"))
self.box_combo_type_label.setToolTip(
self.ref_combo_type_label = QtWidgets.QLabel('%s:' % _("Ref. Type"))
self.ref_combo_type_label.setToolTip(
_("The type of FlatCAM object to be used as copper thieving reference.\n"
"It can be Gerber, Excellon or Geometry.")
)
self.box_combo_type = FCComboBox()
self.box_combo_type.addItem(_("Reference Gerber"))
self.box_combo_type.addItem(_("Reference Excellon"))
self.box_combo_type.addItem(_("Reference Geometry"))
self.ref_combo_type = FCComboBox()
self.ref_combo_type.addItems([_("Gerber"), _("Excellon"), _("Geometry")])
grid_lay.addWidget(self.box_combo_type_label, 4, 0)
grid_lay.addWidget(self.box_combo_type, 4, 1)
grid_lay.addWidget(self.ref_combo_type_label, 4, 0)
grid_lay.addWidget(self.ref_combo_type, 4, 1)
self.box_combo_label = QtWidgets.QLabel('%s:' % _("Ref. Object"))
self.box_combo_label.setToolTip(
self.ref_combo_label = QtWidgets.QLabel('%s:' % _("Ref. Object"))
self.ref_combo_label.setToolTip(
_("The FlatCAM object to be used as non copper clearing reference.")
)
self.box_combo = FCComboBox()
self.box_combo.setModel(self.app.collection)
self.box_combo.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.box_combo.set_last = True
self.ref_combo = FCComboBox()
self.ref_combo.setModel(self.app.collection)
self.ref_combo.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.ref_combo.is_last = True
self.ref_combo.obj_type = {
_("Gerber"): "Gerber", _("Excellon"): "Excellon", _("Geometry"): "Geometry"
}[self.ref_combo_type.get_value()]
grid_lay.addWidget(self.box_combo_label, 5, 0)
grid_lay.addWidget(self.box_combo, 5, 1)
grid_lay.addWidget(self.ref_combo_label, 5, 0)
grid_lay.addWidget(self.ref_combo, 5, 1)
self.box_combo.hide()
self.box_combo_label.hide()
self.box_combo_type.hide()
self.box_combo_type_label.hide()
self.ref_combo.hide()
self.ref_combo_label.hide()
self.ref_combo_type.hide()
self.ref_combo_type_label.hide()
# Bounding Box Type #
self.bbox_type_radio = RadioSet([
@ -420,7 +422,8 @@ class ToolCopperThieving(FlatCAMTool):
self.sm_object_combo = FCComboBox()
self.sm_object_combo.setModel(self.app.collection)
self.sm_object_combo.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.sm_object_combo.set_last = True
self.sm_object_combo.is_last = True
self.sm_object_combo.obj_type = 'Gerber'
grid_lay_1.addWidget(self.sm_obj_label, 7, 0, 1, 3)
grid_lay_1.addWidget(self.sm_object_combo, 8, 0, 1, 3)
@ -526,7 +529,7 @@ class ToolCopperThieving(FlatCAMTool):
self.rb_thickness = None
# SIGNALS
self.box_combo_type.currentIndexChanged.connect(self.on_combo_box_type)
self.ref_combo_type.currentIndexChanged.connect(self.on_ref_combo_type_change)
self.reference_radio.group_toggle_fn = self.on_toggle_reference
self.fill_type_radio.activated_custom.connect(self.on_thieving_type)
@ -594,22 +597,25 @@ class ToolCopperThieving(FlatCAMTool):
self.robber_line = None
self.new_solid_geometry = None
def on_combo_box_type(self):
obj_type = self.box_combo_type.currentIndex()
self.box_combo.setRootModelIndex(self.app.collection.index(obj_type, 0, QtCore.QModelIndex()))
self.box_combo.setCurrentIndex(0)
def on_ref_combo_type_change(self):
obj_type = self.ref_combo_type.currentIndex()
self.ref_combo.setRootModelIndex(self.app.collection.index(obj_type, 0, QtCore.QModelIndex()))
self.ref_combo.setCurrentIndex(0)
self.ref_combo.obj_type = {
_("Gerber"): "Gerber", _("Excellon"): "Excellon", _("Geometry"): "Geometry"
}[self.ref_combo_type.get_value()]
def on_toggle_reference(self):
if self.reference_radio.get_value() == "itself" or self.reference_radio.get_value() == "area":
self.box_combo.hide()
self.box_combo_label.hide()
self.box_combo_type.hide()
self.box_combo_type_label.hide()
self.ref_combo.hide()
self.ref_combo_label.hide()
self.ref_combo_type.hide()
self.ref_combo_type_label.hide()
else:
self.box_combo.show()
self.box_combo_label.show()
self.box_combo_type.show()
self.box_combo_type_label.show()
self.ref_combo.show()
self.ref_combo_label.show()
self.ref_combo_type.show()
self.ref_combo_type_label.show()
if self.reference_radio.get_value() == "itself":
self.bbox_type_label.show()
@ -778,7 +784,7 @@ class ToolCopperThieving(FlatCAMTool):
self.mm = self.app.plotcanvas.graph_event_connect('mouse_move', self.on_mouse_move)
elif reference_method == 'box':
bound_obj_name = self.box_combo.currentText()
bound_obj_name = self.ref_combo.currentText()
# Get reference object.
try:

View File

@ -108,7 +108,7 @@ class CutOut(FlatCAMTool):
self.obj_combo = FCComboBox()
self.obj_combo.setModel(self.app.collection)
self.obj_combo.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.obj_combo.set_last = True
self.obj_combo.is_last = True
grid0.addWidget(self.obj_combo, 3, 0, 1, 2)
@ -321,7 +321,8 @@ class CutOut(FlatCAMTool):
self.man_object_combo = FCComboBox()
self.man_object_combo.setModel(self.app.collection)
self.man_object_combo.setRootModelIndex(self.app.collection.index(2, 0, QtCore.QModelIndex()))
self.man_object_combo.set_last = True
self.man_object_combo.is_last = True
self.man_object_combo.obj_type = "Geometry"
self.man_object_label = QtWidgets.QLabel('%s:' % _("Geometry Object"))
self.man_object_label.setToolTip(
@ -416,6 +417,7 @@ class CutOut(FlatCAMTool):
obj_type = {'grb': 0, 'geo': 2}[val]
self.obj_combo.setRootModelIndex(self.app.collection.index(obj_type, 0, QtCore.QModelIndex()))
self.obj_combo.setCurrentIndex(0)
self.obj_combo.obj_type = {"grb": "Gerber", "geo": "Geometry"}[val]
def run(self, toggle=True):
self.app.report_usage("ToolCutOut()")

View File

@ -59,7 +59,8 @@ class DblSidedTool(FlatCAMTool):
self.gerber_object_combo = FCComboBox()
self.gerber_object_combo.setModel(self.app.collection)
self.gerber_object_combo.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.gerber_object_combo.set_last = True
self.gerber_object_combo.is_last = True
self.gerber_object_combo.obj_type = "Gerber"
self.botlay_label = QtWidgets.QLabel("%s:" % _("GERBER"))
self.botlay_label.setToolTip('%s.' % _("Gerber to be mirrored"))
@ -86,7 +87,8 @@ class DblSidedTool(FlatCAMTool):
self.exc_object_combo = FCComboBox()
self.exc_object_combo.setModel(self.app.collection)
self.exc_object_combo.setRootModelIndex(self.app.collection.index(1, 0, QtCore.QModelIndex()))
self.exc_object_combo.set_last = True
self.exc_object_combo.is_last = True
self.exc_object_combo.obj_type = "Excellon"
self.excobj_label = QtWidgets.QLabel("%s:" % _("EXCELLON"))
self.excobj_label.setToolTip(_("Excellon Object to be mirrored."))
@ -113,7 +115,8 @@ class DblSidedTool(FlatCAMTool):
self.geo_object_combo = FCComboBox()
self.geo_object_combo.setModel(self.app.collection)
self.geo_object_combo.setRootModelIndex(self.app.collection.index(2, 0, QtCore.QModelIndex()))
self.geo_object_combo.set_last = True
self.geo_object_combo.is_last = True
self.geo_object_combo.obj_type = "Geometry"
self.geoobj_label = QtWidgets.QLabel("%s:" % _("GEOMETRY"))
self.geoobj_label.setToolTip(
@ -232,7 +235,7 @@ class DblSidedTool(FlatCAMTool):
self.box_combo = FCComboBox()
self.box_combo.setModel(self.app.collection)
self.box_combo.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.box_combo.set_last = True
self.box_combo.is_last = True
self.box_combo.hide()
@ -555,14 +558,16 @@ class DblSidedTool(FlatCAMTool):
self.align_ref_label_val.set_value('%.*f' % (self.decimals, 0.0))
# run once to make sure that the obj_type attribute is updated in the FCComboBox
self.box_type_radio.set_value('grb')
self.on_combo_box_type('grb')
def on_combo_box_type(self, val):
obj_type = {
'grb': 0,
'exc': 1,
'geo': 2
}[val]
obj_type = {'grb': 0, 'exc': 1, 'geo': 2}[val]
self.box_combo.setRootModelIndex(self.app.collection.index(obj_type, 0, QtCore.QModelIndex()))
self.box_combo.setCurrentIndex(0)
self.box_combo.obj_type = {
"grb": "Gerber", "exc": "Excellon", "geo": "Geometry"}[val]
def on_create_alignment_holes(self):
axis = self.align_axis_radio.get_value()

View File

@ -55,7 +55,8 @@ class ToolExtractDrills(FlatCAMTool):
self.gerber_object_combo = FCComboBox()
self.gerber_object_combo.setModel(self.app.collection)
self.gerber_object_combo.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.gerber_object_combo.set_last = True
self.gerber_object_combo.is_last = True
self.gerber_object_combo.obj_type = "Gerber"
self.grb_label = QtWidgets.QLabel("<b>%s:</b>" % _("GERBER"))
self.grb_label.setToolTip('%s.' % _("Gerber from which to extract drill holes"))

View File

@ -253,7 +253,8 @@ class ToolFiducials(FlatCAMTool):
self.grb_object_combo = FCComboBox()
self.grb_object_combo.setModel(self.app.collection)
self.grb_object_combo.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.grb_object_combo.set_last = True
self.grb_object_combo.is_last = True
self.grb_object_combo.obj_type = "Gerber"
self.grbobj_label = QtWidgets.QLabel("<b>%s:</b>" % _("Copper Gerber"))
self.grbobj_label.setToolTip(
@ -289,7 +290,8 @@ class ToolFiducials(FlatCAMTool):
self.sm_object_combo = FCComboBox()
self.sm_object_combo.setModel(self.app.collection)
self.sm_object_combo.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.sm_object_combo.set_last = True
self.sm_object_combo.is_last = True
self.sm_object_combo.obj_type = "Gerber"
grid_lay.addWidget(self.sm_object_label, 13, 0, 1, 2)
grid_lay.addWidget(self.sm_object_combo, 14, 0, 1, 2)

View File

@ -66,10 +66,7 @@ class Film(FlatCAMTool):
# Type of object for which to create the film
self.tf_type_obj_combo = FCComboBox()
self.tf_type_obj_combo.addItems(["Gerber", "Geometry"])
# self.tf_type_obj_combo.addItem("Gerber")
# self.tf_type_obj_combo.addItem("Excellon")
# self.tf_type_obj_combo.addItem("Geometry")
self.tf_type_obj_combo.addItems([_("Gerber"), _("Geometry")])
# we get rid of item1 ("Excellon") as it is not suitable for creating film
# self.tf_type_obj_combo.view().setRowHidden(1, True)
@ -90,7 +87,7 @@ class Film(FlatCAMTool):
self.tf_object_combo = FCComboBox()
self.tf_object_combo.setModel(self.app.collection)
self.tf_object_combo.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.tf_object_combo.set_last = True
self.tf_object_combo.is_last = True
self.tf_object_label = QtWidgets.QLabel('%s:' % _("Film Object"))
self.tf_object_label.setToolTip(
@ -102,7 +99,7 @@ class Film(FlatCAMTool):
# Type of Box Object to be used as an envelope for film creation
# Within this we can create negative
self.tf_type_box_combo = FCComboBox()
self.tf_type_box_combo.addItems(["Gerber", "Geometry"])
self.tf_type_box_combo.addItems([_("Gerber"), _("Geometry")])
# self.tf_type_box_combo.addItem("Gerber")
# self.tf_type_box_combo.addItem("Excellon")
@ -127,7 +124,7 @@ class Film(FlatCAMTool):
self.tf_box_combo = FCComboBox()
self.tf_box_combo.setModel(self.app.collection)
self.tf_box_combo.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.tf_box_combo.set_last = True
self.tf_box_combo.is_last = True
self.tf_box_combo_label = QtWidgets.QLabel('%s:' % _("Box Object"))
self.tf_box_combo_label.setToolTip(
@ -372,7 +369,9 @@ class Film(FlatCAMTool):
self.exc_combo = FCComboBox()
self.exc_combo.setModel(self.app.collection)
self.exc_combo.setRootModelIndex(self.app.collection.index(1, 0, QtCore.QModelIndex()))
self.exc_combo.set_last = True
self.exc_combo.is_last = True
self.exc_combo.obj_type = "Excellon"
punch_grid.addWidget(self.exc_label, 1, 0)
punch_grid.addWidget(self.exc_combo, 1, 1)
@ -542,15 +541,21 @@ class Film(FlatCAMTool):
self.file_type_radio.activated_custom.connect(self.on_file_type)
self.reset_button.clicked.connect(self.set_tool_ui)
def on_type_obj_index_changed(self, index):
def on_type_obj_index_changed(self):
obj_type = self.tf_type_obj_combo.currentIndex()
self.tf_object_combo.setRootModelIndex(self.app.collection.index(obj_type, 0, QtCore.QModelIndex()))
self.tf_object_combo.setCurrentIndex(0)
self.tf_object_combo.obj_type = {
_("Gerber"): "Gerber", _("Geometry"): "Geometry"
}[self.tf_type_obj_combo.get_value()]
def on_type_box_index_changed(self, index):
def on_type_box_index_changed(self):
obj_type = self.tf_type_box_combo.currentIndex()
self.tf_box_combo.setRootModelIndex(self.app.collection.index(obj_type, 0, QtCore.QModelIndex()))
self.tf_box_combo.setCurrentIndex(0)
self.tf_box_combo.obj_type = {
_("Gerber"): "Gerber", _("Geometry"): "Geometry"
}[self.tf_type_obj_combo.get_value()]
def run(self, toggle=True):
self.app.report_usage("ToolFilm()")
@ -613,6 +618,10 @@ class Film(FlatCAMTool):
self.orientation_radio.set_value(self.app.defaults["tools_film_orientation"])
self.pagesize_combo.set_value(self.app.defaults["tools_film_pagesize"])
# run once to update the obj_type attribute in the FCCombobox so the last object is showed in cb
self.on_type_obj_index_changed()
self.on_type_box_index_changed()
def on_film_type(self, val):
type_of_film = val

View File

@ -46,8 +46,7 @@ class ToolImage(FlatCAMTool):
# Type of object to create for the image
self.tf_type_obj_combo = FCComboBox()
self.tf_type_obj_combo.addItem("Gerber")
self.tf_type_obj_combo.addItem("Geometry")
self.tf_type_obj_combo.addItems([_("Gerber"), _("Geometry")])
self.tf_type_obj_combo.setItemIcon(0, QtGui.QIcon(self.app.resource_location + "/flatcam_icon16.png"))
self.tf_type_obj_combo.setItemIcon(1, QtGui.QIcon(self.app.resource_location + "/geometry16.png"))
@ -238,7 +237,7 @@ class ToolImage(FlatCAMTool):
filename, _f = QtWidgets.QFileDialog.getOpenFileName(caption=_("Import IMAGE"), filter=filter)
filename = str(filename)
type_obj = self.tf_type_obj_combo.get_value().lower()
type_obj = self.tf_type_obj_combo.get_value()
dpi = self.dpi_entry.get_value()
mode = self.image_type.get_value()
mask = [self.mask_bw_entry.get_value(), self.mask_r_entry.get_value(), self.mask_g_entry.get_value(),
@ -250,7 +249,7 @@ class ToolImage(FlatCAMTool):
self.app.worker_task.emit({'fcn': self.import_image,
'params': [filename, type_obj, dpi, mode, mask]})
def import_image(self, filename, o_type='gerber', dpi=96, mode='black', mask=None, outname=None):
def import_image(self, filename, o_type=_("Gerber"), dpi=96, mode='black', mask=None, outname=None):
"""
Adds a new Geometry Object to the projects and populates
it with shapes extracted from the SVG file.
@ -269,10 +268,10 @@ class ToolImage(FlatCAMTool):
if mask is None:
mask = [250, 250, 250, 250]
if o_type is None or o_type == "geometry":
if o_type is None or o_type == _("Geometry"):
obj_type = "geometry"
elif o_type == "gerber":
obj_type = o_type
elif o_type == _("Gerber"):
obj_type = "gerber"
else:
self.app.inform.emit('[ERROR_NOTCL] %s' %
_("Not supported type is picked as parameter. "

View File

@ -66,7 +66,8 @@ class ToolInvertGerber(FlatCAMTool):
self.gerber_combo = FCComboBox()
self.gerber_combo.setModel(self.app.collection)
self.gerber_combo.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.gerber_combo.set_last = True
self.gerber_combo.is_last = True
self.gerber_combo.obj_type = "Gerber"
self.gerber_label = QtWidgets.QLabel('<b>%s:</b>' % _("GERBER"))
self.gerber_label.setToolTip(

View File

@ -71,15 +71,15 @@ class NonCopperClear(FlatCAMTool, Gerber):
# ################################################
# ##### Type of object to be copper cleaned ######
# ################################################
# self.type_obj_combo = FCComboBox()
# self.type_obj_combo.addItem("Gerber")
# self.type_obj_combo.addItem("Excellon")
# self.type_obj_combo.addItem("Geometry")
# self.type_obj_radio = FCComboBox()
# self.type_obj_radio.addItem("Gerber")
# self.type_obj_radio.addItem("Excellon")
# self.type_obj_radio.addItem("Geometry")
#
# # we get rid of item1 ("Excellon") as it is not suitable
# self.type_obj_combo.view().setRowHidden(1, True)
# self.type_obj_combo.setItemIcon(0, QtGui.QIcon(self.app.resource_location + "/flatcam_icon16.png"))
# self.type_obj_combo.setItemIcon(2, QtGui.QIcon(self.app.resource_location + "/geometry16.png"))
# self.type_obj_radio.view().setRowHidden(1, True)
# self.type_obj_radio.setItemIcon(0, QtGui.QIcon(self.app.resource_location + "/flatcam_icon16.png"))
# self.type_obj_radio.setItemIcon(2, QtGui.QIcon(self.app.resource_location + "/geometry16.png"))
self.type_obj_combo_label = QtWidgets.QLabel('%s:' % _("Obj Type"))
self.type_obj_combo_label.setToolTip(
@ -90,10 +90,10 @@ class NonCopperClear(FlatCAMTool, Gerber):
)
self.type_obj_combo_label.setMinimumWidth(60)
self.type_obj_combo = RadioSet([{'label': "Geometry", 'value': 'geometry'},
{'label': "Gerber", 'value': 'gerber'}])
self.type_obj_radio = RadioSet([{'label': _("Geometry"), 'value': 'geometry'},
{'label': _("Gerber"), 'value': 'gerber'}])
form_layout.addRow(self.type_obj_combo_label, self.type_obj_combo)
form_layout.addRow(self.type_obj_combo_label, self.type_obj_radio)
# ################################################
# ##### The object to be copper cleaned ##########
@ -102,7 +102,7 @@ class NonCopperClear(FlatCAMTool, Gerber):
self.object_combo.setModel(self.app.collection)
self.object_combo.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
# self.object_combo.setCurrentIndex(1)
self.object_combo.set_last = True
self.object_combo.is_last = True
self.object_label = QtWidgets.QLabel('%s:' % _("Object"))
self.object_label.setToolTip(_("Object to be cleared of excess copper."))
@ -546,31 +546,30 @@ class NonCopperClear(FlatCAMTool, Gerber):
form1 = QtWidgets.QFormLayout()
self.grid3.addLayout(form1, 28, 0, 1, 2)
self.box_combo_type_label = QtWidgets.QLabel('%s:' % _("Ref. Type"))
self.box_combo_type_label.setToolTip(
self.reference_combo_type_label = QtWidgets.QLabel('%s:' % _("Ref. Type"))
self.reference_combo_type_label.setToolTip(
_("The type of FlatCAM object to be used as non copper clearing reference.\n"
"It can be Gerber, Excellon or Geometry.")
)
self.box_combo_type = FCComboBox()
self.box_combo_type.addItem(_("Reference Gerber"))
self.box_combo_type.addItem(_("Reference Excellon"))
self.box_combo_type.addItem(_("Reference Geometry"))
form1.addRow(self.box_combo_type_label, self.box_combo_type)
self.reference_combo_type = FCComboBox()
self.reference_combo_type.addItems([_("Gerber"), _("Excellon"), _("Geometry")])
self.box_combo_label = QtWidgets.QLabel('%s:' % _("Ref. Object"))
self.box_combo_label.setToolTip(
form1.addRow(self.reference_combo_type_label, self.reference_combo_type)
self.reference_combo_label = QtWidgets.QLabel('%s:' % _("Ref. Object"))
self.reference_combo_label.setToolTip(
_("The FlatCAM object to be used as non copper clearing reference.")
)
self.box_combo = FCComboBox()
self.box_combo.setModel(self.app.collection)
self.box_combo.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.box_combo.set_last = True
form1.addRow(self.box_combo_label, self.box_combo)
self.reference_combo = FCComboBox()
self.reference_combo.setModel(self.app.collection)
self.reference_combo.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.reference_combo.is_last = True
form1.addRow(self.reference_combo_label, self.reference_combo)
self.box_combo.hide()
self.box_combo_label.hide()
self.box_combo_type.hide()
self.box_combo_type_label.hide()
self.reference_combo.hide()
self.reference_combo_label.hide()
self.reference_combo_type.hide()
self.reference_combo_type_label.hide()
separator_line = QtWidgets.QFrame()
separator_line.setFrameShape(QtWidgets.QFrame.HLine)
@ -706,13 +705,13 @@ class NonCopperClear(FlatCAMTool, Gerber):
self.op_radio.activated_custom.connect(self.on_operation_change)
self.box_combo_type.currentIndexChanged.connect(self.on_combo_box_type)
self.select_combo.group_toggle_fn = self.on_toggle_reference
self.reference_combo_type.currentIndexChanged.connect(self.on_reference_combo_changed)
self.select_combo.currentIndexChanged.connect(self.on_toggle_reference)
self.ncc_rest_cb.stateChanged.connect(self.on_rest_machining_check)
self.ncc_order_radio.activated_custom[str].connect(self.on_order_changed)
self.type_obj_combo.activated_custom.connect(self.on_type_obj_index_changed)
self.type_obj_radio.activated_custom.connect(self.on_type_obj_index_changed)
self.apply_param_to_all.clicked.connect(self.on_apply_param_to_all_clicked)
@ -722,6 +721,9 @@ class NonCopperClear(FlatCAMTool, Gerber):
obj_type = 0 if val == 'gerber' else 2
self.object_combo.setRootModelIndex(self.app.collection.index(obj_type, 0, QtCore.QModelIndex()))
self.object_combo.setCurrentIndex(0)
self.object_combo.obj_type = {
"gerber": "Gerber", "geometry": "Geometry"
}[self.type_obj_radio.get_value()]
def on_operation_change(self, val):
if val == 'iso':
@ -910,6 +912,7 @@ class NonCopperClear(FlatCAMTool, Gerber):
def run(self, toggle=True):
self.app.report_usage("ToolNonCopperClear()")
log.debug("ToolNCC().run() was launched ...")
if toggle:
# if the splitter is hidden, display it, else hide it but only if the current widget is the same
@ -948,7 +951,12 @@ class NonCopperClear(FlatCAMTool, Gerber):
self.tools_frame.show()
self.type_obj_combo.set_value('gerber')
self.type_obj_radio.set_value('gerber')
# run those once so the obj_type attribute is updated for the FCComboboxes
# so the last loaded object is displayed
self.on_type_obj_index_changed(val="gerber")
self.on_reference_combo_changed()
self.op_radio.set_value(self.app.defaults["tools_nccoperation"])
self.ncc_order_radio.set_value(self.app.defaults["tools_nccorder"])
@ -1254,22 +1262,25 @@ class NonCopperClear(FlatCAMTool, Gerber):
if self.tool_type_radio.get_value() == 'C1':
self.old_tool_dia = self.addtool_entry.get_value()
def on_combo_box_type(self):
obj_type = self.box_combo_type.currentIndex()
self.box_combo.setRootModelIndex(self.app.collection.index(obj_type, 0, QtCore.QModelIndex()))
self.box_combo.setCurrentIndex(0)
def on_reference_combo_changed(self):
obj_type = self.reference_combo_type.currentIndex()
self.reference_combo.setRootModelIndex(self.app.collection.index(obj_type, 0, QtCore.QModelIndex()))
self.reference_combo.setCurrentIndex(0)
self.reference_combo.obj_type = {
_("Gerber"): "Gerber", _("Excellon"): "Excellon", _("Geometry"): "Geometry"
}[self.reference_combo_type.get_value()]
def on_toggle_reference(self):
if self.select_combo.get_value() == _("Itself") or self.select_combo.get_value() == _("Area Selection"):
self.box_combo.hide()
self.box_combo_label.hide()
self.box_combo_type.hide()
self.box_combo_type_label.hide()
self.reference_combo.hide()
self.reference_combo_label.hide()
self.reference_combo_type.hide()
self.reference_combo_type_label.hide()
else:
self.box_combo.show()
self.box_combo_label.show()
self.box_combo_type.show()
self.box_combo_type_label.show()
self.reference_combo.show()
self.reference_combo_label.show()
self.reference_combo_type.show()
self.reference_combo_type_label.show()
def on_order_changed(self, order):
if order != 'no':
@ -1567,7 +1578,7 @@ class NonCopperClear(FlatCAMTool, Gerber):
"use a number."))
continue
if self.tools_table.cellWidget(x.row(), 4).currentText() == 'iso_op':
if self.op_radio.get_value() == _("Isolation"):
self.iso_dia_list.append(self.tooldia)
else:
self.ncc_dia_list.append(self.tooldia)
@ -1606,7 +1617,7 @@ class NonCopperClear(FlatCAMTool, Gerber):
self.mr = self.app.plotcanvas.graph_event_connect('mouse_release', self.on_mouse_release)
self.mm = self.app.plotcanvas.graph_event_connect('mouse_move', self.on_mouse_move)
elif self.select_method == 'box':
self.bound_obj_name = self.box_combo.currentText()
self.bound_obj_name = self.reference_combo.currentText()
# Get source object.
try:
self.bound_obj = self.app.collection.get_by_name(self.bound_obj_name)

View File

@ -66,7 +66,8 @@ class ToolOptimal(FlatCAMTool):
self.gerber_object_combo = FCComboBox()
self.gerber_object_combo.setModel(self.app.collection)
self.gerber_object_combo.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.gerber_object_combo.set_last = True
self.gerber_object_combo.is_last = True
self.gerber_object_combo.obj_type = "Gerber"
self.gerber_object_label = QtWidgets.QLabel("<b>%s:</b>" % _("GERBER"))
self.gerber_object_label.setToolTip(

View File

@ -97,7 +97,7 @@ class ToolPaint(FlatCAMTool, Gerber):
self.obj_combo = FCComboBox()
self.obj_combo.setModel(self.app.collection)
self.obj_combo.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.obj_combo.set_last = True
self.obj_combo.is_last = True
self.object_label = QtWidgets.QLabel('%s:' % _("Object"))
self.object_label.setToolTip(_("Object to be painted."))
@ -491,31 +491,30 @@ class ToolPaint(FlatCAMTool, Gerber):
form1 = QtWidgets.QFormLayout()
grid4.addLayout(form1, 20, 0, 1, 2)
self.box_combo_type_label = QtWidgets.QLabel('%s:' % _("Ref. Type"))
self.box_combo_type_label.setToolTip(
self.reference_type_label = QtWidgets.QLabel('%s:' % _("Ref. Type"))
self.reference_type_label.setToolTip(
_("The type of FlatCAM object to be used as paint reference.\n"
"It can be Gerber, Excellon or Geometry.")
)
self.box_combo_type = FCComboBox()
self.box_combo_type.addItem(_("Reference Gerber"))
self.box_combo_type.addItem(_("Reference Excellon"))
self.box_combo_type.addItem(_("Reference Geometry"))
form1.addRow(self.box_combo_type_label, self.box_combo_type)
self.reference_type_combo = FCComboBox()
self.reference_type_combo.addItems([_("Gerber"), _("Excellon"), _("Geometry")])
self.box_combo_label = QtWidgets.QLabel('%s:' % _("Ref. Object"))
self.box_combo_label.setToolTip(
form1.addRow(self.reference_type_label, self.reference_type_combo)
self.reference_combo_label = QtWidgets.QLabel('%s:' % _("Ref. Object"))
self.reference_combo_label.setToolTip(
_("The FlatCAM object to be used as non copper clearing reference.")
)
self.box_combo = FCComboBox()
self.box_combo.setModel(self.app.collection)
self.box_combo.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.box_combo.set_last = True
form1.addRow(self.box_combo_label, self.box_combo)
self.reference_combo = FCComboBox()
self.reference_combo.setModel(self.app.collection)
self.reference_combo.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.reference_combo.is_last = True
form1.addRow(self.reference_combo_label, self.reference_combo)
self.box_combo.hide()
self.box_combo_label.hide()
self.box_combo_type.hide()
self.box_combo_type_label.hide()
self.reference_combo.hide()
self.reference_combo_label.hide()
self.reference_type_combo.hide()
self.reference_type_label.hide()
# GO Button
self.generate_paint_button = QtWidgets.QPushButton(_('Generate Geometry'))
@ -633,7 +632,7 @@ class ToolPaint(FlatCAMTool, Gerber):
self.order_radio.activated_custom[str].connect(self.on_order_changed)
self.rest_cb.stateChanged.connect(self.on_rest_machining_check)
self.box_combo_type.currentIndexChanged.connect(self.on_combo_box_type)
self.reference_type_combo.currentIndexChanged.connect(self.on_reference_combo_changed)
self.type_obj_combo.activated_custom.connect(self.on_type_obj_changed)
self.apply_param_to_all.clicked.connect(self.on_apply_param_to_all_clicked)
@ -660,6 +659,7 @@ class ToolPaint(FlatCAMTool, Gerber):
obj_type = 0 if val == 'gerber' else 2
self.obj_combo.setRootModelIndex(self.app.collection.index(obj_type, 0, QtCore.QModelIndex()))
self.obj_combo.setCurrentIndex(0)
self.obj_combo.obj_type = {"gerber": "Gerber", "geometry": "Geometry"}[val]
idx = self.paintmethod_combo.findText(_("Laser_lines"))
if self.type_obj_combo.get_value().lower() == 'gerber':
@ -669,6 +669,14 @@ class ToolPaint(FlatCAMTool, Gerber):
if self.paintmethod_combo.get_value() == _("Laser_lines"):
self.paintmethod_combo.set_value(_("Lines"))
def on_reference_combo_changed(self):
obj_type = self.reference_type_combo.currentIndex()
self.reference_combo.setRootModelIndex(self.app.collection.index(obj_type, 0, QtCore.QModelIndex()))
self.reference_combo.setCurrentIndex(0)
self.reference_combo.obj_type = {
_("Gerber"): "Gerber", _("Excellon"): "Excellon", _("Geometry"): "Geometry"
}[self.reference_type_combo.get_value()]
def install(self, icon=None, separator=None, **kwargs):
FlatCAMTool.install(self, icon, separator, shortcut='ALT+P', **kwargs)
@ -888,15 +896,15 @@ class ToolPaint(FlatCAMTool, Gerber):
def on_selection(self):
if self.selectmethod_combo.get_value() == _("Reference Object"):
self.box_combo.show()
self.box_combo_label.show()
self.box_combo_type.show()
self.box_combo_type_label.show()
self.reference_combo.show()
self.reference_combo_label.show()
self.reference_type_combo.show()
self.reference_type_label.show()
else:
self.box_combo.hide()
self.box_combo_label.hide()
self.box_combo_type.hide()
self.box_combo_type_label.hide()
self.reference_combo.hide()
self.reference_combo_label.hide()
self.reference_type_combo.hide()
self.reference_type_label.hide()
if self.selectmethod_combo.get_value() == _("Polygon Selection"):
# disable rest-machining for single polygon painting
@ -997,6 +1005,11 @@ class ToolPaint(FlatCAMTool, Gerber):
# make the default object type, "Geometry"
self.type_obj_combo.set_value("geometry")
# run those once so the obj_type attribute is updated in the FCComboBoxes
# to make sure that the last loaded object is displayed in the combobox
self.on_type_obj_changed(val="geometry")
self.on_reference_combo_changed()
try:
diameters = [float(self.app.defaults["tools_painttooldia"])]
except (ValueError, TypeError):
@ -1103,11 +1116,6 @@ class ToolPaint(FlatCAMTool, Gerber):
self.ui_connect()
def on_combo_box_type(self):
obj_type = self.box_combo_type.currentIndex()
self.box_combo.setRootModelIndex(self.app.collection.index(obj_type, 0, QtCore.QModelIndex()))
self.box_combo.setCurrentIndex(0)
def on_tool_add(self, dia=None, muted=None):
self.blockSignals(True)
@ -1411,7 +1419,7 @@ class ToolPaint(FlatCAMTool, Gerber):
self.mr = self.app.plotcanvas.graph_event_connect('mouse_release', self.on_mouse_release)
self.mm = self.app.plotcanvas.graph_event_connect('mouse_move', self.on_mouse_move)
elif self.select_method == _("Reference Object"):
self.bound_obj_name = self.box_combo.currentText()
self.bound_obj_name = self.reference_combo.currentText()
# Get source object.
try:
self.bound_obj = self.app.collection.get_by_name(self.bound_obj_name)

View File

@ -83,7 +83,7 @@ class Panelize(FlatCAMTool):
self.object_combo = FCComboBox()
self.object_combo.setModel(self.app.collection)
self.object_combo.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.object_combo.set_last = True
self.object_combo.is_last = True
self.object_combo.setToolTip(
_("Object to be panelized. This means that it will\n"
@ -115,10 +115,7 @@ class Panelize(FlatCAMTool):
# Type of Box Object to be used as an envelope for panelization
self.type_box_combo = FCComboBox()
self.type_box_combo.addItems(["Gerber", "Geometry"])
# self.type_box_combo.addItem("Gerber")
# self.type_box_combo.addItem("Excellon")
# self.type_box_combo.addItem("Geometry")
self.type_box_combo.addItems([_("Gerber"), _("Geometry")])
# we get rid of item1 ("Excellon") as it is not suitable for use as a "box" for panelizing
# self.type_box_combo.view().setRowHidden(1, True)
@ -138,7 +135,7 @@ class Panelize(FlatCAMTool):
self.box_combo = FCComboBox()
self.box_combo.setModel(self.app.collection)
self.box_combo.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.box_combo.set_last = True
self.box_combo.is_last = True
self.box_combo.setToolTip(
_("The actual object that is used a container for the\n "
@ -364,10 +361,18 @@ class Panelize(FlatCAMTool):
self.app.defaults["tools_panelize_panel_type"] else 'gerber'
self.panel_type_radio.set_value(panel_type)
# run once the following so the obj_type attribute is updated in the FCComboBoxes
# such that the last loaded object is populated in the combo boxes
self.on_type_obj_index_changed()
self.on_type_box_index_changed()
def on_type_obj_index_changed(self):
obj_type = self.type_obj_combo.currentIndex()
self.object_combo.setRootModelIndex(self.app.collection.index(obj_type, 0, QtCore.QModelIndex()))
self.object_combo.setCurrentIndex(0)
self.object_combo.obj_type = {
_("Gerber"): "Gerber", _("Excellon"): "Excellon", _("Geometry"): "Geometry"
}[self.type_obj_combo.get_value()]
# hide the panel type for Excellons, the panel can be only of type Geometry
if self.type_obj_combo.currentText() != 'Excellon':
@ -382,6 +387,9 @@ class Panelize(FlatCAMTool):
obj_type = self.type_box_combo.currentIndex()
self.box_combo.setRootModelIndex(self.app.collection.index(obj_type, 0, QtCore.QModelIndex()))
self.box_combo.setCurrentIndex(0)
self.box_combo.obj_type = {
_("Gerber"): "Gerber", _("Geometry"): "Geometry"
}[self.type_box_combo.get_value()]
def on_reference_radio_changed(self, current_val):
if current_val == 'object':

View File

@ -58,7 +58,8 @@ class ToolPunchGerber(FlatCAMTool):
self.gerber_object_combo = FCComboBox()
self.gerber_object_combo.setModel(self.app.collection)
self.gerber_object_combo.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.gerber_object_combo.set_last = True
self.gerber_object_combo.is_last = True
self.gerber_object_combo.obj_type = "Gerber"
self.grb_label = QtWidgets.QLabel("<b>%s:</b>" % _("GERBER"))
self.grb_label.setToolTip('%s.' % _("Gerber into which to punch holes"))
@ -168,7 +169,8 @@ class ToolPunchGerber(FlatCAMTool):
self.exc_combo = FCComboBox()
self.exc_combo.setModel(self.app.collection)
self.exc_combo.setRootModelIndex(self.app.collection.index(1, 0, QtCore.QModelIndex()))
self.exc_combo.set_last = True
self.exc_combo.is_last = True
self.exc_combo.obj_type = "Excellon"
grid0.addWidget(self.exc_label, 3, 0, 1, 2)
grid0.addWidget(self.exc_combo, 4, 0, 1, 2)

View File

@ -72,9 +72,10 @@ class QRCode(FlatCAMTool):
self.grb_object_combo = FCComboBox()
self.grb_object_combo.setModel(self.app.collection)
self.grb_object_combo.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.grb_object_combo.set_last = True
self.grb_object_combo.is_last = True
self.grb_object_combo.obj_type = "Gerber"
self.grbobj_label = QtWidgets.QLabel("<b>%s:</b>" % _("GERBER"))
self.grbobj_label = QtWidgets.QLabel("<b>%s:</b>" % _("Object"))
self.grbobj_label.setToolTip(
_("Gerber Object to which the QRCode will be added.")
)

View File

@ -72,7 +72,8 @@ class RulesCheck(FlatCAMTool):
self.copper_t_object = FCComboBox()
self.copper_t_object.setModel(self.app.collection)
self.copper_t_object.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.copper_t_object.set_last = True
self.copper_t_object.is_last = True
self.copper_t_object.obj_type = "Gerber"
self.copper_t_object_lbl = QtWidgets.QLabel('%s:' % _("Top"))
self.copper_t_object_lbl.setToolTip(
@ -89,7 +90,8 @@ class RulesCheck(FlatCAMTool):
self.copper_b_object = FCComboBox()
self.copper_b_object.setModel(self.app.collection)
self.copper_b_object.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.copper_b_object.set_last = True
self.copper_b_object.is_last = True
self.copper_b_object.obj_type = "Gerber"
self.copper_b_object_lbl = QtWidgets.QLabel('%s:' % _("Bottom"))
self.copper_b_object_lbl.setToolTip(
@ -106,7 +108,8 @@ class RulesCheck(FlatCAMTool):
self.sm_t_object = FCComboBox()
self.sm_t_object.setModel(self.app.collection)
self.sm_t_object.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.sm_t_object.set_last = True
self.sm_t_object.is_last = True
self.sm_t_object.obj_type = "Gerber"
self.sm_t_object_lbl = QtWidgets.QLabel('%s:' % _("SM Top"))
self.sm_t_object_lbl.setToolTip(
@ -123,7 +126,8 @@ class RulesCheck(FlatCAMTool):
self.sm_b_object = FCComboBox()
self.sm_b_object.setModel(self.app.collection)
self.sm_b_object.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.sm_b_object.set_last = True
self.sm_b_object.is_last = True
self.sm_b_object.obj_type = "Gerber"
self.sm_b_object_lbl = QtWidgets.QLabel('%s:' % _("SM Bottom"))
self.sm_b_object_lbl.setToolTip(
@ -140,7 +144,8 @@ class RulesCheck(FlatCAMTool):
self.ss_t_object = FCComboBox()
self.ss_t_object.setModel(self.app.collection)
self.ss_t_object.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.ss_t_object.set_last = True
self.ss_t_object.is_last = True
self.ss_t_object.obj_type = "Gerber"
self.ss_t_object_lbl = QtWidgets.QLabel('%s:' % _("Silk Top"))
self.ss_t_object_lbl.setToolTip(
@ -157,7 +162,8 @@ class RulesCheck(FlatCAMTool):
self.ss_b_object = FCComboBox()
self.ss_b_object.setModel(self.app.collection)
self.ss_b_object.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.ss_b_object.set_last = True
self.ss_b_object.is_last = True
self.ss_b_object.obj_type = "Gerber"
self.ss_b_object_lbl = QtWidgets.QLabel('%s:' % _("Silk Bottom"))
self.ss_b_object_lbl.setToolTip(
@ -174,7 +180,8 @@ class RulesCheck(FlatCAMTool):
self.outline_object = FCComboBox()
self.outline_object.setModel(self.app.collection)
self.outline_object.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.outline_object.set_last = True
self.outline_object.is_last = True
self.outline_object.obj_type = "Gerber"
self.outline_object_lbl = QtWidgets.QLabel('%s:' % _("Outline"))
self.outline_object_lbl.setToolTip(
@ -200,7 +207,8 @@ class RulesCheck(FlatCAMTool):
self.e1_object = FCComboBox()
self.e1_object.setModel(self.app.collection)
self.e1_object.setRootModelIndex(self.app.collection.index(1, 0, QtCore.QModelIndex()))
self.e1_object.set_last = True
self.e1_object.is_last = True
self.e1_object.obj_type = "Excellon"
self.e1_object_lbl = QtWidgets.QLabel('%s:' % _("Excellon 1"))
self.e1_object_lbl.setToolTip(
@ -218,7 +226,8 @@ class RulesCheck(FlatCAMTool):
self.e2_object = FCComboBox()
self.e2_object.setModel(self.app.collection)
self.e2_object.setRootModelIndex(self.app.collection.index(1, 0, QtCore.QModelIndex()))
self.e2_object.set_last = True
self.e2_object.is_last = True
self.e2_object.obj_type = "Excellon"
self.e2_object_lbl = QtWidgets.QLabel('%s:' % _("Excellon 2"))
self.e2_object_lbl.setToolTip(

View File

@ -61,7 +61,8 @@ class SolderPaste(FlatCAMTool):
self.obj_combo = FCComboBox(callback=self.on_rmb_combo)
self.obj_combo.setModel(self.app.collection)
self.obj_combo.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.obj_combo.set_last = True
self.obj_combo.is_last = True
self.obj_combo.obj_type = "Gerber"
self.object_label = QtWidgets.QLabel("Gerber: ")
self.object_label.setToolTip(
@ -383,7 +384,8 @@ class SolderPaste(FlatCAMTool):
self.geo_obj_combo = FCComboBox(callback=self.on_rmb_combo)
self.geo_obj_combo.setModel(self.app.collection)
self.geo_obj_combo.setRootModelIndex(self.app.collection.index(2, 0, QtCore.QModelIndex()))
self.geo_obj_combo.set_last = True
self.geo_obj_combo.is_last = True
self.geo_obj_combo.obj_type = "Geometry"
self.geo_object_label = QtWidgets.QLabel('%s:' % _("Geo Result"))
self.geo_object_label.setToolTip(
@ -416,7 +418,8 @@ class SolderPaste(FlatCAMTool):
self.cnc_obj_combo = FCComboBox(callback=self.on_rmb_combo)
self.cnc_obj_combo.setModel(self.app.collection)
self.cnc_obj_combo.setRootModelIndex(self.app.collection.index(3, 0, QtCore.QModelIndex()))
self.cnc_obj_combo.set_last = True
self.cnc_obj_combo.is_last = True
self.geo_obj_combo.obj_type = "CNCJob"
self.cnc_object_label = QtWidgets.QLabel('%s:' % _("CNC Result"))
self.cnc_object_label.setToolTip(

View File

@ -69,7 +69,9 @@ class ToolSub(FlatCAMTool):
self.target_gerber_combo = FCComboBox()
self.target_gerber_combo.setModel(self.app.collection)
self.target_gerber_combo.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.target_gerber_combo.setCurrentIndex(1)
# self.target_gerber_combo.setCurrentIndex(1)
self.target_gerber_combo.is_last = True
self.target_gerber_combo.obj_type = "Gerber"
self.target_gerber_label = QtWidgets.QLabel('%s:' % _("Target"))
self.target_gerber_label.setToolTip(
@ -83,7 +85,8 @@ class ToolSub(FlatCAMTool):
self.sub_gerber_combo = FCComboBox()
self.sub_gerber_combo.setModel(self.app.collection)
self.sub_gerber_combo.setRootModelIndex(self.app.collection.index(0, 0, QtCore.QModelIndex()))
self.sub_gerber_combo.set_last = True
self.sub_gerber_combo.is_last = True
self.sub_gerber_combo.obj_type = "Gerber"
self.sub_gerber_label = QtWidgets.QLabel('%s:' % _("Subtractor"))
self.sub_gerber_label.setToolTip(
@ -121,7 +124,9 @@ class ToolSub(FlatCAMTool):
self.target_geo_combo = FCComboBox()
self.target_geo_combo.setModel(self.app.collection)
self.target_geo_combo.setRootModelIndex(self.app.collection.index(2, 0, QtCore.QModelIndex()))
self.target_geo_combo.setCurrentIndex(1)
# self.target_geo_combo.setCurrentIndex(1)
self.target_geo_combo.is_last = True
self.target_geo_combo.obj_type = "Geometry"
self.target_geo_label = QtWidgets.QLabel('%s:' % _("Target"))
self.target_geo_label.setToolTip(
@ -135,7 +140,8 @@ class ToolSub(FlatCAMTool):
self.sub_geo_combo = FCComboBox()
self.sub_geo_combo.setModel(self.app.collection)
self.sub_geo_combo.setRootModelIndex(self.app.collection.index(2, 0, QtCore.QModelIndex()))
self.sub_geo_combo.set_last = True
self.sub_geo_combo.is_last = True
self.sub_geo_combo.obj_type = "Geometry"
self.sub_geo_label = QtWidgets.QLabel('%s:' % _("Subtractor"))
self.sub_geo_label.setToolTip(