- fixed cncjob TclCommand - it used the default values for parameters
- fixed the layout in ToolTransform - fixed the initial text in the ToolShell
This commit is contained in:
@@ -87,8 +87,8 @@ class App(QtCore.QObject):
|
|||||||
log.addHandler(handler)
|
log.addHandler(handler)
|
||||||
|
|
||||||
# Version
|
# Version
|
||||||
version = 'Beta1'
|
version = '8.6 Beta1'
|
||||||
version_date = "2019/01/03"
|
version_date = "2019/01/06"
|
||||||
|
|
||||||
# URL for update checks and statistics
|
# URL for update checks and statistics
|
||||||
version_url = "http://flatcam.org/version"
|
version_url = "http://flatcam.org/version"
|
||||||
@@ -1091,13 +1091,13 @@ class App(QtCore.QObject):
|
|||||||
|
|
||||||
self.myKeywords = self.tcl_commands_list + self.ordinary_keywords
|
self.myKeywords = self.tcl_commands_list + self.ordinary_keywords
|
||||||
|
|
||||||
self.shell = FCShell(self)
|
self.shell = FCShell(self, version=self.version)
|
||||||
self.shell._edit.set_model_data(self.myKeywords)
|
self.shell._edit.set_model_data(self.myKeywords)
|
||||||
self.shell.setWindowIcon(self.ui.app_icon)
|
self.shell.setWindowIcon(self.ui.app_icon)
|
||||||
self.shell.setWindowTitle("FlatCAM Shell")
|
self.shell.setWindowTitle("FlatCAM Shell")
|
||||||
self.shell.resize(*self.defaults["global_shell_shape"])
|
self.shell.resize(*self.defaults["global_shell_shape"])
|
||||||
self.shell.append_output("FlatCAM %s\n(c) 2014-2019 Juan Pablo Caram\n\n" % self.version)
|
self.shell.append_output("FlatCAM %s (c)2014-2019 Juan Pablo Caram " % self.version)
|
||||||
self.shell.append_output("Type help to get started.\n\n")
|
self.shell.append_output("(Type help to get started)\n\n")
|
||||||
|
|
||||||
self.init_tcl()
|
self.init_tcl()
|
||||||
|
|
||||||
|
|||||||
@@ -3221,8 +3221,6 @@ class FlatCAMGeometry(FlatCAMObj, Geometry):
|
|||||||
|
|
||||||
ppname_g = ppname_g if ppname_g else self.options["ppname_g"]
|
ppname_g = ppname_g if ppname_g else self.options["ppname_g"]
|
||||||
|
|
||||||
print(self.tools)
|
|
||||||
|
|
||||||
# Object initialization function for app.new_object()
|
# Object initialization function for app.new_object()
|
||||||
# RUNNING ON SEPARATE THREAD!
|
# RUNNING ON SEPARATE THREAD!
|
||||||
def job_init(job_obj, app_obj):
|
def job_init(job_obj, app_obj):
|
||||||
@@ -3232,15 +3230,7 @@ class FlatCAMGeometry(FlatCAMObj, Geometry):
|
|||||||
job_obj.options["tooldia"] = tooldia
|
job_obj.options["tooldia"] = tooldia
|
||||||
|
|
||||||
app_obj.progress.emit(20)
|
app_obj.progress.emit(20)
|
||||||
job_obj.z_cut = z_cut
|
|
||||||
job_obj.z_move = z_move
|
|
||||||
job_obj.feedrate = feedrate
|
|
||||||
job_obj.feedrate_z = feedrate_z
|
|
||||||
job_obj.feedrate_rapid = feedrate_rapid
|
|
||||||
job_obj.pp_geometry_name = ppname_g
|
|
||||||
job_obj.spindlespeed = spindlespeed
|
|
||||||
job_obj.dwell = dwell
|
|
||||||
job_obj.dwelltime = dwelltime
|
|
||||||
job_obj.coords_decimals = self.app.defaults["cncjob_coords_decimals"]
|
job_obj.coords_decimals = self.app.defaults["cncjob_coords_decimals"]
|
||||||
job_obj.fr_decimals = self.app.defaults["cncjob_fr_decimals"]
|
job_obj.fr_decimals = self.app.defaults["cncjob_fr_decimals"]
|
||||||
app_obj.progress.emit(40)
|
app_obj.progress.emit(40)
|
||||||
@@ -3248,16 +3238,16 @@ class FlatCAMGeometry(FlatCAMObj, Geometry):
|
|||||||
job_obj.options['type'] = 'Geometry'
|
job_obj.options['type'] = 'Geometry'
|
||||||
job_obj.options['tool_dia'] = tooldia
|
job_obj.options['tool_dia'] = tooldia
|
||||||
|
|
||||||
job_obj.toolchange = self.options["toolchange"]
|
|
||||||
job_obj.toolchangez = self.options["toolchangez"]
|
|
||||||
job_obj.toolchangexy = self.options["toolchangexy"]
|
|
||||||
|
|
||||||
# TODO: The tolerance should not be hard coded. Just for testing.
|
# TODO: The tolerance should not be hard coded. Just for testing.
|
||||||
job_obj.generate_from_geometry_2(self, tooldia=tooldia, offset=offset,
|
job_obj.generate_from_geometry_2(self, tooldia=tooldia, offset=offset, tolerance=0.0005,
|
||||||
|
z_cut=z_cut, z_move=z_move,
|
||||||
|
feedrate=feedrate, feedrate_z=feedrate_z, feedrate_rapid=feedrate_rapid,
|
||||||
|
spindlespeed=spindlespeed, dwell=dwell, dwelltime=dwelltime,
|
||||||
multidepth=multidepth, depthpercut=depthperpass,
|
multidepth=multidepth, depthpercut=depthperpass,
|
||||||
tolerance=0.0005,
|
toolchange=toolchange, toolchangez=toolchangez, toolchangexy=toolchangexy,
|
||||||
extracut=extracut, endz=endz, startz=startz,
|
extracut=extracut, startz=startz, endz=endz,
|
||||||
toolchange=toolchange, toolchangez=toolchangez, toolchangexy=toolchangexy)
|
pp_geometry_name=ppname_g
|
||||||
|
)
|
||||||
|
|
||||||
app_obj.progress.emit(50)
|
app_obj.progress.emit(50)
|
||||||
# tell gcode_parse from which point to start drawing the lines depending on what kind of object is the
|
# tell gcode_parse from which point to start drawing the lines depending on what kind of object is the
|
||||||
|
|||||||
@@ -9,6 +9,12 @@ CAD program, and create G-Code for Isolation routing.
|
|||||||
|
|
||||||
=================================================
|
=================================================
|
||||||
|
|
||||||
|
5.01.2019
|
||||||
|
|
||||||
|
- fixed cncjob TclCommand - it used the default values for parameters
|
||||||
|
- fixed the layout in ToolTransform
|
||||||
|
- fixed the initial text in the ToolShell
|
||||||
|
|
||||||
3.01.2019
|
3.01.2019
|
||||||
|
|
||||||
- initial merge into FlatCAM regular
|
- initial merge into FlatCAM regular
|
||||||
|
|||||||
23
camlib.py
23
camlib.py
@@ -4754,16 +4754,14 @@ class CNCjob(Geometry):
|
|||||||
self.gcode = gcode
|
self.gcode = gcode
|
||||||
|
|
||||||
def generate_from_multitool_geometry(self, geometry, append=True,
|
def generate_from_multitool_geometry(self, geometry, append=True,
|
||||||
tooldia=None, offset=0.0, tolerance=0,
|
tooldia=None, offset=0.0, tolerance=0, z_cut=1.0, z_move=2.0,
|
||||||
z_cut=1.0, z_move=2.0,
|
feedrate=2.0, feedrate_z=2.0, feedrate_rapid=30,
|
||||||
feedrate=2.0, feedrate_z=2.0, feedrate_rapid=30,
|
spindlespeed=None, dwell=False, dwelltime=1.0,
|
||||||
spindlespeed=None, dwell=False, dwelltime=1.0,
|
multidepth=False, depthpercut=None,
|
||||||
multidepth=False, depthpercut=None,
|
toolchange=False, toolchangez=1.0, toolchangexy="0.0, 0.0", extracut=False,
|
||||||
toolchange=False, toolchangez=1.0, toolchangexy="0.0, 0.0",
|
startz=None, endz=2.0, pp_geometry_name=None, tool_no=1):
|
||||||
extracut=False, startz=None, endz=2.0,
|
|
||||||
pp_geometry_name=None, tool_no=1):
|
|
||||||
"""
|
"""
|
||||||
Second algorithm to generate from Geometry.
|
Algorithm to generate from multitool Geometry.
|
||||||
|
|
||||||
Algorithm description:
|
Algorithm description:
|
||||||
----------------------
|
----------------------
|
||||||
@@ -4781,7 +4779,7 @@ class CNCjob(Geometry):
|
|||||||
:return: None
|
:return: None
|
||||||
"""
|
"""
|
||||||
|
|
||||||
log.debug("Generate_from_geometry_2()")
|
log.debug("Generate_from_multitool_geometry()")
|
||||||
|
|
||||||
temp_solid_geometry = []
|
temp_solid_geometry = []
|
||||||
if offset != 0.0:
|
if offset != 0.0:
|
||||||
@@ -4948,7 +4946,10 @@ class CNCjob(Geometry):
|
|||||||
overlapping the first point in path to ensure complete copper removal
|
overlapping the first point in path to ensure complete copper removal
|
||||||
:return: None
|
:return: None
|
||||||
"""
|
"""
|
||||||
assert isinstance(geometry, Geometry), "Expected a Geometry, got %s" % type(geometry)
|
|
||||||
|
if not isinstance(geometry, Geometry):
|
||||||
|
self.app.inform.emit("[error]Expected a Geometry, got %s" % type(geometry))
|
||||||
|
return 'fail'
|
||||||
log.debug("Generate_from_geometry_2()")
|
log.debug("Generate_from_geometry_2()")
|
||||||
|
|
||||||
# if solid_geometry is empty raise an exception
|
# if solid_geometry is empty raise an exception
|
||||||
|
|||||||
@@ -14,9 +14,10 @@ from PyQt5.QtWidgets import QLineEdit, QSizePolicy, QTextEdit, QVBoxLayout, QWid
|
|||||||
|
|
||||||
class _BrowserTextEdit(QTextEdit):
|
class _BrowserTextEdit(QTextEdit):
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self, version):
|
||||||
QTextEdit.__init__(self)
|
QTextEdit.__init__(self)
|
||||||
self.menu = None
|
self.menu = None
|
||||||
|
self.version = version
|
||||||
|
|
||||||
def contextMenuEvent(self, event):
|
def contextMenuEvent(self, event):
|
||||||
self.menu = self.createStandardContextMenu(event.pos())
|
self.menu = self.createStandardContextMenu(event.pos())
|
||||||
@@ -29,7 +30,7 @@ class _BrowserTextEdit(QTextEdit):
|
|||||||
|
|
||||||
def clear(self):
|
def clear(self):
|
||||||
QTextEdit.clear(self)
|
QTextEdit.clear(self)
|
||||||
text = "FlatCAM 3000\n(c) 2014-2019 Juan Pablo Caram\n\nType help to get started.\n\n"
|
text = "FlatCAM %s (c)2014-2019 Juan Pablo Caram (Type help to get started)\n\n" % self.version
|
||||||
text = html.escape(text)
|
text = html.escape(text)
|
||||||
text = text.replace('\n', '<br/>')
|
text = text.replace('\n', '<br/>')
|
||||||
self.moveCursor(QTextCursor.End)
|
self.moveCursor(QTextCursor.End)
|
||||||
@@ -174,10 +175,10 @@ class TermWidget(QWidget):
|
|||||||
User pressed Enter. Client class should decide, if command must be executed or user may continue edit it
|
User pressed Enter. Client class should decide, if command must be executed or user may continue edit it
|
||||||
"""
|
"""
|
||||||
|
|
||||||
def __init__(self, *args):
|
def __init__(self, version, *args):
|
||||||
QWidget.__init__(self, *args)
|
QWidget.__init__(self, *args)
|
||||||
|
|
||||||
self._browser = _BrowserTextEdit()
|
self._browser = _BrowserTextEdit(version=version)
|
||||||
self._browser.setStyleSheet("font: 9pt \"Courier\";")
|
self._browser.setStyleSheet("font: 9pt \"Courier\";")
|
||||||
self._browser.setReadOnly(True)
|
self._browser.setReadOnly(True)
|
||||||
self._browser.document().setDefaultStyleSheet(
|
self._browser.document().setDefaultStyleSheet(
|
||||||
@@ -338,8 +339,8 @@ class TermWidget(QWidget):
|
|||||||
self._edit.moveCursor(QTextCursor.End)
|
self._edit.moveCursor(QTextCursor.End)
|
||||||
|
|
||||||
class FCShell(TermWidget):
|
class FCShell(TermWidget):
|
||||||
def __init__(self, sysShell, *args):
|
def __init__(self, sysShell, version, *args):
|
||||||
TermWidget.__init__(self, *args)
|
TermWidget.__init__(self, version, *args)
|
||||||
self._sysShell = sysShell
|
self._sysShell = sysShell
|
||||||
|
|
||||||
def is_command_complete(self, text):
|
def is_command_complete(self, text):
|
||||||
|
|||||||
@@ -43,7 +43,7 @@ class ToolTransform(FlatCAMTool):
|
|||||||
## Layout
|
## Layout
|
||||||
form_layout = QtWidgets.QFormLayout()
|
form_layout = QtWidgets.QFormLayout()
|
||||||
self.transform_lay.addLayout(form_layout)
|
self.transform_lay.addLayout(form_layout)
|
||||||
form_child = QtWidgets.QFormLayout()
|
form_child = QtWidgets.QHBoxLayout()
|
||||||
|
|
||||||
self.rotate_label = QtWidgets.QLabel("Angle:")
|
self.rotate_label = QtWidgets.QLabel("Angle:")
|
||||||
self.rotate_label.setToolTip(
|
self.rotate_label.setToolTip(
|
||||||
@@ -55,7 +55,7 @@ class ToolTransform(FlatCAMTool):
|
|||||||
self.rotate_label.setFixedWidth(50)
|
self.rotate_label.setFixedWidth(50)
|
||||||
|
|
||||||
self.rotate_entry = FCEntry()
|
self.rotate_entry = FCEntry()
|
||||||
self.rotate_entry.setFixedWidth(60)
|
# self.rotate_entry.setFixedWidth(60)
|
||||||
self.rotate_entry.setAlignment(QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter)
|
self.rotate_entry.setAlignment(QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter)
|
||||||
|
|
||||||
self.rotate_button = FCButton()
|
self.rotate_button = FCButton()
|
||||||
@@ -67,7 +67,9 @@ class ToolTransform(FlatCAMTool):
|
|||||||
)
|
)
|
||||||
self.rotate_button.setFixedWidth(60)
|
self.rotate_button.setFixedWidth(60)
|
||||||
|
|
||||||
form_child.addRow(self.rotate_entry, self.rotate_button)
|
form_child.addWidget(self.rotate_entry)
|
||||||
|
form_child.addWidget(self.rotate_button)
|
||||||
|
|
||||||
form_layout.addRow(self.rotate_label, form_child)
|
form_layout.addRow(self.rotate_label, form_child)
|
||||||
|
|
||||||
self.transform_lay.addWidget(self.empty_label1)
|
self.transform_lay.addWidget(self.empty_label1)
|
||||||
@@ -79,8 +81,8 @@ class ToolTransform(FlatCAMTool):
|
|||||||
## Form Layout
|
## Form Layout
|
||||||
form1_layout = QtWidgets.QFormLayout()
|
form1_layout = QtWidgets.QFormLayout()
|
||||||
self.transform_lay.addLayout(form1_layout)
|
self.transform_lay.addLayout(form1_layout)
|
||||||
form1_child_1 = QtWidgets.QFormLayout()
|
form1_child_1 = QtWidgets.QHBoxLayout()
|
||||||
form1_child_2 = QtWidgets.QFormLayout()
|
form1_child_2 = QtWidgets.QHBoxLayout()
|
||||||
|
|
||||||
self.skewx_label = QtWidgets.QLabel("Angle X:")
|
self.skewx_label = QtWidgets.QLabel("Angle X:")
|
||||||
self.skewx_label.setToolTip(
|
self.skewx_label.setToolTip(
|
||||||
@@ -90,7 +92,7 @@ class ToolTransform(FlatCAMTool):
|
|||||||
self.skewx_label.setFixedWidth(50)
|
self.skewx_label.setFixedWidth(50)
|
||||||
self.skewx_entry = FCEntry()
|
self.skewx_entry = FCEntry()
|
||||||
self.skewx_entry.setAlignment(QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter)
|
self.skewx_entry.setAlignment(QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter)
|
||||||
self.skewx_entry.setFixedWidth(60)
|
# self.skewx_entry.setFixedWidth(60)
|
||||||
|
|
||||||
self.skewx_button = FCButton()
|
self.skewx_button = FCButton()
|
||||||
self.skewx_button.set_value("Skew X")
|
self.skewx_button.set_value("Skew X")
|
||||||
@@ -108,7 +110,7 @@ class ToolTransform(FlatCAMTool):
|
|||||||
self.skewy_label.setFixedWidth(50)
|
self.skewy_label.setFixedWidth(50)
|
||||||
self.skewy_entry = FCEntry()
|
self.skewy_entry = FCEntry()
|
||||||
self.skewy_entry.setAlignment(QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter)
|
self.skewy_entry.setAlignment(QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter)
|
||||||
self.skewy_entry.setFixedWidth(60)
|
# self.skewy_entry.setFixedWidth(60)
|
||||||
|
|
||||||
self.skewy_button = FCButton()
|
self.skewy_button = FCButton()
|
||||||
self.skewy_button.set_value("Skew Y")
|
self.skewy_button.set_value("Skew Y")
|
||||||
@@ -118,8 +120,12 @@ class ToolTransform(FlatCAMTool):
|
|||||||
"the bounding box for all selected objects.")
|
"the bounding box for all selected objects.")
|
||||||
self.skewy_button.setFixedWidth(60)
|
self.skewy_button.setFixedWidth(60)
|
||||||
|
|
||||||
form1_child_1.addRow(self.skewx_entry, self.skewx_button)
|
form1_child_1.addWidget(self.skewx_entry)
|
||||||
form1_child_2.addRow(self.skewy_entry, self.skewy_button)
|
form1_child_1.addWidget(self.skewx_button)
|
||||||
|
|
||||||
|
form1_child_2.addWidget(self.skewy_entry)
|
||||||
|
form1_child_2.addWidget(self.skewy_button)
|
||||||
|
|
||||||
form1_layout.addRow(self.skewx_label, form1_child_1)
|
form1_layout.addRow(self.skewx_label, form1_child_1)
|
||||||
form1_layout.addRow(self.skewy_label, form1_child_2)
|
form1_layout.addRow(self.skewy_label, form1_child_2)
|
||||||
|
|
||||||
@@ -132,8 +138,8 @@ class ToolTransform(FlatCAMTool):
|
|||||||
## Form Layout
|
## Form Layout
|
||||||
form2_layout = QtWidgets.QFormLayout()
|
form2_layout = QtWidgets.QFormLayout()
|
||||||
self.transform_lay.addLayout(form2_layout)
|
self.transform_lay.addLayout(form2_layout)
|
||||||
form2_child_1 = QtWidgets.QFormLayout()
|
form2_child_1 = QtWidgets.QHBoxLayout()
|
||||||
form2_child_2 = QtWidgets.QFormLayout()
|
form2_child_2 = QtWidgets.QHBoxLayout()
|
||||||
|
|
||||||
self.scalex_label = QtWidgets.QLabel("Factor X:")
|
self.scalex_label = QtWidgets.QLabel("Factor X:")
|
||||||
self.scalex_label.setToolTip(
|
self.scalex_label.setToolTip(
|
||||||
@@ -142,7 +148,7 @@ class ToolTransform(FlatCAMTool):
|
|||||||
self.scalex_label.setFixedWidth(50)
|
self.scalex_label.setFixedWidth(50)
|
||||||
self.scalex_entry = FCEntry()
|
self.scalex_entry = FCEntry()
|
||||||
self.scalex_entry.setAlignment(QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter)
|
self.scalex_entry.setAlignment(QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter)
|
||||||
self.scalex_entry.setFixedWidth(60)
|
# self.scalex_entry.setFixedWidth(60)
|
||||||
|
|
||||||
self.scalex_button = FCButton()
|
self.scalex_button = FCButton()
|
||||||
self.scalex_button.set_value("Scale X")
|
self.scalex_button.set_value("Scale X")
|
||||||
@@ -159,7 +165,7 @@ class ToolTransform(FlatCAMTool):
|
|||||||
self.scaley_label.setFixedWidth(50)
|
self.scaley_label.setFixedWidth(50)
|
||||||
self.scaley_entry = FCEntry()
|
self.scaley_entry = FCEntry()
|
||||||
self.scaley_entry.setAlignment(QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter)
|
self.scaley_entry.setAlignment(QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter)
|
||||||
self.scaley_entry.setFixedWidth(60)
|
# self.scaley_entry.setFixedWidth(60)
|
||||||
|
|
||||||
self.scaley_button = FCButton()
|
self.scaley_button = FCButton()
|
||||||
self.scaley_button.set_value("Scale Y")
|
self.scaley_button.set_value("Scale Y")
|
||||||
@@ -186,8 +192,12 @@ class ToolTransform(FlatCAMTool):
|
|||||||
"and the center of the biggest bounding box\n"
|
"and the center of the biggest bounding box\n"
|
||||||
"of the selected objects when unchecked.")
|
"of the selected objects when unchecked.")
|
||||||
|
|
||||||
form2_child_1.addRow(self.scalex_entry, self.scalex_button)
|
form2_child_1.addWidget(self.scalex_entry)
|
||||||
form2_child_2.addRow(self.scaley_entry, self.scaley_button)
|
form2_child_1.addWidget(self.scalex_button)
|
||||||
|
|
||||||
|
form2_child_2.addWidget(self.scaley_entry)
|
||||||
|
form2_child_2.addWidget(self.scaley_button)
|
||||||
|
|
||||||
form2_layout.addRow(self.scalex_label, form2_child_1)
|
form2_layout.addRow(self.scalex_label, form2_child_1)
|
||||||
form2_layout.addRow(self.scaley_label, form2_child_2)
|
form2_layout.addRow(self.scaley_label, form2_child_2)
|
||||||
form2_layout.addRow(self.scale_link_cb, self.scale_zero_ref_cb)
|
form2_layout.addRow(self.scale_link_cb, self.scale_zero_ref_cb)
|
||||||
@@ -202,8 +212,8 @@ class ToolTransform(FlatCAMTool):
|
|||||||
## Form Layout
|
## Form Layout
|
||||||
form3_layout = QtWidgets.QFormLayout()
|
form3_layout = QtWidgets.QFormLayout()
|
||||||
self.transform_lay.addLayout(form3_layout)
|
self.transform_lay.addLayout(form3_layout)
|
||||||
form3_child_1 = QtWidgets.QFormLayout()
|
form3_child_1 = QtWidgets.QHBoxLayout()
|
||||||
form3_child_2 = QtWidgets.QFormLayout()
|
form3_child_2 = QtWidgets.QHBoxLayout()
|
||||||
|
|
||||||
self.offx_label = QtWidgets.QLabel("Value X:")
|
self.offx_label = QtWidgets.QLabel("Value X:")
|
||||||
self.offx_label.setToolTip(
|
self.offx_label.setToolTip(
|
||||||
@@ -212,7 +222,7 @@ class ToolTransform(FlatCAMTool):
|
|||||||
self.offx_label.setFixedWidth(50)
|
self.offx_label.setFixedWidth(50)
|
||||||
self.offx_entry = FCEntry()
|
self.offx_entry = FCEntry()
|
||||||
self.offx_entry.setAlignment(QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter)
|
self.offx_entry.setAlignment(QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter)
|
||||||
self.offx_entry.setFixedWidth(60)
|
# self.offx_entry.setFixedWidth(60)
|
||||||
|
|
||||||
self.offx_button = FCButton()
|
self.offx_button = FCButton()
|
||||||
self.offx_button.set_value("Offset X")
|
self.offx_button.set_value("Offset X")
|
||||||
@@ -229,7 +239,7 @@ class ToolTransform(FlatCAMTool):
|
|||||||
self.offy_label.setFixedWidth(50)
|
self.offy_label.setFixedWidth(50)
|
||||||
self.offy_entry = FCEntry()
|
self.offy_entry = FCEntry()
|
||||||
self.offy_entry.setAlignment(QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter)
|
self.offy_entry.setAlignment(QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter)
|
||||||
self.offy_entry.setFixedWidth(60)
|
# self.offy_entry.setFixedWidth(60)
|
||||||
|
|
||||||
self.offy_button = FCButton()
|
self.offy_button = FCButton()
|
||||||
self.offy_button.set_value("Offset Y")
|
self.offy_button.set_value("Offset Y")
|
||||||
@@ -239,8 +249,12 @@ class ToolTransform(FlatCAMTool):
|
|||||||
"the bounding box for all selected objects.\n")
|
"the bounding box for all selected objects.\n")
|
||||||
self.offy_button.setFixedWidth(60)
|
self.offy_button.setFixedWidth(60)
|
||||||
|
|
||||||
form3_child_1.addRow(self.offx_entry, self.offx_button)
|
form3_child_1.addWidget(self.offx_entry)
|
||||||
form3_child_2.addRow(self.offy_entry, self.offy_button)
|
form3_child_1.addWidget(self.offx_button)
|
||||||
|
|
||||||
|
form3_child_2.addWidget(self.offy_entry)
|
||||||
|
form3_child_2.addWidget(self.offy_button)
|
||||||
|
|
||||||
form3_layout.addRow(self.offx_label, form3_child_1)
|
form3_layout.addRow(self.offx_label, form3_child_1)
|
||||||
form3_layout.addRow(self.offy_label, form3_child_2)
|
form3_layout.addRow(self.offy_label, form3_child_2)
|
||||||
|
|
||||||
@@ -252,9 +266,10 @@ class ToolTransform(FlatCAMTool):
|
|||||||
|
|
||||||
## Form Layout
|
## Form Layout
|
||||||
form4_layout = QtWidgets.QFormLayout()
|
form4_layout = QtWidgets.QFormLayout()
|
||||||
|
form4_child_hlay = QtWidgets.QHBoxLayout()
|
||||||
|
self.transform_lay.addLayout(form4_child_hlay)
|
||||||
self.transform_lay.addLayout(form4_layout)
|
self.transform_lay.addLayout(form4_layout)
|
||||||
form4_child = QtWidgets.QFormLayout()
|
form4_child_1 = QtWidgets.QHBoxLayout()
|
||||||
form4_child_1 = QtWidgets.QFormLayout()
|
|
||||||
|
|
||||||
self.flipx_button = FCButton()
|
self.flipx_button = FCButton()
|
||||||
self.flipx_button.set_value("Flip on X")
|
self.flipx_button.set_value("Flip on X")
|
||||||
@@ -296,7 +311,7 @@ class ToolTransform(FlatCAMTool):
|
|||||||
self.flip_ref_label.setFixedWidth(50)
|
self.flip_ref_label.setFixedWidth(50)
|
||||||
self.flip_ref_entry = EvalEntry2("(0, 0)")
|
self.flip_ref_entry = EvalEntry2("(0, 0)")
|
||||||
self.flip_ref_entry.setAlignment(QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter)
|
self.flip_ref_entry.setAlignment(QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter)
|
||||||
self.flip_ref_entry.setFixedWidth(60)
|
# self.flip_ref_entry.setFixedWidth(60)
|
||||||
|
|
||||||
self.flip_ref_button = FCButton()
|
self.flip_ref_button = FCButton()
|
||||||
self.flip_ref_button.set_value("Add")
|
self.flip_ref_button.set_value("Add")
|
||||||
@@ -306,10 +321,13 @@ class ToolTransform(FlatCAMTool):
|
|||||||
"SHIFT key. Then click Add button to insert.")
|
"SHIFT key. Then click Add button to insert.")
|
||||||
self.flip_ref_button.setFixedWidth(60)
|
self.flip_ref_button.setFixedWidth(60)
|
||||||
|
|
||||||
form4_child.addRow(self.flipx_button, self.flipy_button)
|
form4_child_hlay.addStretch()
|
||||||
form4_child_1.addRow(self.flip_ref_entry, self.flip_ref_button)
|
form4_child_hlay.addWidget(self.flipx_button)
|
||||||
|
form4_child_hlay.addWidget(self.flipy_button)
|
||||||
|
|
||||||
|
form4_child_1.addWidget(self.flip_ref_entry)
|
||||||
|
form4_child_1.addWidget(self.flip_ref_button)
|
||||||
|
|
||||||
form4_layout.addRow(self.empty_label, form4_child)
|
|
||||||
form4_layout.addRow(self.flip_ref_cb)
|
form4_layout.addRow(self.flip_ref_cb)
|
||||||
form4_layout.addRow(self.flip_ref_label, form4_child_1)
|
form4_layout.addRow(self.flip_ref_label, form4_child_1)
|
||||||
self.ois_flip = OptionalInputSection(self.flip_ref_cb,
|
self.ois_flip = OptionalInputSection(self.flip_ref_cb,
|
||||||
|
|||||||
Reference in New Issue
Block a user