diff --git a/Bookmark.py b/Bookmark.py index dcd845be..492ce18f 100644 --- a/Bookmark.py +++ b/Bookmark.py @@ -1,5 +1,5 @@ from PyQt6 import QtGui, QtCore, QtWidgets -from appGUI.GUIElements import FCTable, FCEntry, FCButton, FCFileSaveDialog, FCGridLayout +from appGUI.GUIElements import FCTable, FCEntry, FCButton, FCFileSaveDialog, FCGridLayout, FCLabel import sys import webbrowser @@ -33,7 +33,7 @@ class BookmarkManager(QtWidgets.QWidget): # self.setWindowTitle(_("Bookmark Manager")) # self.resize(600, 400) - # title = QtWidgets.QLabel( + # title = FCLabel( # "FlatCAM
" # ) # title.setOpenExternalLinks(True) @@ -75,7 +75,7 @@ class BookmarkManager(QtWidgets.QWidget): new_vlay = QtWidgets.QVBoxLayout() layout.addLayout(new_vlay) - new_title_lbl = QtWidgets.QLabel('%s' % _("New Bookmark")) + new_title_lbl = FCLabel('%s' % _("New Bookmark")) new_vlay.addWidget(new_title_lbl) grid0 = FCGridLayout(v_spacing=5, h_spacing=3) @@ -83,12 +83,12 @@ class BookmarkManager(QtWidgets.QWidget): grid0.setColumnStretch(1, 1) new_vlay.addLayout(grid0) - title_lbl = QtWidgets.QLabel('%s:' % _("Title")) + title_lbl = FCLabel('%s:' % _("Title")) self.title_entry = FCEntry() grid0.addWidget(title_lbl, 0, 0) grid0.addWidget(self.title_entry, 0, 1) - link_lbl = QtWidgets.QLabel('%s:' % _("Web Link")) + link_lbl = FCLabel('%s:' % _("Web Link")) self.link_entry = FCEntry() self.link_entry.set_value('http://') grid0.addWidget(link_lbl, 2, 0) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5c764303..e016eac5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -13,6 +13,8 @@ CHANGELOG for FlatCAM beta - updated the "Set Color" functionality to store the used color in a correct way - when creating a nw project the user is asked if he wants to save the preferences - changed the ColorRole in the on_about() method to 'window' os the programmers and translator tab is set to white color +- changed the translators tab in the on_about() method +- added the usage of the FCLabel widget instead of QtWidgets.QLabel 17.08.2021 @@ -6423,7 +6425,6 @@ This fork features: - Added capability so FlatCAM can now read Gerber files with traces having zero value (aperture size is zero); - Added Paint All / Seed based Paint functions from the JP's FlatCAM; - Added Excellon move optimization (travelling salesman algorithm) cherry-picked from David Kahler: https://bitbucket.org/dakahler/flatcam -- Updated make_win32.py so it will work with cx_freeze 5.0.1 - Corrected small typo in DblSidedTool.py - Added the TCL commands in the new format. Picked from FLATCAM master. - Hack to fix the issue with geometry not being updated after a TCL command was executed. Now after each TCL command the plot_all() function is executed and the canvas is refreshed. diff --git a/appEditors/appGCodeEditor.py b/appEditors/appGCodeEditor.py index 0c6fbcc1..1e460ea8 100644 --- a/appEditors/appGCodeEditor.py +++ b/appEditors/appGCodeEditor.py @@ -7,7 +7,7 @@ from appEditors.AppTextEditor import AppTextEditor from appObjects.FlatCAMCNCJob import CNCJobObject -from appGUI.GUIElements import FCTextArea, FCEntry, FCButton, FCTable, FCGridLayout +from appGUI.GUIElements import FCTextArea, FCEntry, FCButton, FCTable, FCGridLayout, FCLabel from PyQt6 import QtWidgets, QtCore, QtGui # from io import StringIO @@ -758,12 +758,12 @@ class AppGCodeEditorUI: # ## Page Title icon pixmap = QtGui.QPixmap(self.app.resource_location + '/flatcam_icon32.png') - self.icon = QtWidgets.QLabel() + self.icon = FCLabel() self.icon.setPixmap(pixmap) self.title_box.addWidget(self.icon, stretch=0) # ## Title label - self.title_label = QtWidgets.QLabel("%s" % _('GCode Editor')) + self.title_label = FCLabel("%s" % _('GCode Editor')) self.title_label.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeft | QtCore.Qt.AlignmentFlag.AlignVCenter) self.title_box.addWidget(self.title_label, stretch=1) @@ -783,7 +783,7 @@ class AppGCodeEditorUI: # ## Object name self.name_box = QtWidgets.QHBoxLayout() self.edit_box.addLayout(self.name_box) - name_label = QtWidgets.QLabel(_("Name:")) + name_label = FCLabel(_("Name:")) self.name_box.addWidget(name_label) self.name_entry = FCEntry() self.name_box.addWidget(self.name_entry) @@ -834,7 +834,7 @@ class AppGCodeEditorUI: self.snippet_frame.setLayout(self.snippet_grid) # Prepend text to GCode - prependlabel = QtWidgets.QLabel('%s 1:' % _('CNC Code Snippet')) + prependlabel = FCLabel('%s 1:' % _('CNC Code Snippet')) prependlabel.setToolTip( _("Code snippet defined in Preferences.") ) @@ -856,7 +856,7 @@ class AppGCodeEditorUI: self.snippet_grid.addWidget(self.update_gcode_button, 2, 0) # Append text to GCode - appendlabel = QtWidgets.QLabel('%s 2:' % _('CNC Code Snippet')) + appendlabel = FCLabel('%s 2:' % _('CNC Code Snippet')) appendlabel.setToolTip( _("Code snippet defined in Preferences.") ) diff --git a/appPlugins/ToolAlignObjects.py b/appPlugins/ToolAlignObjects.py index 935c3103..3ab0ef7c 100644 --- a/appPlugins/ToolAlignObjects.py +++ b/appPlugins/ToolAlignObjects.py @@ -411,7 +411,7 @@ class AlignUI: """) self.layout.addWidget(title_label) - self.layout.addWidget(QtWidgets.QLabel("")) + self.layout.addWidget(FCLabel("")) # Form Layout grid0 = FCGridLayout(v_spacing=5, h_spacing=3) @@ -490,7 +490,7 @@ class AlignUI: separator_line.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken) grid0.addWidget(separator_line, 10, 0, 1, 2) - grid0.addWidget(QtWidgets.QLabel(''), 11, 0, 1, 2) + grid0.addWidget(FCLabel(''), 11, 0, 1, 2) # Alignment Type self.a_type_lbl = FCLabel('%s:' % _("Alignment Type")) diff --git a/appPlugins/ToolCalibration.py b/appPlugins/ToolCalibration.py index 1227e4f2..4c766245 100644 --- a/appPlugins/ToolCalibration.py +++ b/appPlugins/ToolCalibration.py @@ -8,8 +8,8 @@ from PyQt6 import QtWidgets, QtCore, QtGui from appTool import AppTool -from appGUI.GUIElements import FCDoubleSpinner, EvalEntry, FCCheckBox, OptionalInputSection, FCEntry, VerticalScrollArea -from appGUI.GUIElements import FCTable, FCComboBox, RadioSet, FCGridLayout +from appGUI.GUIElements import FCDoubleSpinner, EvalEntry, FCCheckBox, OptionalInputSection, FCEntry, \ + VerticalScrollArea, FCTable, FCComboBox, RadioSet, FCGridLayout, FCLabel from appEditors.AppTextEditor import AppTextEditor from shapely.geometry import Point @@ -770,7 +770,7 @@ class CalibrationUI: self.layout = layout # ## Title - title_label = QtWidgets.QLabel("%s" % self.pluginName) + title_label = FCLabel("%s" % self.pluginName) title_label.setStyleSheet(""" QLabel { @@ -780,7 +780,7 @@ class CalibrationUI: """) self.layout.addWidget(title_label) - self.layout.addWidget(QtWidgets.QLabel("")) + self.layout.addWidget(FCLabel("")) # ## Grid Layout grid_lay = FCGridLayout(v_spacing=5, h_spacing=3) @@ -789,14 +789,14 @@ class CalibrationUI: grid_lay.setColumnStretch(1, 1) grid_lay.setColumnStretch(2, 0) - self.gcode_title_label = QtWidgets.QLabel('%s:' % _('Parameters')) + self.gcode_title_label = FCLabel('%s:' % _('Parameters')) self.gcode_title_label.setToolTip( _("Parameters used when creating the GCode in this tool.") ) grid_lay.addWidget(self.gcode_title_label, 0, 0, 1, 3) # Travel Z entry - travelz_lbl = QtWidgets.QLabel('%s:' % _("Travel Z")) + travelz_lbl = FCLabel('%s:' % _("Travel Z")) travelz_lbl.setToolTip( _("Height (Z) for travelling between the points.") ) @@ -810,7 +810,7 @@ class CalibrationUI: grid_lay.addWidget(self.travelz_entry, 1, 1, 1, 2) # Verification Z entry - verz_lbl = QtWidgets.QLabel('%s:' % _("Verification Z")) + verz_lbl = FCLabel('%s:' % _("Verification Z")) verz_lbl.setToolTip( _("Height (Z) for checking the point.") ) @@ -833,7 +833,7 @@ class CalibrationUI: grid_lay.addWidget(self.zeroz_cb, 3, 0, 1, 3) # Toolchange Z entry - toolchangez_lbl = QtWidgets.QLabel('%s:' % _("Toolchange Z")) + toolchangez_lbl = FCLabel('%s:' % _("Toolchange Z")) toolchangez_lbl.setToolTip( _("Height (Z) for mounting the verification probe.") ) @@ -847,7 +847,7 @@ class CalibrationUI: grid_lay.addWidget(self.toolchangez_entry, 4, 1, 1, 2) # Toolchange X-Y entry - toolchangexy_lbl = QtWidgets.QLabel('%s:' % _('Toolchange X-Y')) + toolchangexy_lbl = FCLabel('%s:' % _('Toolchange X-Y')) toolchangexy_lbl.setToolTip( _("Toolchange X,Y position.\n" "If no value is entered then the current\n" @@ -875,7 +875,7 @@ class CalibrationUI: grid_lay.addWidget(separator_line1, 6, 0, 1, 3) # Second point choice - second_point_lbl = QtWidgets.QLabel('%s:' % _("Second point")) + second_point_lbl = FCLabel('%s:' % _("Second point")) second_point_lbl.setToolTip( _("Second point in the Gcode verification can be:\n" "- top-left -> the user will align the PCB vertically\n" @@ -893,9 +893,9 @@ class CalibrationUI: separator_line1.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken) grid_lay.addWidget(separator_line1, 8, 0, 1, 3) - grid_lay.addWidget(QtWidgets.QLabel(''), 9, 0, 1, 3) + grid_lay.addWidget(FCLabel(''), 9, 0, 1, 3) - step_1 = QtWidgets.QLabel('%s' % _("STEP 1: Acquire Calibration Points")) + step_1 = FCLabel('%s' % _("STEP 1: Acquire Calibration Points")) step_1.setToolTip( _("Pick four points by clicking on canvas.\n" "Those four points should be in the four\n" @@ -903,7 +903,7 @@ class CalibrationUI: ) grid_lay.addWidget(step_1, 10, 0, 1, 3) - self.cal_source_lbl = QtWidgets.QLabel("%s:" % _("Source Type")) + self.cal_source_lbl = FCLabel("%s:" % _("Source Type")) self.cal_source_lbl.setToolTip(_("The source of calibration points.\n" "It can be:\n" "- Object -> click a hole geo for Excellon or a pad for Gerber\n" @@ -915,7 +915,7 @@ class CalibrationUI: grid_lay.addWidget(self.cal_source_lbl, 11, 0) grid_lay.addWidget(self.cal_source_radio, 11, 1, 1, 2) - self.obj_type_label = QtWidgets.QLabel("%s:" % _("Object Type")) + self.obj_type_label = FCLabel("%s:" % _("Object Type")) self.obj_type_combo = FCComboBox() self.obj_type_combo.addItem(_("Gerber")) @@ -932,7 +932,7 @@ class CalibrationUI: self.object_combo.setRootModelIndex(self.app.collection.index(1, 0, QtCore.QModelIndex())) self.object_combo.is_last = True - self.object_label = QtWidgets.QLabel("%s:" % _("Source object selection")) + self.object_label = FCLabel("%s:" % _("Source object selection")) self.object_label.setToolTip( _("FlatCAM Object to be used as a source for reference points.") ) @@ -940,7 +940,7 @@ class CalibrationUI: grid_lay.addWidget(self.object_label, 13, 0, 1, 3) grid_lay.addWidget(self.object_combo, 14, 0, 1, 3) - self.points_table_label = QtWidgets.QLabel('%s' % _('Calibration Points')) + self.points_table_label = FCLabel('%s' % _('Calibration Points')) self.points_table_label.setToolTip( _("Contain the expected calibration points and the\n" "ones measured.") @@ -970,7 +970,7 @@ class CalibrationUI: id_item_1.setFlags(flags) self.points_table.setItem(row, 0, id_item_1) # Tool name/id - self.bottom_left_coordx_lbl = QtWidgets.QLabel('%s' % _('Bot Left X')) + self.bottom_left_coordx_lbl = FCLabel('%s' % _('Bot Left X')) self.points_table.setCellWidget(row, 1, self.bottom_left_coordx_lbl) self.bottom_left_coordx_tgt = EvalEntry() self.points_table.setCellWidget(row, 2, self.bottom_left_coordx_tgt) @@ -979,7 +979,7 @@ class CalibrationUI: self.points_table.setCellWidget(row, 3, self.bottom_left_coordx_found) row += 1 - self.bottom_left_coordy_lbl = QtWidgets.QLabel('%s' % _('Bot Left Y')) + self.bottom_left_coordy_lbl = FCLabel('%s' % _('Bot Left Y')) self.points_table.setCellWidget(row, 1, self.bottom_left_coordy_lbl) self.bottom_left_coordy_tgt = EvalEntry() self.points_table.setCellWidget(row, 2, self.bottom_left_coordy_tgt) @@ -997,7 +997,7 @@ class CalibrationUI: id_item_2.setFlags(flags) self.points_table.setItem(row, 0, id_item_2) # Tool name/id - self.bottom_right_coordx_lbl = QtWidgets.QLabel('%s' % _('Bot Right X')) + self.bottom_right_coordx_lbl = FCLabel('%s' % _('Bot Right X')) self.points_table.setCellWidget(row, 1, self.bottom_right_coordx_lbl) self.bottom_right_coordx_tgt = EvalEntry() self.points_table.setCellWidget(row, 2, self.bottom_right_coordx_tgt) @@ -1007,7 +1007,7 @@ class CalibrationUI: row += 1 - self.bottom_right_coordy_lbl = QtWidgets.QLabel('%s' % _('Bot Right Y')) + self.bottom_right_coordy_lbl = FCLabel('%s' % _('Bot Right Y')) self.points_table.setCellWidget(row, 1, self.bottom_right_coordy_lbl) self.bottom_right_coordy_tgt = EvalEntry() self.points_table.setCellWidget(row, 2, self.bottom_right_coordy_tgt) @@ -1022,7 +1022,7 @@ class CalibrationUI: id_item_3.setFlags(flags) self.points_table.setItem(row, 0, id_item_3) # Tool name/id - self.top_left_coordx_lbl = QtWidgets.QLabel('%s' % _('Top Left X')) + self.top_left_coordx_lbl = FCLabel('%s' % _('Top Left X')) self.points_table.setCellWidget(row, 1, self.top_left_coordx_lbl) self.top_left_coordx_tgt = EvalEntry() self.points_table.setCellWidget(row, 2, self.top_left_coordx_tgt) @@ -1031,7 +1031,7 @@ class CalibrationUI: self.points_table.setCellWidget(row, 3, self.top_left_coordx_found) row += 1 - self.top_left_coordy_lbl = QtWidgets.QLabel('%s' % _('Top Left Y')) + self.top_left_coordy_lbl = FCLabel('%s' % _('Top Left Y')) self.points_table.setCellWidget(row, 1, self.top_left_coordy_lbl) self.top_left_coordy_tgt = EvalEntry() self.points_table.setCellWidget(row, 2, self.top_left_coordy_tgt) @@ -1046,7 +1046,7 @@ class CalibrationUI: id_item_4.setFlags(flags) self.points_table.setItem(row, 0, id_item_4) # Tool name/id - self.top_right_coordx_lbl = QtWidgets.QLabel('%s' % _('Top Right X')) + self.top_right_coordx_lbl = FCLabel('%s' % _('Top Right X')) self.points_table.setCellWidget(row, 1, self.top_right_coordx_lbl) self.top_right_coordx_tgt = EvalEntry() self.points_table.setCellWidget(row, 2, self.top_right_coordx_tgt) @@ -1056,7 +1056,7 @@ class CalibrationUI: self.points_table.setCellWidget(row, 3, self.top_right_coordx_found) row += 1 - self.top_right_coordy_lbl = QtWidgets.QLabel('%s' % _('Top Right Y')) + self.top_right_coordy_lbl = FCLabel('%s' % _('Top Right Y')) self.points_table.setCellWidget(row, 1, self.top_right_coordy_lbl) self.top_right_coordy_tgt = EvalEntry() self.points_table.setCellWidget(row, 2, self.top_right_coordy_tgt) @@ -1109,10 +1109,10 @@ class CalibrationUI: separator_line.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken) grid_lay.addWidget(separator_line, 18, 0, 1, 3) - grid_lay.addWidget(QtWidgets.QLabel(''), 19, 0) + grid_lay.addWidget(FCLabel(''), 19, 0) # STEP 2 # - step_2 = QtWidgets.QLabel('%s' % _("STEP 2: Verification GCode")) + step_2 = FCLabel('%s' % _("STEP 2: Verification GCode")) step_2.setToolTip( _("Generate GCode file to locate and align the PCB by using\n" "the four points acquired above.\n" @@ -1148,10 +1148,10 @@ class CalibrationUI: separator_line1.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken) grid_lay.addWidget(separator_line1, 22, 0, 1, 3) - grid_lay.addWidget(QtWidgets.QLabel(''), 23, 0, 1, 3) + grid_lay.addWidget(FCLabel(''), 23, 0, 1, 3) # STEP 3 # - step_3 = QtWidgets.QLabel('%s' % _("STEP 3: Adjustments")) + step_3 = FCLabel('%s' % _("STEP 3: Adjustments")) step_3.setToolTip( _("Calculate Scale and Skew factors based on the differences (delta)\n" "found when checking the PCB pattern. The differences must be filled\n" @@ -1179,17 +1179,17 @@ class CalibrationUI: separator_line1.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken) grid_lay.addWidget(separator_line1, 26, 0, 1, 3) - grid_lay.addWidget(QtWidgets.QLabel(''), 27, 0, 1, 3) + grid_lay.addWidget(FCLabel(''), 27, 0, 1, 3) # STEP 4 # - step_4 = QtWidgets.QLabel('%s' % _("STEP 4: Adjusted GCode")) + step_4 = FCLabel('%s' % _("STEP 4: Adjusted GCode")) step_4.setToolTip( _("Generate verification GCode file adjusted with\n" "the factors above.") ) grid_lay.addWidget(step_4, 28, 0, 1, 3) - self.scalex_label = QtWidgets.QLabel(_("Scale Factor X:")) + self.scalex_label = FCLabel(_("Scale Factor X:")) self.scalex_label.setToolTip( _("Factor for Scale action over X axis.") ) @@ -1201,7 +1201,7 @@ class CalibrationUI: grid_lay.addWidget(self.scalex_label, 29, 0) grid_lay.addWidget(self.scalex_entry, 29, 1, 1, 2) - self.scaley_label = QtWidgets.QLabel(_("Scale Factor Y:")) + self.scaley_label = FCLabel(_("Scale Factor Y:")) self.scaley_label.setToolTip( _("Factor for Scale action over Y axis.") ) @@ -1225,7 +1225,7 @@ class CalibrationUI: """) grid_lay.addWidget(self.scale_button, 31, 0, 1, 3) - self.skewx_label = QtWidgets.QLabel(_("Skew Angle X:")) + self.skewx_label = FCLabel(_("Skew Angle X:")) self.skewx_label.setToolTip( _("Angle, in degrees.\n" "Float number between -360 and 359.") @@ -1238,7 +1238,7 @@ class CalibrationUI: grid_lay.addWidget(self.skewx_label, 32, 0) grid_lay.addWidget(self.skewx_entry, 32, 1, 1, 2) - self.skewy_label = QtWidgets.QLabel(_("Skew Angle Y:")) + self.skewy_label = FCLabel(_("Skew Angle Y:")) self.skewy_label.setToolTip( _("Angle, in degrees.\n" "Float number between -360 and 359.") @@ -1263,14 +1263,14 @@ class CalibrationUI: """) grid_lay.addWidget(self.skew_button, 34, 0, 1, 3) - # final_factors_lbl = QtWidgets.QLabel('%s' % _("Final Factors")) + # final_factors_lbl = FCLabel('%s' % _("Final Factors")) # final_factors_lbl.setToolTip( # _("Generate verification GCode file adjusted with\n" # "the factors above.") # ) # grid_lay.addWidget(final_factors_lbl, 27, 0, 1, 3) # - # self.fin_scalex_label = QtWidgets.QLabel(_("Scale Factor X:")) + # self.fin_scalex_label = FCLabel(_("Scale Factor X:")) # self.fin_scalex_label.setToolTip( # _("Final factor for Scale action over X axis.") # ) @@ -1282,7 +1282,7 @@ class CalibrationUI: # grid_lay.addWidget(self.fin_scalex_label, 28, 0) # grid_lay.addWidget(self.fin_scalex_entry, 28, 1, 1, 2) # - # self.fin_scaley_label = QtWidgets.QLabel(_("Scale Factor Y:")) + # self.fin_scaley_label = FCLabel(_("Scale Factor Y:")) # self.fin_scaley_label.setToolTip( # _("Final factor for Scale action over Y axis.") # ) @@ -1294,7 +1294,7 @@ class CalibrationUI: # grid_lay.addWidget(self.fin_scaley_label, 29, 0) # grid_lay.addWidget(self.fin_scaley_entry, 29, 1, 1, 2) # - # self.fin_skewx_label = QtWidgets.QLabel(_("Skew Angle X:")) + # self.fin_skewx_label = FCLabel(_("Skew Angle X:")) # self.fin_skewx_label.setToolTip( # _("Final value for angle for Skew action, in degrees.\n" # "Float number between -360 and 359.") @@ -1307,7 +1307,7 @@ class CalibrationUI: # grid_lay.addWidget(self.fin_skewx_label, 30, 0) # grid_lay.addWidget(self.fin_skewx_entry, 30, 1, 1, 2) # - # self.fin_skewy_label = QtWidgets.QLabel(_("Skew Angle Y:")) + # self.fin_skewy_label = FCLabel(_("Skew Angle Y:")) # self.fin_skewy_label.setToolTip( # _("Final value for angle for Skew action, in degrees.\n" # "Float number between -360 and 359.") @@ -1342,10 +1342,10 @@ class CalibrationUI: separator_line1.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken) grid_lay.addWidget(separator_line1, 43, 0, 1, 3) - grid_lay.addWidget(QtWidgets.QLabel(''), 44, 0, 1, 3) + grid_lay.addWidget(FCLabel(''), 44, 0, 1, 3) # STEP 5 # - step_5 = QtWidgets.QLabel('%s' % _("STEP 5: Calibrate FlatCAM Objects")) + step_5 = FCLabel('%s' % _("STEP 5: Calibrate FlatCAM Objects")) step_5.setToolTip( _("Adjust the FlatCAM objects\n" "with the factors determined and verified above.") @@ -1359,7 +1359,7 @@ class CalibrationUI: 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 = FCLabel("%s:" % _("Adjusted object type")) self.adj_object_type_label.setToolTip(_("Type of the Application Object to be adjusted.")) grid_lay.addWidget(self.adj_object_type_label, 46, 0, 1, 3) @@ -1373,7 +1373,7 @@ class CalibrationUI: _("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 = FCLabel("%s:" % _("Adjusted object selection")) self.adj_object_label.setToolTip( _("The Application Object to be adjusted.") ) @@ -1400,7 +1400,7 @@ class CalibrationUI: separator_line2.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken) grid_lay.addWidget(separator_line2, 51, 0, 1, 3) - grid_lay.addWidget(QtWidgets.QLabel(''), 52, 0, 1, 3) + grid_lay.addWidget(FCLabel(''), 52, 0, 1, 3) self.layout.addStretch() diff --git a/appPlugins/ToolDrilling.py b/appPlugins/ToolDrilling.py index 54f3ad00..fecd7a6b 100644 --- a/appPlugins/ToolDrilling.py +++ b/appPlugins/ToolDrilling.py @@ -2264,7 +2264,7 @@ class DrillingUI: self.tools_box.addLayout(self.title_box) # ## Title - title_label = QtWidgets.QLabel("%s" % name) + title_label = FCLabel("%s" % name) title_label.setStyleSheet(""" QLabel { @@ -2297,7 +2297,7 @@ class DrillingUI: grid0.setColumnStretch(1, 1) self.tools_box.addLayout(grid0) - self.obj_combo_label = QtWidgets.QLabel('%s:' % _("EXCELLON")) + self.obj_combo_label = FCLabel('%s:' % _("EXCELLON")) self.obj_combo_label.setToolTip( _("Excellon object for drilling/milling operation.") ) @@ -2347,7 +2347,7 @@ class DrillingUI: "milling them with an endmill bit.")) # Tool order - self.order_label = QtWidgets.QLabel('%s:' % _('Tool order')) + self.order_label = FCLabel('%s:' % _('Tool order')) self.order_label.setToolTip(_("This set the way that the tools in the tools table are used.\n" "'No' --> means that the used order is the one in the tool table\n" "'Forward' --> means that the tools will be ordered from small to big\n" @@ -2380,7 +2380,7 @@ class DrillingUI: # ########################################################### # ############# Create CNC Job ############################## # ########################################################### - self.tool_data_label = QtWidgets.QLabel( + self.tool_data_label = FCLabel( "%s: %s %d" % (_('Parameters for'), _("Tool"), int(1))) self.tool_data_label.setToolTip( _( @@ -2408,7 +2408,7 @@ class DrillingUI: self.exc_tools_box.addLayout(self.grid1) # Cut Z - self.cutzlabel = QtWidgets.QLabel('%s:' % _('Cut Z')) + self.cutzlabel = FCLabel('%s:' % _('Cut Z')) self.cutzlabel.setToolTip( _("Drill depth (negative)\n" "below the copper surface.") @@ -2450,7 +2450,7 @@ class DrillingUI: self.grid1.addWidget(self.maxdepth_entry, 5, 1) # Travel Z (z_move) - self.travelzlabel = QtWidgets.QLabel('%s:' % _('Travel Z')) + self.travelzlabel = FCLabel('%s:' % _('Travel Z')) self.travelzlabel.setToolTip( _("Tool height when travelling\n" "across the XY plane.") @@ -2467,7 +2467,7 @@ class DrillingUI: self.grid1.addWidget(self.travelz_entry, 6, 1) # Excellon Feedrate Z - self.frzlabel = QtWidgets.QLabel('%s:' % _('Feedrate Z')) + self.frzlabel = FCLabel('%s:' % _('Feedrate Z')) self.frzlabel.setToolTip( _("Tool speed while drilling\n" "(in units per minute).\n" @@ -2484,7 +2484,7 @@ class DrillingUI: self.grid1.addWidget(self.feedrate_z_entry, 14, 1) # Excellon Rapid Feedrate - self.feedrate_rapid_label = QtWidgets.QLabel('%s:' % _('Feedrate Rapids')) + self.feedrate_rapid_label = FCLabel('%s:' % _('Feedrate Rapids')) self.feedrate_rapid_label.setToolTip( _("Tool speed while drilling\n" "(in units per minute).\n" @@ -2506,7 +2506,7 @@ class DrillingUI: self.feedrate_rapid_entry.hide() # Spindlespeed - self.spindle_label = QtWidgets.QLabel('%s:' % _('Spindle speed')) + self.spindle_label = FCLabel('%s:' % _('Spindle speed')) self.spindle_label.setToolTip( _("Speed of the spindle\n" "in RPM (optional)") @@ -2545,7 +2545,7 @@ class DrillingUI: self.ois_dwell = OptionalInputSection(self.dwell_cb, [self.dwelltime_entry]) # Tool Offset - self.tool_offset_label = QtWidgets.QLabel('%s:' % _('Offset Z')) + self.tool_offset_label = FCLabel('%s:' % _('Offset Z')) self.tool_offset_label.setToolTip( _("Some drill bits (the larger ones) need to drill deeper\n" "to create the desired exit hole diameter due of the tip shape.\n" @@ -2569,7 +2569,7 @@ class DrillingUI: self.grid1.addWidget(self.drill_slots_cb, 27, 0, 1, 2) # Drill Overlap - self.drill_overlap_label = QtWidgets.QLabel('%s:' % _('Overlap')) + self.drill_overlap_label = FCLabel('%s:' % _('Overlap')) self.drill_overlap_label.setToolTip( _("How much (percentage) of the tool diameter to overlap previous drill hole.") ) @@ -2635,7 +2635,7 @@ class DrillingUI: self.grid3.addWidget(separator_line2, 2, 0, 1, 2) # General Parameters - self.gen_param_label = QtWidgets.QLabel('%s' % _("Common Parameters")) + self.gen_param_label = FCLabel('%s' % _("Common Parameters")) self.gen_param_label.setToolTip( _("Parameters that are common for all tools.") ) @@ -2683,7 +2683,7 @@ class DrillingUI: ]) # Start move Z: - self.estartz_label = QtWidgets.QLabel('%s:' % _("Start Z")) + self.estartz_label = FCLabel('%s:' % _("Start Z")) self.estartz_label.setToolTip( _("Height of the tool just after starting the work.\n" "Delete the value if you don't need this feature.") @@ -2695,7 +2695,7 @@ class DrillingUI: self.grid3.addWidget(self.estartz_entry, 9, 1) # End move Z: - self.endz_label = QtWidgets.QLabel('%s:' % _("End move Z")) + self.endz_label = FCLabel('%s:' % _("End move Z")) self.endz_label.setToolTip( _("Height of the tool after\n" "the last move at the end of the job.") @@ -2711,7 +2711,7 @@ class DrillingUI: self.grid3.addWidget(self.endz_entry, 11, 1) # End Move X,Y - self.endmove_xy_label = QtWidgets.QLabel('%s:' % _('End move X,Y')) + self.endmove_xy_label = FCLabel('%s:' % _('End move X,Y')) self.endmove_xy_label.setToolTip( _("End move X,Y position. In format (x,y).\n" "If no value is entered then there is no move\n" @@ -2725,7 +2725,7 @@ class DrillingUI: self.grid3.addWidget(self.endxy_entry, 12, 1) # Probe depth - self.pdepth_label = QtWidgets.QLabel('%s:' % _("Probe Z depth")) + self.pdepth_label = FCLabel('%s:' % _("Probe Z depth")) self.pdepth_label.setToolTip( _("The maximum depth that the probe is allowed\n" "to probe. Negative value, in current units.") @@ -2744,7 +2744,7 @@ class DrillingUI: self.pdepth_entry.setVisible(False) # Probe feedrate - self.feedrate_probe_label = QtWidgets.QLabel('%s:' % _("Feedrate Probe")) + self.feedrate_probe_label = FCLabel('%s:' % _("Feedrate Probe")) self.feedrate_probe_label.setToolTip( _("The feedrate used while the probe is probing.") ) @@ -2762,7 +2762,7 @@ class DrillingUI: self.feedrate_probe_entry.setVisible(False) # Preprocessor Excellon selection - pp_excellon_label = QtWidgets.QLabel('%s:' % _("Preprocessor")) + pp_excellon_label = FCLabel('%s:' % _("Preprocessor")) pp_excellon_label.setToolTip( _("The preprocessor JSON file that dictates\n" "Gcode output for Excellon Objects.") diff --git a/appPlugins/ToolEtchCompensation.py b/appPlugins/ToolEtchCompensation.py index 587b8314..2dda8278 100644 --- a/appPlugins/ToolEtchCompensation.py +++ b/appPlugins/ToolEtchCompensation.py @@ -9,7 +9,7 @@ from PyQt6 import QtWidgets, QtCore, QtGui from appTool import AppTool from appGUI.GUIElements import FCButton, FCDoubleSpinner, RadioSet, FCComboBox, NumericalEvalEntry, FCEntry, \ - VerticalScrollArea, FCGridLayout + VerticalScrollArea, FCGridLayout, FCLabel from shapely.ops import unary_union @@ -317,7 +317,7 @@ class EtchUI: self.tools_frame.setLayout(self.tools_box) # Title - title_label = QtWidgets.QLabel("%s" % self.pluginName) + title_label = FCLabel("%s" % self.pluginName) title_label.setStyleSheet(""" QLabel { @@ -333,7 +333,7 @@ class EtchUI: grid0.setColumnStretch(1, 1) self.tools_box.addLayout(grid0) - grid0.addWidget(QtWidgets.QLabel(''), 0, 0, 1, 2) + grid0.addWidget(FCLabel(''), 0, 0, 1, 2) # Target Gerber Object self.gerber_combo = FCComboBox() @@ -342,7 +342,7 @@ class EtchUI: self.gerber_combo.is_last = True self.gerber_combo.obj_type = "Gerber" - self.gerber_label = QtWidgets.QLabel('%s:' % _("GERBER")) + self.gerber_label = FCLabel('%s:' % _("GERBER")) self.gerber_label.setToolTip( _("Gerber object that will be inverted.") ) @@ -355,13 +355,13 @@ class EtchUI: separator_line.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken) grid0.addWidget(separator_line, 3, 0, 1, 2) - self.util_label = QtWidgets.QLabel("%s:" % _("Utilities")) + self.util_label = FCLabel("%s:" % _("Utilities")) self.util_label.setToolTip('%s.' % _("Conversion utilities")) grid0.addWidget(self.util_label, 4, 0, 1, 2) # Oz to um conversion - self.oz_um_label = QtWidgets.QLabel('%s:' % _('Oz to Microns')) + self.oz_um_label = FCLabel('%s:' % _('Oz to Microns')) self.oz_um_label.setToolTip( _("Will convert from oz thickness to microns [um].\n" "Can use formulas with operators: /, *, +, -, %, .\n" @@ -382,7 +382,7 @@ class EtchUI: grid0.addLayout(hlay_1, 6, 0, 1, 2) # Mils to um conversion - self.mils_um_label = QtWidgets.QLabel('%s:' % _('Mils to Microns')) + self.mils_um_label = FCLabel('%s:' % _('Mils to Microns')) self.mils_um_label.setToolTip( _("Will convert from mils to microns [um].\n" "Can use formulas with operators: /, *, +, -, %, .\n" @@ -407,13 +407,13 @@ class EtchUI: separator_line.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken) grid0.addWidget(separator_line, 9, 0, 1, 2) - self.param_label = QtWidgets.QLabel("%s:" % _("Parameters")) + self.param_label = FCLabel("%s:" % _("Parameters")) self.param_label.setToolTip('%s.' % _("Parameters for this tool")) grid0.addWidget(self.param_label, 10, 0, 1, 2) # Thickness - self.thick_label = QtWidgets.QLabel('%s:' % _('Copper Thickness')) + self.thick_label = FCLabel('%s:' % _('Copper Thickness')) self.thick_label.setToolTip( _("The thickness of the copper foil.\n" "In microns [um].") @@ -425,7 +425,7 @@ class EtchUI: grid0.addWidget(self.thick_label, 12, 0) grid0.addWidget(self.thick_entry, 12, 1) - self.ratio_label = QtWidgets.QLabel('%s:' % _("Ratio")) + self.ratio_label = FCLabel('%s:' % _("Ratio")) self.ratio_label.setToolTip( _("The ratio of lateral etch versus depth etch.\n" "Can be:\n" @@ -442,7 +442,7 @@ class EtchUI: grid0.addWidget(self.ratio_radio, 16, 0, 1, 2) # Etchants - self.etchants_label = QtWidgets.QLabel('%s:' % _('Etchants')) + self.etchants_label = FCLabel('%s:' % _('Etchants')) self.etchants_label.setToolTip( _("A list of etchants.") ) @@ -453,7 +453,7 @@ class EtchUI: grid0.addWidget(self.etchants_combo, 18, 1) # Etch Factor - self.factor_label = QtWidgets.QLabel('%s:' % _('Etch Factor')) + self.factor_label = FCLabel('%s:' % _('Etch Factor')) self.factor_label.setToolTip( _("The ratio between depth etch and lateral etch .\n" "Accepts real numbers and formulas using the operators: /,*,+,-,%") @@ -465,7 +465,7 @@ class EtchUI: grid0.addWidget(self.factor_entry, 19, 1) # Manual Offset - self.offset_label = QtWidgets.QLabel('%s:' % _('Offset')) + self.offset_label = FCLabel('%s:' % _('Offset')) self.offset_label.setToolTip( _("Value with which to increase or decrease (buffer)\n" "the copper features. In microns [um].") diff --git a/appPlugins/ToolQRCode.py b/appPlugins/ToolQRCode.py index f9d6f6c8..47928ede 100644 --- a/appPlugins/ToolQRCode.py +++ b/appPlugins/ToolQRCode.py @@ -10,7 +10,7 @@ from PyQt6.QtCore import Qt from appTool import AppTool from appGUI.GUIElements import RadioSet, FCTextArea, FCSpinner, FCEntry, FCCheckBox, FCComboBox, FCFileSaveDialog, \ - VerticalScrollArea, FCGridLayout + VerticalScrollArea, FCGridLayout, FCLabel from appParsers.ParseSVG import * from shapely.geometry.base import * @@ -736,7 +736,7 @@ class QRcodeUI: self.layout.addLayout(self.title_box) # ## Title - title_label = QtWidgets.QLabel("%s" % self.pluginName) + title_label = FCLabel("%s" % self.pluginName) title_label.setStyleSheet(""" QLabel { @@ -758,7 +758,7 @@ class QRcodeUI: self.level.setCheckable(True) self.title_box.addWidget(self.level) - self.layout.addWidget(QtWidgets.QLabel('')) + self.layout.addWidget(FCLabel('')) # ## Grid Layout i_grid_lay = FCGridLayout(v_spacing=5, h_spacing=3) @@ -772,7 +772,7 @@ class QRcodeUI: self.grb_object_combo.is_last = True self.grb_object_combo.obj_type = "Gerber" - self.grbobj_label = QtWidgets.QLabel("%s:" % _("GERBER")) + self.grbobj_label = FCLabel("%s:" % _("GERBER")) self.grbobj_label.setToolTip( _("Gerber Object to which the QRCode will be added.") ) @@ -786,7 +786,7 @@ class QRcodeUI: i_grid_lay.addWidget(separator_line, 2, 0, 1, 2) # Text box - self.text_label = QtWidgets.QLabel('%s:' % _("QRCode Data")) + self.text_label = FCLabel('%s:' % _("QRCode Data")) self.text_label.setToolTip( _("QRCode Data. Alphanumeric text to be encoded in the QRCode.") ) @@ -808,14 +808,14 @@ class QRcodeUI: grid_lay.setColumnStretch(0, 0) grid_lay.setColumnStretch(1, 1) - self.qrcode_label = QtWidgets.QLabel('%s' % _('Parameters')) + self.qrcode_label = FCLabel('%s' % _('Parameters')) self.qrcode_label.setToolTip( _("The parameters used to shape the QRCode.") ) grid_lay.addWidget(self.qrcode_label, 0, 0, 1, 2) # VERSION # - self.version_label = QtWidgets.QLabel('%s:' % _("Version")) + self.version_label = FCLabel('%s:' % _("Version")) self.version_label.setToolTip( _("QRCode version can have values from 1 (21x21 boxes)\n" "to 40 (177x177 boxes).") @@ -828,7 +828,7 @@ class QRcodeUI: grid_lay.addWidget(self.version_entry, 2, 1) # ERROR CORRECTION # - self.error_label = QtWidgets.QLabel('%s:' % _("Error correction")) + self.error_label = FCLabel('%s:' % _("Error correction")) self.error_label.setToolTip( _("Parameter that controls the error correction used for the QR Code.\n" "L = maximum 7%% errors can be corrected\n" @@ -851,7 +851,7 @@ class QRcodeUI: grid_lay.addWidget(self.error_radio, 4, 1) # BOX SIZE # - self.bsize_label = QtWidgets.QLabel('%s:' % _("Box Size")) + self.bsize_label = FCLabel('%s:' % _("Box Size")) self.bsize_label.setToolTip( _("Box size control the overall size of the QRcode\n" "by adjusting the size of each box in the code.") @@ -864,7 +864,7 @@ class QRcodeUI: grid_lay.addWidget(self.bsize_entry, 6, 1) # BORDER SIZE # - self.border_size_label = QtWidgets.QLabel('%s:' % _("Border Size")) + self.border_size_label = FCLabel('%s:' % _("Border Size")) self.border_size_label.setToolTip( _("Size of the QRCode border. How many boxes thick is the border.\n" "Default value is 4. The width of the clearance around the QRCode.") @@ -877,7 +877,7 @@ class QRcodeUI: grid_lay.addWidget(self.border_size_entry, 8, 1) # POLARITY CHOICE # - self.pol_label = QtWidgets.QLabel('%s:' % _("Polarity")) + self.pol_label = FCLabel('%s:' % _("Polarity")) self.pol_label.setToolTip( _("Choose the polarity of the QRCode.\n" "It can be drawn in a negative way (squares are clear)\n" @@ -895,7 +895,7 @@ class QRcodeUI: grid_lay.addWidget(self.pol_radio, 10, 1) # BOUNDING BOX TYPE # - self.bb_label = QtWidgets.QLabel('%s:' % _("Bounding Box")) + self.bb_label = FCLabel('%s:' % _("Bounding Box")) self.bb_label.setToolTip( _("The bounding box, meaning the empty space that surrounds\n" "the QRCode geometry, can have a rounded or a square shape.") @@ -936,7 +936,7 @@ class QRcodeUI: self.export_frame.hide() # FILL COLOR # - self.fill_color_label = QtWidgets.QLabel('%s:' % _('Fill Color')) + self.fill_color_label = FCLabel('%s:' % _('Fill Color')) self.fill_color_label.setToolTip( _("Set the QRCode fill color (squares color).") ) @@ -960,7 +960,7 @@ class QRcodeUI: self.export_lay.addWidget(self.transparent_cb, 1, 0, 1, 2) # BACK COLOR # - self.back_color_label = QtWidgets.QLabel('%s:' % _('Back Color')) + self.back_color_label = FCLabel('%s:' % _('Back Color')) self.back_color_label.setToolTip( _("Set the QRCode background color.") ) diff --git a/appPlugins/ToolReport.py b/appPlugins/ToolReport.py index b4cc273d..0a104cd8 100644 --- a/appPlugins/ToolReport.py +++ b/appPlugins/ToolReport.py @@ -7,7 +7,7 @@ from PyQt6 import QtGui, QtCore, QtWidgets from appTool import AppTool -from appGUI.GUIElements import FCTree, VerticalScrollArea +from appGUI.GUIElements import FCTree, VerticalScrollArea, FCLabel from shapely.geometry import MultiPolygon, Polygon from shapely.ops import unary_union @@ -49,7 +49,7 @@ class ObjectReport(AppTool): self.info_frame.setLayout(self.info_box) # ## Title - # title_label = QtWidgets.QLabel("%s" % self.pluginName) + # title_label = FCLabel("%s" % self.pluginName) # title_label.setStyleSheet(""" # QLabel # { diff --git a/appPlugins/ToolSolderPaste.py b/appPlugins/ToolSolderPaste.py index cc19bd75..a91a8e70 100644 --- a/appPlugins/ToolSolderPaste.py +++ b/appPlugins/ToolSolderPaste.py @@ -10,7 +10,7 @@ from PyQt6 import QtGui, QtCore, QtWidgets from appTool import AppTool from appCommon.Common import LoudDict from appGUI.GUIElements import FCComboBox, FCEntry, FCTable, FCDoubleSpinner, FCSpinner, FCFileSaveDialog, \ - FCInputSpinner, FCButton, VerticalScrollArea, FCGridLayout + FCInputSpinner, FCButton, VerticalScrollArea, FCGridLayout, FCLabel from camlib import distance from appEditors.AppTextEditor import AppTextEditor @@ -1178,7 +1178,7 @@ class SolderUI: self.layout = layout # ## Title - title_label = QtWidgets.QLabel("%s" % self.pluginName) + title_label = FCLabel("%s" % self.pluginName) title_label.setStyleSheet(""" QLabel { @@ -1198,7 +1198,7 @@ class SolderUI: self.layout.addLayout(obj_form_layout) # ## Gerber Object to be used for solderpaste dispensing - self.object_label = QtWidgets.QLabel('%s:' % _("GERBER")) + self.object_label = FCLabel('%s:' % _("GERBER")) self.object_label.setToolTip(_("Gerber Solderpaste object.")) self.obj_combo = FCComboBox(callback=solder_class.on_rmb_combo) @@ -1216,7 +1216,7 @@ class SolderUI: obj_form_layout.addWidget(separator_line, 4, 0, 1, 2) # ### Tools ## ## - self.tools_table_label = QtWidgets.QLabel('%s' % _('Tools Table')) + self.tools_table_label = FCLabel('%s' % _('Tools Table')) self.tools_table_label.setToolTip( _("Tools pool from which the algorithm\n" "will pick the ones used for dispensing solder paste.") @@ -1249,7 +1249,7 @@ class SolderUI: grid0.setColumnStretch(1, 1) self.layout.addLayout(grid0) - self.addtool_entry_lbl = QtWidgets.QLabel('%s:' % _('New Tool')) + self.addtool_entry_lbl = FCLabel('%s:' % _('New Tool')) self.addtool_entry_lbl.setToolTip( _("Diameter for the new tool to add in the Tool Table") ) @@ -1294,7 +1294,7 @@ class SolderUI: self.param_grid = FCGridLayout(v_spacing=5, h_spacing=3) self.tool_box.addLayout(self.param_grid) - step1_lbl = QtWidgets.QLabel("%s:" % _('Parameters')) + step1_lbl = FCLabel("%s:" % _('Parameters')) self.param_grid.addWidget(step1_lbl, 0, 0) # Z dispense start @@ -1303,7 +1303,7 @@ class SolderUI: self.z_start_entry.set_precision(self.decimals) self.z_start_entry.setSingleStep(0.1) - self.z_start_label = QtWidgets.QLabel('%s:' % _("Z Dispense Start")) + self.z_start_label = FCLabel('%s:' % _("Z Dispense Start")) self.z_start_label.setToolTip( _("The height (Z) when solder paste dispensing starts.") ) @@ -1316,7 +1316,7 @@ class SolderUI: self.z_dispense_entry.set_precision(self.decimals) self.z_dispense_entry.setSingleStep(0.1) - self.z_dispense_label = QtWidgets.QLabel('%s:' % _("Z Dispense")) + self.z_dispense_label = FCLabel('%s:' % _("Z Dispense")) self.z_dispense_label.setToolTip( _("The height (Z) when doing solder paste dispensing.") ) @@ -1329,7 +1329,7 @@ class SolderUI: self.z_stop_entry.set_precision(self.decimals) self.z_stop_entry.setSingleStep(0.1) - self.z_stop_label = QtWidgets.QLabel('%s:' % _("Z Dispense Stop")) + self.z_stop_label = FCLabel('%s:' % _("Z Dispense Stop")) self.z_stop_label.setToolTip( _("The height (Z) when solder paste dispensing stops.") ) @@ -1347,7 +1347,7 @@ class SolderUI: self.z_travel_entry.set_precision(self.decimals) self.z_travel_entry.setSingleStep(0.1) - self.z_travel_label = QtWidgets.QLabel('%s:' % _("Travel Z")) + self.z_travel_label = FCLabel('%s:' % _("Travel Z")) self.z_travel_label.setToolTip( _("The height (Z) for travel between pads\n" "(without dispensing solder paste).") @@ -1361,7 +1361,7 @@ class SolderUI: self.z_toolchange_entry.set_precision(self.decimals) self.z_toolchange_entry.setSingleStep(0.1) - self.z_toolchange_label = QtWidgets.QLabel('%s:' % _("Tool change Z")) + self.z_toolchange_label = FCLabel('%s:' % _("Tool change Z")) self.z_toolchange_label.setToolTip( _("The height (Z) for tool (nozzle) change.") ) @@ -1370,7 +1370,7 @@ class SolderUI: # X,Y Toolchange location self.xy_toolchange_entry = FCEntry() - self.xy_toolchange_label = QtWidgets.QLabel('%s:' % _("Toolchange X-Y")) + self.xy_toolchange_label = FCLabel('%s:' % _("Toolchange X-Y")) self.xy_toolchange_label.setToolTip( _("The X,Y location for tool (nozzle) change.\n" "The format is (x, y) where x and y are real numbers.") @@ -1389,7 +1389,7 @@ class SolderUI: self.frxy_entry.set_precision(self.decimals) self.frxy_entry.setSingleStep(0.1) - self.frxy_label = QtWidgets.QLabel('%s:' % _("Feedrate X-Y")) + self.frxy_label = FCLabel('%s:' % _("Feedrate X-Y")) self.frxy_label.setToolTip( _("Feedrate (speed) while moving on the X-Y plane.") ) @@ -1402,7 +1402,7 @@ class SolderUI: self.frz_entry.set_precision(self.decimals) self.frz_entry.setSingleStep(0.1) - self.frz_label = QtWidgets.QLabel('%s:' % _("Feedrate Z")) + self.frz_label = FCLabel('%s:' % _("Feedrate Z")) self.frz_label.setToolTip( _("Feedrate (speed) while moving vertically\n" "(on Z plane).") @@ -1416,7 +1416,7 @@ class SolderUI: self.frz_dispense_entry.set_precision(self.decimals) self.frz_dispense_entry.setSingleStep(0.1) - self.frz_dispense_label = QtWidgets.QLabel('%s:' % _("Feedrate Z Dispense")) + self.frz_dispense_label = FCLabel('%s:' % _("Feedrate Z Dispense")) self.frz_dispense_label.setToolTip( _("Feedrate (speed) while moving up vertically\n" "to Dispense position (on Z plane).") @@ -1434,7 +1434,7 @@ class SolderUI: self.speedfwd_entry.set_range(0, 999999) self.speedfwd_entry.set_step(1000) - self.speedfwd_label = QtWidgets.QLabel('%s:' % _("Spindle Speed FWD")) + self.speedfwd_label = FCLabel('%s:' % _("Spindle Speed FWD")) self.speedfwd_label.setToolTip( _("The dispenser speed while pushing solder paste\n" "through the dispenser nozzle.") @@ -1448,7 +1448,7 @@ class SolderUI: self.dwellfwd_entry.set_precision(self.decimals) self.dwellfwd_entry.setSingleStep(0.1) - self.dwellfwd_label = QtWidgets.QLabel('%s:' % _("Dwell FWD")) + self.dwellfwd_label = FCLabel('%s:' % _("Dwell FWD")) self.dwellfwd_label.setToolTip( _("Pause after solder dispensing.") ) @@ -1460,7 +1460,7 @@ class SolderUI: self.speedrev_entry.set_range(0, 999999) self.speedrev_entry.set_step(1000) - self.speedrev_label = QtWidgets.QLabel('%s:' % _("Spindle Speed REV")) + self.speedrev_label = FCLabel('%s:' % _("Spindle Speed REV")) self.speedrev_label.setToolTip( _("The dispenser speed while retracting solder paste\n" "through the dispenser nozzle.") @@ -1474,7 +1474,7 @@ class SolderUI: self.dwellrev_entry.set_precision(self.decimals) self.dwellrev_entry.setSingleStep(0.1) - self.dwellrev_label = QtWidgets.QLabel('%s:' % _("Dwell REV")) + self.dwellrev_label = FCLabel('%s:' % _("Dwell REV")) self.dwellrev_label.setToolTip( _("Pause after solder paste dispenser retracted,\n" "to allow pressure equilibrium.") @@ -1488,7 +1488,7 @@ class SolderUI: self.param_grid.addWidget(separator_line, 27, 0, 1, 2) # Preprocessors - pp_label = QtWidgets.QLabel('%s:' % _('Preprocessor')) + pp_label = FCLabel('%s:' % _('Preprocessor')) pp_label.setToolTip( _("Files that control the GCode generation.") ) @@ -1530,7 +1530,7 @@ class SolderUI: self.geo_obj_combo.is_last = True self.geo_obj_combo.obj_type = "Geometry" - self.geo_object_label = QtWidgets.QLabel('%s:' % _("Geometry")) + self.geo_object_label = FCLabel('%s:' % _("Geometry")) self.geo_object_label.setToolTip( _("Geometry Solder Paste object.\n" "The name of the object has to end in:\n" @@ -1566,7 +1566,7 @@ class SolderUI: self.cnc_obj_combo.is_last = True self.geo_obj_combo.obj_type = "CNCJob" - self.cnc_object_label = QtWidgets.QLabel('%s:' % _("CNCJob")) + self.cnc_object_label = FCLabel('%s:' % _("CNCJob")) self.cnc_object_label.setToolTip( _("CNCJob Solder paste object.\n" "In order to enable the GCode save section,\n" diff --git a/app_Main.py b/app_Main.py index 46b21bfe..8f2bf0d3 100644 --- a/app_Main.py +++ b/app_Main.py @@ -17,7 +17,7 @@ import simplejson as json import shutil import lzma from datetime import datetime -import time +# import time import ctypes import traceback @@ -75,7 +75,8 @@ from appGUI.PlotCanvas import * from appGUI.PlotCanvasLegacy import * from appGUI.PlotCanvas3d import * from appGUI.MainGUI import * -from appGUI.GUIElements import FCFileSaveDialog, message_dialog, FlatCAMSystemTray, FCInputDialogSlider, FCGridLayout +from appGUI.GUIElements import FCFileSaveDialog, message_dialog, FlatCAMSystemTray, FCInputDialogSlider, \ + FCGridLayout, FCLabel # FlatCAM Pre-processors from appPreProcessor import load_preprocessors @@ -3132,10 +3133,10 @@ class App(QtCore.QObject): # palette.setBrush(10, QtGui.QBrush(bgimage)) # 10 = Windowrole # self.setPalette(palette) - logo = QtWidgets.QLabel() + logo = FCLabel() logo.setPixmap(QtGui.QPixmap(self.app.resource_location + '/flatcam_icon256.png')) - title = QtWidgets.QLabel( + title = FCLabel( "FlatCAM Evo
" "{title}
" "
" @@ -3154,7 +3155,7 @@ class App(QtCore.QObject): closebtn = QtWidgets.QPushButton(_("Close")) tab_widget = QtWidgets.QTabWidget() - description_label = QtWidgets.QLabel( + description_label = FCLabel( "FlatCAM Evo {version} {beta} ({date}) - {arch}
" "http://flatcam.org
".format( version=version, @@ -3164,7 +3165,7 @@ class App(QtCore.QObject): ) description_label.setOpenExternalLinks(True) - lic_lbl_header = QtWidgets.QLabel( + lic_lbl_header = FCLabel( '%s:
%s
' % ( _('Licensed under the MIT license'), "" @@ -3173,7 +3174,7 @@ class App(QtCore.QObject): ) lic_lbl_header.setOpenExternalLinks(True) - lic_lbl_body = QtWidgets.QLabel( + lic_lbl_body = FCLabel( _( 'Permission is hereby granted, free of charge, to any person obtaining a copy\n' 'of this software and associated documentation files (the "Software"), to deal\n' @@ -3195,7 +3196,7 @@ class App(QtCore.QObject): ) ) - attributions_label = QtWidgets.QLabel( + attributions_label = FCLabel( _( 'Some of the icons used are from the following sources:
' '
Icons by %s' % _("Programmer")), 0, 0) - self.prog_grid_lay.addWidget(QtWidgets.QLabel('%s' % _("Status")), 0, 1) - self.prog_grid_lay.addWidget(QtWidgets.QLabel('%s' % _("E-mail")), 0, 2) + self.prog_grid_lay.addWidget(FCLabel('%s' % _("Programmer")), 0, 0) + self.prog_grid_lay.addWidget(FCLabel('%s' % _("Status")), 0, 1) + self.prog_grid_lay.addWidget(FCLabel('%s' % _("E-mail")), 0, 2) # FlatCAM Author - self.prog_grid_lay.addWidget(QtWidgets.QLabel('%s' % "Juan Pablo Caram"), 1, 0) - self.prog_grid_lay.addWidget(QtWidgets.QLabel('%s' % _("FlatCAM Author")), 1, 1) + self.prog_grid_lay.addWidget(FCLabel('%s' % "Juan Pablo Caram"), 1, 0) + self.prog_grid_lay.addWidget(FCLabel('%s' % _("FlatCAM Author")), 1, 1) # FlatCAM EVO Author - self.prog_grid_lay.addWidget(QtWidgets.QLabel('%s' % "Marius Stanciu"), 2, 0) - self.prog_grid_lay.addWidget(QtWidgets.QLabel('%s' % _("FlatCAM Evo Author/Maintainer")), 2, 1) - self.prog_grid_lay.addWidget(QtWidgets.QLabel('%s' % ""), 2, 2) - self.prog_grid_lay.addWidget(QtWidgets.QLabel(''), 3, 0) + self.prog_grid_lay.addWidget(FCLabel('%s' % "Marius Stanciu"), 2, 0) + self.prog_grid_lay.addWidget(FCLabel('%s' % _("FlatCAM Evo Author/Maintainer")), 2, 1) + self.prog_grid_lay.addWidget(FCLabel('%s' % ""), 2, 2) + self.prog_grid_lay.addWidget(FCLabel(''), 3, 0) # randomize the order of the programmers at each launch random.shuffle(programmers) line = 4 for prog in programmers: - self.prog_grid_lay.addWidget(QtWidgets.QLabel('%s' % prog['name']), line, 0) - self.prog_grid_lay.addWidget(QtWidgets.QLabel('%s' % prog['description']), line, 1) - self.prog_grid_lay.addWidget(QtWidgets.QLabel('%s' % prog['email']), line, 2) + self.prog_grid_lay.addWidget(FCLabel('%s' % prog['name']), line, 0) + self.prog_grid_lay.addWidget(FCLabel('%s' % prog['description']), line, 1) + self.prog_grid_lay.addWidget(FCLabel('%s' % prog['email']), line, 2) line += 1 if (line % 4) == 0: - self.prog_grid_lay.addWidget(QtWidgets.QLabel(''), line, 0) + self.prog_grid_lay.addWidget(FCLabel(''), line, 0) line += 1 self.translator_grid_lay = FCGridLayout(v_spacing=5, h_spacing=3) @@ -3480,51 +3486,35 @@ class App(QtCore.QObject): translators = [ { 'language': 'BR - Portuguese', - 'name': "Carlos Stein", - 'corrections': '', - 'email': '' + 'authors': [("Carlos Stein", '')], }, { 'language': 'French', - 'name': "Michel Maciejewski", - 'corrections': 'Olivier Cornet', - 'email': '' + 'authors': [("Michel Maciejewski", ''), ('Olivier Cornet', '')] }, { 'language': 'Italian', - 'name': "Massimiliano Golfetto", - 'corrections': '', - 'email': '' + 'authors': [("Massimiliano Golfetto", '')] }, { 'language': 'German', - 'name': "Marius Stanciu (Google-Tr)", - 'corrections': 'Jens Karstedt, Detlef Eckardt', - 'email': '' + 'authors': [("Marius Stanciu (Google-Tr)", ''), ('Jens Karstedt', ''), ('Detlef Eckardt', '')], }, { 'language': 'Romanian', - 'name': "Marius Stanciu", - 'corrections': '', - 'email': '' + 'authors': [("Marius Stanciu", '')] }, { 'language': 'Russian', - 'name': "Andrey Kultyapov", - 'corrections': '', - 'email': '' + 'authors': [("Andrey Kultyapov", '')] }, { 'language': 'Spanish', - 'name': "Marius Stanciu (Google-Tr)", - 'corrections': '', - 'email': '' + 'authors': [("Marius Stanciu (Google-Tr)", '')] }, { 'language': 'Turkish', - 'name': "Mehmet Kaya", - 'corrections': '', - 'email': '' + 'authors': [("Mehmet Kaya", '')] }, ] @@ -3537,21 +3527,24 @@ class App(QtCore.QObject): trans_scroll.setPalette(pal) self.translators_tab_layout.addWidget(trans_scroll) - self.translator_grid_lay.addWidget(QtWidgets.QLabel('%s' % _("Language")), 0, 0) - self.translator_grid_lay.addWidget(QtWidgets.QLabel('%s' % _("Translator")), 0, 1) - self.translator_grid_lay.addWidget(QtWidgets.QLabel('%s' % _("Corrections")), 0, 2) - self.translator_grid_lay.addWidget(QtWidgets.QLabel('%s' % _("E-mail")), 0, 3) + self.translator_grid_lay.addWidget(FCLabel('%s' % _("Language")), 0, 0) + self.translator_grid_lay.addWidget(FCLabel('%s' % _("Translator")), 0, 1) + self.translator_grid_lay.addWidget(FCLabel('%s' % _("E-mail")), 0, 2) line = 1 for i in translators: - self.translator_grid_lay.addWidget(QtWidgets.QLabel('%s' % i['language']), line, 0) - self.translator_grid_lay.addWidget(QtWidgets.QLabel('%s' % i['name']), line, 1) - self.translator_grid_lay.addWidget(QtWidgets.QLabel('%s' % i['corrections']), line, 2) - self.translator_grid_lay.addWidget(QtWidgets.QLabel('%s' % i['email']), line, 3) + self.translator_grid_lay.addWidget( + FCLabel('%s' % i['language']), line, 0) + for author in range(len(i['authors'])): + auth_widget = FCLabel('%s' % i['authors'][author][0]) + email_widget = FCLabel('%s' % i['authors'][author][1]) + self.translator_grid_lay.addWidget(auth_widget, line, 1) + self.translator_grid_lay.addWidget(email_widget, line, 2) + line += 1 line += 1 - self.translator_grid_lay.setColumnStretch(0, 0) + self.translator_grid_lay.setColumnStretch(1, 1) self.translators_tab_layout.addStretch() self.license_tab_layout.addWidget(lic_lbl_header) @@ -3595,10 +3588,10 @@ class App(QtCore.QObject): self.setWindowTitle('%s ...' % _("How To")) self.resize(750, 375) - logo = QtWidgets.QLabel() + logo = FCLabel() logo.setPixmap(QtGui.QPixmap(self.app.resource_location + '/contribute256.png')) - # content = QtWidgets.QLabel( + # content = FCLabel( # "%s
" # "%s

" # "%s,
" @@ -3631,7 +3624,7 @@ class App(QtCore.QObject): # ) # font-weight: bold; - content = QtWidgets.QLabel( + content = FCLabel( "%s
" "%s

" "%s,
" @@ -3720,7 +3713,7 @@ class App(QtCore.QObject): links_scroll_area.setPalette(pal) self.links_lay.addWidget( - QtWidgets.QLabel('%s' % _("Soon ...")), alignment=QtCore.Qt.AlignmentFlag.AlignCenter) + FCLabel('%s' % _("Soon ...")), alignment=QtCore.Qt.AlignmentFlag.AlignCenter) self.links_tab_layout.addWidget(links_scroll_area) # HOW TO section @@ -3740,7 +3733,7 @@ class App(QtCore.QObject): howto_scroll_area.setPalette(pal) self.howto_lay.addWidget( - QtWidgets.QLabel('%s' % _("Soon ...")), alignment=QtCore.Qt.AlignmentFlag.AlignCenter) + FCLabel('%s' % _("Soon ...")), alignment=QtCore.Qt.AlignmentFlag.AlignCenter) self.howto_tab_layout.addWidget(howto_scroll_area) # BUTTONS section @@ -8236,7 +8229,7 @@ class App(QtCore.QObject): :return: """ - # label = QtWidgets.QLabel("Choose an item from Project") + # label = FCLabel("Choose an item from Project") # label.setAlignment(QtCore.Qt.AlignHCenter | QtCore.Qt.AlignVCenter) # sel_title = QtWidgets.QTextEdit()