- changed some tooltips
- added tooltips in Excellon tool table headers - in Excellon Tool Table the columns are now only selectable by clicking on the header (sorting is done automatically) - if CNCJob from Excellon then hide the CNC tools table in CNCJob Object
This commit is contained in:
@@ -1521,14 +1521,16 @@ class ExcellonPrefGroupUI(OptionsGroupUI):
|
|||||||
|
|
||||||
grid1 = QtWidgets.QGridLayout()
|
grid1 = QtWidgets.QGridLayout()
|
||||||
self.layout.addLayout(grid1)
|
self.layout.addLayout(grid1)
|
||||||
|
|
||||||
self.plot_cb = FCCheckBox(label='Plot')
|
self.plot_cb = FCCheckBox(label='Plot')
|
||||||
self.plot_cb.setToolTip(
|
self.plot_cb.setToolTip(
|
||||||
"Plot (show) this object."
|
"Plot (show) this object."
|
||||||
)
|
)
|
||||||
grid1.addWidget(self.plot_cb, 0, 0)
|
grid1.addWidget(self.plot_cb, 0, 0)
|
||||||
|
|
||||||
self.solid_cb = FCCheckBox(label='Solid')
|
self.solid_cb = FCCheckBox(label='Solid')
|
||||||
self.solid_cb.setToolTip(
|
self.solid_cb.setToolTip(
|
||||||
"Solid circles."
|
"Plot as solid circles."
|
||||||
)
|
)
|
||||||
grid1.addWidget(self.solid_cb, 0, 1)
|
grid1.addWidget(self.solid_cb, 0, 1)
|
||||||
|
|
||||||
@@ -1560,7 +1562,7 @@ class ExcellonPrefGroupUI(OptionsGroupUI):
|
|||||||
|
|
||||||
hlay1 = QtWidgets.QHBoxLayout()
|
hlay1 = QtWidgets.QHBoxLayout()
|
||||||
self.layout.addLayout(hlay1)
|
self.layout.addLayout(hlay1)
|
||||||
self.excellon_format_in_label = QtWidgets.QLabel("INCH")
|
self.excellon_format_in_label = QtWidgets.QLabel("INCH:")
|
||||||
self.excellon_format_in_label.setAlignment(QtCore.Qt.AlignLeft)
|
self.excellon_format_in_label.setAlignment(QtCore.Qt.AlignLeft)
|
||||||
self.excellon_format_in_label.setToolTip(
|
self.excellon_format_in_label.setToolTip(
|
||||||
"Default values for INCH are 2:4")
|
"Default values for INCH are 2:4")
|
||||||
@@ -1593,7 +1595,7 @@ class ExcellonPrefGroupUI(OptionsGroupUI):
|
|||||||
|
|
||||||
hlay2 = QtWidgets.QHBoxLayout()
|
hlay2 = QtWidgets.QHBoxLayout()
|
||||||
self.layout.addLayout(hlay2)
|
self.layout.addLayout(hlay2)
|
||||||
self.excellon_format_mm_label = QtWidgets.QLabel("METRIC")
|
self.excellon_format_mm_label = QtWidgets.QLabel("METRIC:")
|
||||||
self.excellon_format_mm_label.setAlignment(QtCore.Qt.AlignLeft)
|
self.excellon_format_mm_label.setAlignment(QtCore.Qt.AlignLeft)
|
||||||
self.excellon_format_mm_label.setToolTip(
|
self.excellon_format_mm_label.setToolTip(
|
||||||
"Default values for METRIC are 3:3")
|
"Default values for METRIC are 3:3")
|
||||||
@@ -1627,10 +1629,10 @@ class ExcellonPrefGroupUI(OptionsGroupUI):
|
|||||||
hlay3 = QtWidgets.QHBoxLayout()
|
hlay3 = QtWidgets.QHBoxLayout()
|
||||||
self.layout.addLayout(hlay3)
|
self.layout.addLayout(hlay3)
|
||||||
|
|
||||||
self.excellon_zeros_label = QtWidgets.QLabel('Excellon <b>Zeros</b> Type:')
|
self.excellon_zeros_label = QtWidgets.QLabel('Default <b>Zeros</b> Type:')
|
||||||
self.excellon_zeros_label.setAlignment(QtCore.Qt.AlignLeft)
|
self.excellon_zeros_label.setAlignment(QtCore.Qt.AlignLeft)
|
||||||
self.excellon_zeros_label.setToolTip(
|
self.excellon_zeros_label.setToolTip(
|
||||||
"This sets the type of excellon zeros.\n"
|
"This sets the type of Excellon zeros.\n"
|
||||||
"If LZ then Leading Zeros are kept and\n"
|
"If LZ then Leading Zeros are kept and\n"
|
||||||
"Trailing Zeros are removed.\n"
|
"Trailing Zeros are removed.\n"
|
||||||
"If TZ is checked then Trailing Zeros are kept\n"
|
"If TZ is checked then Trailing Zeros are kept\n"
|
||||||
@@ -1641,7 +1643,9 @@ class ExcellonPrefGroupUI(OptionsGroupUI):
|
|||||||
self.excellon_zeros_radio = RadioSet([{'label': 'LZ', 'value': 'L'},
|
self.excellon_zeros_radio = RadioSet([{'label': 'LZ', 'value': 'L'},
|
||||||
{'label': 'TZ', 'value': 'T'}])
|
{'label': 'TZ', 'value': 'T'}])
|
||||||
self.excellon_zeros_radio.setToolTip(
|
self.excellon_zeros_radio.setToolTip(
|
||||||
"This sets the type of excellon zeros.\n"
|
"This sets the default type of Excellon zeros.\n"
|
||||||
|
"If it is not detected in the parsed file the value here\n"
|
||||||
|
"will be used."
|
||||||
"If LZ then Leading Zeros are kept and\n"
|
"If LZ then Leading Zeros are kept and\n"
|
||||||
"Trailing Zeros are removed.\n"
|
"Trailing Zeros are removed.\n"
|
||||||
"If TZ is checked then Trailing Zeros are kept\n"
|
"If TZ is checked then Trailing Zeros are kept\n"
|
||||||
@@ -1653,10 +1657,12 @@ class ExcellonPrefGroupUI(OptionsGroupUI):
|
|||||||
hlay4 = QtWidgets.QHBoxLayout()
|
hlay4 = QtWidgets.QHBoxLayout()
|
||||||
self.layout.addLayout(hlay4)
|
self.layout.addLayout(hlay4)
|
||||||
|
|
||||||
self.excellon_units_label = QtWidgets.QLabel('Excellon <b>Units</b> Type:')
|
self.excellon_units_label = QtWidgets.QLabel('Default <b>Units</b> Type:')
|
||||||
self.excellon_units_label.setAlignment(QtCore.Qt.AlignLeft)
|
self.excellon_units_label.setAlignment(QtCore.Qt.AlignLeft)
|
||||||
self.excellon_units_label.setToolTip(
|
self.excellon_units_label.setToolTip(
|
||||||
"This sets the units of Excellon files.\n"
|
"This sets the default units of Excellon files.\n"
|
||||||
|
"If it is not detected in the parsed file the value here\n"
|
||||||
|
"will be used."
|
||||||
"Some Excellon files don't have an header\n"
|
"Some Excellon files don't have an header\n"
|
||||||
"therefore this parameter will be used.\n"
|
"therefore this parameter will be used.\n"
|
||||||
)
|
)
|
||||||
@@ -1790,13 +1796,14 @@ class ExcellonPrefGroupUI(OptionsGroupUI):
|
|||||||
|
|
||||||
endzlabel = QtWidgets.QLabel('End move Z:')
|
endzlabel = QtWidgets.QLabel('End move Z:')
|
||||||
endzlabel.setToolTip(
|
endzlabel.setToolTip(
|
||||||
"Tool Z where user can change drill bit."
|
"Height of the tool after\n"
|
||||||
|
"the last move at the end of the job."
|
||||||
)
|
)
|
||||||
grid2.addWidget(endzlabel, 6, 0)
|
grid2.addWidget(endzlabel, 6, 0)
|
||||||
self.eendz_entry = LengthEntry()
|
self.eendz_entry = LengthEntry()
|
||||||
grid2.addWidget(self.eendz_entry, 6, 1)
|
grid2.addWidget(self.eendz_entry, 6, 1)
|
||||||
|
|
||||||
frlabel = QtWidgets.QLabel('Feedrate (Plunge):')
|
frlabel = QtWidgets.QLabel('Feedrate:')
|
||||||
frlabel.setToolTip(
|
frlabel.setToolTip(
|
||||||
"Tool speed while drilling\n"
|
"Tool speed while drilling\n"
|
||||||
"(in units per minute)."
|
"(in units per minute)."
|
||||||
@@ -1845,7 +1852,7 @@ class ExcellonPrefGroupUI(OptionsGroupUI):
|
|||||||
self.ois_dwell_exc = OptionalInputSection(self.dwell_cb, [self.dwelltime_entry])
|
self.ois_dwell_exc = OptionalInputSection(self.dwell_cb, [self.dwelltime_entry])
|
||||||
|
|
||||||
# postprocessor selection
|
# postprocessor selection
|
||||||
pp_excellon_label = QtWidgets.QLabel("Postprocessor")
|
pp_excellon_label = QtWidgets.QLabel("Postprocessor:")
|
||||||
pp_excellon_label.setToolTip(
|
pp_excellon_label.setToolTip(
|
||||||
"The postprocessor file that dictates\n"
|
"The postprocessor file that dictates\n"
|
||||||
"gcode output."
|
"gcode output."
|
||||||
@@ -1992,7 +1999,10 @@ class GeometryPrefGroupUI(OptionsGroupUI):
|
|||||||
dplabel = QtWidgets.QLabel('Depth/Pass:')
|
dplabel = QtWidgets.QLabel('Depth/Pass:')
|
||||||
dplabel.setToolTip(
|
dplabel.setToolTip(
|
||||||
"The depth to cut on each pass,\n"
|
"The depth to cut on each pass,\n"
|
||||||
"when multidepth is enabled."
|
"when multidepth is enabled.\n"
|
||||||
|
"It has positive value although\n"
|
||||||
|
"it is a fraction from the depth\n"
|
||||||
|
"which has negative value."
|
||||||
)
|
)
|
||||||
|
|
||||||
grid2.addWidget(dplabel, 2, 0)
|
grid2.addWidget(dplabel, 2, 0)
|
||||||
@@ -2042,8 +2052,7 @@ class GeometryPrefGroupUI(OptionsGroupUI):
|
|||||||
# Start move Z
|
# Start move Z
|
||||||
startzlabel = QtWidgets.QLabel('Start move Z:')
|
startzlabel = QtWidgets.QLabel('Start move Z:')
|
||||||
startzlabel.setToolTip(
|
startzlabel.setToolTip(
|
||||||
"Height of the tool just\n"
|
"Height of the tool just after starting the work.\n"
|
||||||
"after starting the work.\n"
|
|
||||||
"Delete the value if you don't need this feature."
|
"Delete the value if you don't need this feature."
|
||||||
)
|
)
|
||||||
grid2.addWidget(startzlabel, 7, 0)
|
grid2.addWidget(startzlabel, 7, 0)
|
||||||
@@ -2054,7 +2063,7 @@ class GeometryPrefGroupUI(OptionsGroupUI):
|
|||||||
endzlabel = QtWidgets.QLabel('End move Z:')
|
endzlabel = QtWidgets.QLabel('End move Z:')
|
||||||
endzlabel.setToolTip(
|
endzlabel.setToolTip(
|
||||||
"Height of the tool after\n"
|
"Height of the tool after\n"
|
||||||
" the last move."
|
"the last move at the end of the job."
|
||||||
)
|
)
|
||||||
grid2.addWidget(endzlabel, 8, 0)
|
grid2.addWidget(endzlabel, 8, 0)
|
||||||
self.gendz_entry = LengthEntry()
|
self.gendz_entry = LengthEntry()
|
||||||
@@ -2071,10 +2080,11 @@ class GeometryPrefGroupUI(OptionsGroupUI):
|
|||||||
grid2.addWidget(self.cncfeedrate_entry, 9, 1)
|
grid2.addWidget(self.cncfeedrate_entry, 9, 1)
|
||||||
|
|
||||||
# Feedrate Z (Plunge)
|
# Feedrate Z (Plunge)
|
||||||
frz_label = QtWidgets.QLabel('Feed Rate Z (Plunge):')
|
frz_label = QtWidgets.QLabel('Feed Rate Z:')
|
||||||
frz_label.setToolTip(
|
frz_label.setToolTip(
|
||||||
"Cutting speed in the XY\n"
|
"Cutting speed in the XY\n"
|
||||||
"plane in units per minute"
|
"plane in units per minute.\n"
|
||||||
|
"It is called also Plunge."
|
||||||
)
|
)
|
||||||
grid2.addWidget(frz_label, 10, 0)
|
grid2.addWidget(frz_label, 10, 0)
|
||||||
self.cncplunge_entry = LengthEntry()
|
self.cncplunge_entry = LengthEntry()
|
||||||
@@ -2125,21 +2135,18 @@ class GeometryPrefGroupUI(OptionsGroupUI):
|
|||||||
grid2.addWidget(dwelltime, 15, 0)
|
grid2.addWidget(dwelltime, 15, 0)
|
||||||
grid2.addWidget(self.dwelltime_entry, 15, 1)
|
grid2.addWidget(self.dwelltime_entry, 15, 1)
|
||||||
|
|
||||||
grid3 = QtWidgets.QGridLayout()
|
|
||||||
self.layout.addLayout(grid3)
|
|
||||||
|
|
||||||
self.ois_dwell = OptionalInputSection(self.dwell_cb, [self.dwelltime_entry])
|
self.ois_dwell = OptionalInputSection(self.dwell_cb, [self.dwelltime_entry])
|
||||||
|
|
||||||
# postprocessor selection
|
# postprocessor selection
|
||||||
pp_label = QtWidgets.QLabel("Postprocessor")
|
pp_label = QtWidgets.QLabel("Postprocessor:")
|
||||||
pp_label.setToolTip(
|
pp_label.setToolTip(
|
||||||
"The postprocessor file that dictates\n"
|
"The postprocessor file that dictates\n"
|
||||||
"gcode output."
|
"Machine Code output."
|
||||||
)
|
)
|
||||||
grid3.addWidget(pp_label)
|
grid2.addWidget(pp_label, 16, 0)
|
||||||
self.pp_geometry_name_cb = FCComboBox()
|
self.pp_geometry_name_cb = FCComboBox()
|
||||||
self.pp_geometry_name_cb.setFocusPolicy(Qt.StrongFocus)
|
self.pp_geometry_name_cb.setFocusPolicy(Qt.StrongFocus)
|
||||||
grid3.addWidget(self.pp_geometry_name_cb)
|
grid2.addWidget(self.pp_geometry_name_cb, 16, 1)
|
||||||
|
|
||||||
# ------------------------------
|
# ------------------------------
|
||||||
## Paint area
|
## Paint area
|
||||||
|
|||||||
@@ -1017,6 +1017,8 @@ class FlatCAMExcellon(FlatCAMObj, Excellon):
|
|||||||
# add a last row with the Total number of drills
|
# add a last row with the Total number of drills
|
||||||
empty = QtWidgets.QTableWidgetItem('')
|
empty = QtWidgets.QTableWidgetItem('')
|
||||||
empty.setFlags(~QtCore.Qt.ItemIsSelectable | QtCore.Qt.ItemIsEnabled)
|
empty.setFlags(~QtCore.Qt.ItemIsSelectable | QtCore.Qt.ItemIsEnabled)
|
||||||
|
empty_1 = QtWidgets.QTableWidgetItem('')
|
||||||
|
empty_1.setFlags(~QtCore.Qt.ItemIsSelectable | QtCore.Qt.ItemIsEnabled)
|
||||||
|
|
||||||
label_tot_drill_count = QtWidgets.QTableWidgetItem('Total Drills')
|
label_tot_drill_count = QtWidgets.QTableWidgetItem('Total Drills')
|
||||||
tot_drill_count = QtWidgets.QTableWidgetItem('%d' % self.tot_drill_cnt)
|
tot_drill_count = QtWidgets.QTableWidgetItem('%d' % self.tot_drill_cnt)
|
||||||
@@ -1026,6 +1028,7 @@ class FlatCAMExcellon(FlatCAMObj, Excellon):
|
|||||||
self.ui.tools_table.setItem(self.tool_row, 0, empty)
|
self.ui.tools_table.setItem(self.tool_row, 0, empty)
|
||||||
self.ui.tools_table.setItem(self.tool_row, 1, label_tot_drill_count)
|
self.ui.tools_table.setItem(self.tool_row, 1, label_tot_drill_count)
|
||||||
self.ui.tools_table.setItem(self.tool_row, 2, tot_drill_count) # Total number of drills
|
self.ui.tools_table.setItem(self.tool_row, 2, tot_drill_count) # Total number of drills
|
||||||
|
self.ui.tools_table.setItem(self.tool_row, 3, empty_1) # Total number of drills
|
||||||
|
|
||||||
font = QtGui.QFont()
|
font = QtGui.QFont()
|
||||||
font.setBold(True)
|
font.setBold(True)
|
||||||
@@ -1058,7 +1061,7 @@ class FlatCAMExcellon(FlatCAMObj, Excellon):
|
|||||||
self.ui.tools_table.item(self.tool_row, kl).setForeground(QtGui.QColor(0, 70, 255))
|
self.ui.tools_table.item(self.tool_row, kl).setForeground(QtGui.QColor(0, 70, 255))
|
||||||
|
|
||||||
# sort the tool diameter column
|
# sort the tool diameter column
|
||||||
self.ui.tools_table.sortItems(1)
|
# self.ui.tools_table.sortItems(1)
|
||||||
# all the tools are selected by default
|
# all the tools are selected by default
|
||||||
self.ui.tools_table.selectColumn(0)
|
self.ui.tools_table.selectColumn(0)
|
||||||
#
|
#
|
||||||
@@ -1077,7 +1080,7 @@ class FlatCAMExcellon(FlatCAMObj, Excellon):
|
|||||||
horizontal_header.setSectionResizeMode(3, QtWidgets.QHeaderView.ResizeToContents)
|
horizontal_header.setSectionResizeMode(3, QtWidgets.QHeaderView.ResizeToContents)
|
||||||
# horizontal_header.setStretchLastSection(True)
|
# horizontal_header.setStretchLastSection(True)
|
||||||
|
|
||||||
self.ui.tools_table.setSortingEnabled(True)
|
self.ui.tools_table.setSortingEnabled(False)
|
||||||
|
|
||||||
self.ui.tools_table.setMinimumHeight(self.ui.tools_table.getHeight())
|
self.ui.tools_table.setMinimumHeight(self.ui.tools_table.getHeight())
|
||||||
self.ui.tools_table.setMaximumHeight(self.ui.tools_table.getHeight())
|
self.ui.tools_table.setMaximumHeight(self.ui.tools_table.getHeight())
|
||||||
@@ -3644,6 +3647,14 @@ class FlatCAMCNCjob(FlatCAMObj, CNCjob):
|
|||||||
|
|
||||||
FlatCAMObj.build_ui(self)
|
FlatCAMObj.build_ui(self)
|
||||||
|
|
||||||
|
# if the FlatCAM object is Excellon don't build the CNC Tools Table but hide it
|
||||||
|
if self.cnc_tools:
|
||||||
|
self.ui.cnc_tools_table.show()
|
||||||
|
self.ui.plot_options_label.show()
|
||||||
|
else:
|
||||||
|
self.ui.cnc_tools_table.hide()
|
||||||
|
self.ui.plot_options_label.hide()
|
||||||
|
|
||||||
offset = 0
|
offset = 0
|
||||||
tool_idx = 0
|
tool_idx = 0
|
||||||
|
|
||||||
|
|||||||
14
ObjectUI.py
14
ObjectUI.py
@@ -421,6 +421,20 @@ class ExcellonObjectUI(ObjectUI):
|
|||||||
self.tools_table.setHorizontalHeaderLabels(['#', 'Diameter', 'D', 'S'])
|
self.tools_table.setHorizontalHeaderLabels(['#', 'Diameter', 'D', 'S'])
|
||||||
self.tools_table.setSortingEnabled(False)
|
self.tools_table.setSortingEnabled(False)
|
||||||
|
|
||||||
|
self.tools_table.horizontalHeaderItem(0).setToolTip(
|
||||||
|
"This is the Tool Number.\n"
|
||||||
|
"When ToolChange is checked, on toolchange event this value\n"
|
||||||
|
"will be showed as a T1, T2 ... Tn in the Machine Code.")
|
||||||
|
self.tools_table.horizontalHeaderItem(1).setToolTip(
|
||||||
|
"Tool Diameter. It's value (in current FlatCAM units) \n"
|
||||||
|
"is the cut width into the material.")
|
||||||
|
self.tools_table.horizontalHeaderItem(2).setToolTip(
|
||||||
|
"The number of Drill holes. Holes that are drilled with\n"
|
||||||
|
"a drill bit.")
|
||||||
|
self.tools_table.horizontalHeaderItem(3).setToolTip(
|
||||||
|
"The number of Slot holes. Holes that are created by\n"
|
||||||
|
"milling them with an endmill bit.")
|
||||||
|
|
||||||
self.empty_label = QtWidgets.QLabel('')
|
self.empty_label = QtWidgets.QLabel('')
|
||||||
self.tools_box.addWidget(self.empty_label)
|
self.tools_box.addWidget(self.empty_label)
|
||||||
|
|
||||||
|
|||||||
@@ -9,6 +9,14 @@ CAD program, and create G-Code for Isolation routing.
|
|||||||
|
|
||||||
=================================================
|
=================================================
|
||||||
|
|
||||||
|
21.01.2019
|
||||||
|
|
||||||
|
- changed some tooltips
|
||||||
|
- added tooltips in Excellon tool table headers
|
||||||
|
- in Excellon Tool Table the columns are now only selectable by clicking on the header (sorting is done automatically)
|
||||||
|
- if CNCJob from Excellon then hide the CNC tools table in CNCJob Object
|
||||||
|
|
||||||
|
|
||||||
20.01.2019
|
20.01.2019
|
||||||
|
|
||||||
- fixed the HPGL code geometry rendering when travel
|
- fixed the HPGL code geometry rendering when travel
|
||||||
|
|||||||
Reference in New Issue
Block a user