- clicking the splash screen will close it; also if an error is triggered, the error message will pop over the splash screen

- the Aperture Table in the Gerber Editor is no longer extended to show all apertures at once
- in Preferences: Excellon, Geometry and CNCJob tabs, updated the UI to the new design
This commit is contained in:
Marius Stanciu
2021-10-01 02:23:02 +03:00
committed by Marius
parent 2feb509081
commit a1530963f5
17 changed files with 479 additions and 314 deletions

View File

@@ -1,6 +1,6 @@
from PyQt6 import QtWidgets
from appGUI.GUIElements import FCComboBox, FCSpinner, FCColorEntry, FCLabel, FCGridLayout
from appGUI.GUIElements import FCSpinner, FCColorEntry, FCLabel, FCGridLayout, FCFrame
from appGUI.preferences.OptionsGroupUI import OptionsGroupUI
import gettext
import appTranslation as fcTranslate
@@ -20,16 +20,21 @@ class CNCJobAdvOptPrefGroupUI(OptionsGroupUI):
self.setTitle(str(_("CNC Job Adv. Options")))
grid0 = FCGridLayout(v_spacing=5, h_spacing=3)
self.layout.addLayout(grid0)
# ## Export G-Code
self.export_gcode_label = FCLabel("<b>%s:</b>" % _("Parameters"))
# #############################################################################################################
# PARAMETERS Frame
# #############################################################################################################
self.export_gcode_label = FCLabel('<span style="color:blue;"><b>%s</b></span>' % _("Parameters"))
self.export_gcode_label.setToolTip(
_("Export and save G-Code to\n"
"make this object to a file.")
)
grid0.addWidget(self.export_gcode_label, 0, 0, 1, 2)
self.layout.addWidget(self.export_gcode_label)
param_frame = FCFrame()
self.layout.addWidget(param_frame)
param_grid = FCGridLayout(v_spacing=5, h_spacing=3)
param_frame.setLayout(param_grid)
# Annotation Font Size
self.annotation_fontsize_label = FCLabel('%s:' % _("Annotation Size"))
@@ -39,8 +44,8 @@ class CNCJobAdvOptPrefGroupUI(OptionsGroupUI):
self.annotation_fontsize_sp = FCSpinner()
self.annotation_fontsize_sp.set_range(0, 9999)
grid0.addWidget(self.annotation_fontsize_label, 2, 0)
grid0.addWidget(self.annotation_fontsize_sp, 2, 1)
param_grid.addWidget(self.annotation_fontsize_label, 0, 0)
param_grid.addWidget(self.annotation_fontsize_sp, 0, 1)
# Annotation Font Color
self.annotation_color_label = FCLabel('%s:' % _('Annotation Color'))
@@ -49,8 +54,8 @@ class CNCJobAdvOptPrefGroupUI(OptionsGroupUI):
)
self.annotation_fontcolor_entry = FCColorEntry()
grid0.addWidget(self.annotation_color_label, 4, 0)
grid0.addWidget(self.annotation_fontcolor_entry, 4, 1)
param_grid.addWidget(self.annotation_color_label, 2, 0)
param_grid.addWidget(self.annotation_fontcolor_entry, 2, 1)
self.layout.addStretch(1)

View File

@@ -1,7 +1,7 @@
from PyQt6 import QtGui
from PyQt6.QtCore import QSettings
from appGUI.GUIElements import FCTextArea, FCLabel
from appGUI.GUIElements import FCTextArea, FCLabel, FCFrame
from appGUI.preferences.OptionsGroupUI import OptionsGroupUI
import gettext
@@ -22,8 +22,10 @@ class CNCJobEditorPrefGroupUI(OptionsGroupUI):
self.decimals = decimals
self.defaults = defaults
# Editor Parameters
self.param_label = FCLabel("<b>%s:</b>" % _("Parameters"))
# #############################################################################################################
# PARAMETERS Frame
# #############################################################################################################
self.param_label = FCLabel('<span style="color:blue;"><b>%s</b></span>' % _("Parameters"))
self.param_label.setToolTip(
_("A list of Editor parameters.")
)

View File

@@ -1,7 +1,7 @@
from PyQt6 import QtWidgets
from appGUI.GUIElements import FCCheckBox, RadioSet, FCSpinner, FCDoubleSpinner, FCSliderWithSpinner, FCColorEntry, \
FCLabel, FCGridLayout
FCLabel, FCGridLayout, FCFrame
from appGUI.preferences.OptionsGroupUI import OptionsGroupUI
import gettext
import appTranslation as fcTranslate
@@ -21,17 +21,22 @@ class CNCJobGenPrefGroupUI(OptionsGroupUI):
self.decimals = decimals
self.defaults = defaults
# ## Plot options
self.plot_options_label = FCLabel("<b>%s:</b>" % _("Plot Options"))
# #############################################################################################################
# Plot Frame
# #############################################################################################################
self.plot_options_label = FCLabel('<span style="color:blue;"><b>%s</b></span>' % _("Plot Options"))
self.layout.addWidget(self.plot_options_label)
grid0 = FCGridLayout(v_spacing=5, h_spacing=3)
self.layout.addLayout(grid0)
plot_frame = FCFrame()
self.layout.addWidget(plot_frame)
plot_grid = FCGridLayout(v_spacing=5, h_spacing=3)
plot_frame.setLayout(plot_grid)
# Plot CB
self.plot_cb = FCCheckBox(_('Plot Object'))
self.plot_cb.setToolTip(_("Plot (show) this object."))
grid0.addWidget(self.plot_cb, 0, 0, 1, 2)
plot_grid.addWidget(self.plot_cb, 0, 0, 1, 2)
# ###################################################################
# Number of circle steps for circular aperture linear approximation #
@@ -41,10 +46,12 @@ class CNCJobGenPrefGroupUI(OptionsGroupUI):
_("The number of circle steps for <b>GCode</b> \n"
"circle and arc shapes linear approximation.")
)
grid0.addWidget(self.steps_per_circle_label, 3, 0)
self.steps_per_circle_entry = FCSpinner()
self.steps_per_circle_entry.set_range(0, 99999)
grid0.addWidget(self.steps_per_circle_entry, 3, 1)
plot_grid.addWidget(self.steps_per_circle_label, 2, 0)
plot_grid.addWidget(self.steps_per_circle_entry, 2, 1)
# Tool dia for plot
tdlabel = FCLabel('%s:' % _('Travel dia'))
@@ -58,11 +65,19 @@ class CNCJobGenPrefGroupUI(OptionsGroupUI):
self.tooldia_entry.setSingleStep(0.1)
self.tooldia_entry.setWrapping(True)
grid0.addWidget(tdlabel, 4, 0)
grid0.addWidget(self.tooldia_entry, 4, 1)
plot_grid.addWidget(tdlabel, 4, 0)
plot_grid.addWidget(self.tooldia_entry, 4, 1)
# add a space
grid0.addWidget(FCLabel('<b>%s:</b>' % _("G-code Decimals")), 5, 0, 1, 2)
# #############################################################################################################
# Decimals Frame
# #############################################################################################################
self.layout.addWidget(FCLabel('<span style="color:teal;"><b>%s</b></span>' % _("G-code Decimals")))
dec_frame = FCFrame()
self.layout.addWidget(dec_frame)
dec_grid = FCGridLayout(v_spacing=5, h_spacing=3)
dec_frame.setLayout(dec_grid)
# Number of decimals to use in GCODE coordinates
cdeclabel = FCLabel('%s:' % _('Coordinates'))
@@ -74,8 +89,8 @@ class CNCJobGenPrefGroupUI(OptionsGroupUI):
self.coords_dec_entry.set_range(0, 9)
self.coords_dec_entry.setWrapping(True)
grid0.addWidget(cdeclabel, 6, 0)
grid0.addWidget(self.coords_dec_entry, 6, 1)
dec_grid.addWidget(cdeclabel, 0, 0)
dec_grid.addWidget(self.coords_dec_entry, 0, 1)
# Number of decimals to use in GCODE feedrate
frdeclabel = FCLabel('%s:' % _('Feedrate'))
@@ -87,8 +102,8 @@ class CNCJobGenPrefGroupUI(OptionsGroupUI):
self.fr_dec_entry.set_range(0, 9)
self.fr_dec_entry.setWrapping(True)
grid0.addWidget(frdeclabel, 7, 0)
grid0.addWidget(self.fr_dec_entry, 7, 1)
dec_grid.addWidget(frdeclabel, 2, 0)
dec_grid.addWidget(self.fr_dec_entry, 2, 1)
# The type of coordinates used in the Gcode: Absolute or Incremental
coords_type_label = FCLabel('%s:' % _('Coordinates type'))
@@ -102,8 +117,8 @@ class CNCJobGenPrefGroupUI(OptionsGroupUI):
{"label": _("Absolute"), "value": "G90"},
{"label": _("Incremental"), "value": "G91"}
], orientation='vertical', compact=True)
grid0.addWidget(coords_type_label, 8, 0)
grid0.addWidget(self.coords_type_radio, 8, 1)
dec_grid.addWidget(coords_type_label, 4, 0)
dec_grid.addWidget(self.coords_type_radio, 4, 1)
# hidden for the time being, until implemented
coords_type_label.hide()
@@ -116,16 +131,24 @@ class CNCJobGenPrefGroupUI(OptionsGroupUI):
"(\\r\\n) on non-Windows OS's.")
)
grid0.addWidget(self.line_ending_cb, 9, 0, 1, 3)
dec_grid.addWidget(self.line_ending_cb, 6, 0, 1, 3)
separator_line = QtWidgets.QFrame()
separator_line.setFrameShape(QtWidgets.QFrame.Shape.HLine)
separator_line.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
grid0.addWidget(separator_line, 12, 0, 1, 2)
# separator_line = QtWidgets.QFrame()
# separator_line.setFrameShape(QtWidgets.QFrame.Shape.HLine)
# separator_line.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
# plot_grid.addWidget(separator_line, 12, 0, 1, 2)
# Travel Line Color
self.travel_color_label = FCLabel('<b>%s</b>' % _('Travel Line Color'))
grid0.addWidget(self.travel_color_label, 13, 0, 1, 2)
# #############################################################################################################
# Travel Frame
# #############################################################################################################
self.travel_color_label = FCLabel('<span style="color:green;"><b>%s</b></span>' % _('Travel Line Color'))
self.layout.addWidget(self.travel_color_label)
travel_frame = FCFrame()
self.layout.addWidget(travel_frame)
travel_grid = FCGridLayout(v_spacing=5, h_spacing=3)
travel_frame.setLayout(travel_grid)
# Plot Line Color
self.tline_color_label = FCLabel('%s:' % _('Outline'))
@@ -134,8 +157,8 @@ class CNCJobGenPrefGroupUI(OptionsGroupUI):
)
self.tline_color_entry = FCColorEntry()
grid0.addWidget(self.tline_color_label, 14, 0)
grid0.addWidget(self.tline_color_entry, 14, 1)
travel_grid.addWidget(self.tline_color_label, 0, 0)
travel_grid.addWidget(self.tline_color_entry, 0, 1)
# Plot Fill Color
self.tfill_color_label = FCLabel('%s:' % _('Fill'))
@@ -146,8 +169,8 @@ class CNCJobGenPrefGroupUI(OptionsGroupUI):
)
self.tfill_color_entry = FCColorEntry()
grid0.addWidget(self.tfill_color_label, 15, 0)
grid0.addWidget(self.tfill_color_entry, 15, 1)
travel_grid.addWidget(self.tfill_color_label, 2, 0)
travel_grid.addWidget(self.tfill_color_entry, 2, 1)
# Plot Fill Transparency Level
self.cncjob_alpha_label = FCLabel('%s:' % _('Alpha'))
@@ -156,17 +179,25 @@ class CNCJobGenPrefGroupUI(OptionsGroupUI):
)
self.cncjob_alpha_entry = FCSliderWithSpinner(0, 255, 1)
grid0.addWidget(self.cncjob_alpha_label, 16, 0)
grid0.addWidget(self.cncjob_alpha_entry, 16, 1)
travel_grid.addWidget(self.cncjob_alpha_label, 4, 0)
travel_grid.addWidget(self.cncjob_alpha_entry, 4, 1)
separator_line = QtWidgets.QFrame()
separator_line.setFrameShape(QtWidgets.QFrame.Shape.HLine)
separator_line.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
grid0.addWidget(separator_line, 17, 0, 1, 2)
# separator_line = QtWidgets.QFrame()
# separator_line.setFrameShape(QtWidgets.QFrame.Shape.HLine)
# separator_line.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
# plot_grid.addWidget(separator_line, 17, 0, 1, 2)
# CNCJob Object Color
self.cnc_color_label = FCLabel('<b>%s</b>' % _('Object Color'))
grid0.addWidget(self.cnc_color_label, 18, 0, 1, 2)
# #############################################################################################################
# Object Color Frame
# #############################################################################################################
self.cnc_color_label = FCLabel('<span style="color:darkorange;"><b>%s</b></span>' % _('Object Color'))
self.layout.addWidget(self.cnc_color_label)
obj_frame = FCFrame()
self.layout.addWidget(obj_frame)
obj_grid = FCGridLayout(v_spacing=5, h_spacing=3)
obj_frame.setLayout(obj_grid)
# Plot Line Color
self.line_color_label = FCLabel('%s:' % _('Outline'))
@@ -175,8 +206,8 @@ class CNCJobGenPrefGroupUI(OptionsGroupUI):
)
self.line_color_entry = FCColorEntry()
grid0.addWidget(self.line_color_label, 19, 0)
grid0.addWidget(self.line_color_entry, 19, 1)
obj_grid.addWidget(self.line_color_label, 0, 0)
obj_grid.addWidget(self.line_color_entry, 0, 1)
# Plot Fill Color
self.fill_color_label = FCLabel('%s:' % _('Fill'))
@@ -187,8 +218,10 @@ class CNCJobGenPrefGroupUI(OptionsGroupUI):
)
self.fill_color_entry = FCColorEntry()
grid0.addWidget(self.fill_color_label, 20, 0)
grid0.addWidget(self.fill_color_entry, 20, 1)
obj_grid.addWidget(self.fill_color_label, 2, 0)
obj_grid.addWidget(self.fill_color_entry, 2, 1)
FCGridLayout.set_common_column_size([plot_grid, dec_grid, travel_grid, obj_grid], 0)
self.layout.addStretch()

View File

@@ -1,7 +1,7 @@
from PyQt6 import QtWidgets, QtGui
from PyQt6 import QtGui
from PyQt6.QtCore import QSettings
from appGUI.GUIElements import RadioSet, FCCheckBox, FCLabel, FCGridLayout
from appGUI.GUIElements import RadioSet, FCCheckBox, FCLabel, FCGridLayout, FCFrame
from appGUI.preferences.OptionsGroupUI import OptionsGroupUI
import gettext
@@ -22,8 +22,10 @@ class CNCJobOptPrefGroupUI(OptionsGroupUI):
self.decimals = decimals
self.defaults = defaults
# ## Export G-Code
self.export_gcode_label = FCLabel("<b>%s:</b>" % _("Export G-Code"))
# #############################################################################################################
# GCode Frame
# #############################################################################################################
self.export_gcode_label = FCLabel('<span style="color:brown;"><b>%s</b></span>' % _("Export G-Code"))
self.export_gcode_label.setToolTip(
_("Export and save G-Code to\n"
"make this object to a file.")
@@ -38,8 +40,11 @@ class CNCJobOptPrefGroupUI(OptionsGroupUI):
font = QtGui.QFont()
font.setPointSize(tb_fsize)
grid0 = FCGridLayout(v_spacing=5, h_spacing=3)
self.layout.addLayout(grid0)
gcode_frame = FCFrame()
self.layout.addWidget(gcode_frame)
gcode_grid = FCGridLayout(v_spacing=5, h_spacing=3)
gcode_frame.setLayout(gcode_grid)
# Plot Kind
self.cncplot_method_label = FCLabel('%s:' % _("Plot kind"))
@@ -54,11 +59,10 @@ class CNCJobOptPrefGroupUI(OptionsGroupUI):
{"label": _("All"), "value": "all"},
{"label": _("Travel"), "value": "travel"},
{"label": _("Cut"), "value": "cut"}
], orientation='vertical', compact=True)
], orientation='vertical')
grid0.addWidget(self.cncplot_method_label, 1, 0)
grid0.addWidget(self.cncplot_method_radio, 1, 1)
grid0.addWidget(FCLabel(''), 1, 2)
gcode_grid.addWidget(self.cncplot_method_label, 0, 0)
gcode_grid.addWidget(self.cncplot_method_radio, 0, 1)
# Display Annotation
self.annotation_cb = FCCheckBox(_("Display Annotation"))
@@ -69,6 +73,6 @@ class CNCJobOptPrefGroupUI(OptionsGroupUI):
)
)
grid0.addWidget(self.annotation_cb, 2, 0, 1, 3)
gcode_grid.addWidget(self.annotation_cb, 2, 0, 1, 2)
self.layout.addStretch()
# self.layout.addStretch()