|
@@ -259,6 +259,7 @@ class App(QtCore.QObject):
|
|
|
"geometry_spindlespeed": self.defaults_form.geometry_group.cncspindlespeed_entry,
|
|
"geometry_spindlespeed": self.defaults_form.geometry_group.cncspindlespeed_entry,
|
|
|
"geometry_paintoverlap": self.defaults_form.geometry_group.paintoverlap_entry,
|
|
"geometry_paintoverlap": self.defaults_form.geometry_group.paintoverlap_entry,
|
|
|
"geometry_paintmargin": self.defaults_form.geometry_group.paintmargin_entry,
|
|
"geometry_paintmargin": self.defaults_form.geometry_group.paintmargin_entry,
|
|
|
|
|
+ "geometry_selectmethod": self.defaults_form.geometry_group.selectmethod_combo,
|
|
|
"cncjob_plot": self.defaults_form.cncjob_group.plot_cb,
|
|
"cncjob_plot": self.defaults_form.cncjob_group.plot_cb,
|
|
|
"cncjob_tooldia": self.defaults_form.cncjob_group.tooldia_entry,
|
|
"cncjob_tooldia": self.defaults_form.cncjob_group.tooldia_entry,
|
|
|
"cncjob_prepend": self.defaults_form.cncjob_group.prepend_text,
|
|
"cncjob_prepend": self.defaults_form.cncjob_group.prepend_text,
|
|
@@ -304,6 +305,7 @@ class App(QtCore.QObject):
|
|
|
"geometry_painttooldia": 0.07,
|
|
"geometry_painttooldia": 0.07,
|
|
|
"geometry_paintoverlap": 0.15,
|
|
"geometry_paintoverlap": 0.15,
|
|
|
"geometry_paintmargin": 0.0,
|
|
"geometry_paintmargin": 0.0,
|
|
|
|
|
+ "geometry_selectmethod": "single",
|
|
|
"cncjob_plot": True,
|
|
"cncjob_plot": True,
|
|
|
"cncjob_tooldia": 0.016,
|
|
"cncjob_tooldia": 0.016,
|
|
|
"cncjob_prepend": "",
|
|
"cncjob_prepend": "",
|
|
@@ -397,6 +399,7 @@ class App(QtCore.QObject):
|
|
|
"geometry_painttooldia": self.options_form.geometry_group.painttooldia_entry,
|
|
"geometry_painttooldia": self.options_form.geometry_group.painttooldia_entry,
|
|
|
"geometry_paintoverlap": self.options_form.geometry_group.paintoverlap_entry,
|
|
"geometry_paintoverlap": self.options_form.geometry_group.paintoverlap_entry,
|
|
|
"geometry_paintmargin": self.options_form.geometry_group.paintmargin_entry,
|
|
"geometry_paintmargin": self.options_form.geometry_group.paintmargin_entry,
|
|
|
|
|
+ "geometry_selectmethod": self.options_form.geometry_group.selectmethod_combo,
|
|
|
"cncjob_plot": self.options_form.cncjob_group.plot_cb,
|
|
"cncjob_plot": self.options_form.cncjob_group.plot_cb,
|
|
|
"cncjob_tooldia": self.options_form.cncjob_group.tooldia_entry,
|
|
"cncjob_tooldia": self.options_form.cncjob_group.tooldia_entry,
|
|
|
"cncjob_prepend": self.options_form.cncjob_group.prepend_text,
|
|
"cncjob_prepend": self.options_form.cncjob_group.prepend_text,
|
|
@@ -439,12 +442,15 @@ class App(QtCore.QObject):
|
|
|
"geometry_painttooldia": 0.07,
|
|
"geometry_painttooldia": 0.07,
|
|
|
"geometry_paintoverlap": 0.15,
|
|
"geometry_paintoverlap": 0.15,
|
|
|
"geometry_paintmargin": 0.0,
|
|
"geometry_paintmargin": 0.0,
|
|
|
|
|
+ "geometry_selectmethod": "single",
|
|
|
"cncjob_plot": True,
|
|
"cncjob_plot": True,
|
|
|
"cncjob_tooldia": 0.016,
|
|
"cncjob_tooldia": 0.016,
|
|
|
"cncjob_prepend": "",
|
|
"cncjob_prepend": "",
|
|
|
"cncjob_append": "",
|
|
"cncjob_append": "",
|
|
|
- "background_timeout": 300000, #default value is 5 minutes
|
|
|
|
|
- "verbose_error_level": 0, # shell verbosity 0 = default(python trace only for unknown errors), 1 = show trace(show trace allways), 2 = (For the future).
|
|
|
|
|
|
|
+ "background_timeout": 300000, # Default value is 5 minutes
|
|
|
|
|
+ "verbose_error_level": 0, # Shell verbosity:
|
|
|
|
|
+ # 0 = default(python trace only for unknown errors),
|
|
|
|
|
+ # 1 = show trace(show trace allways), 2 = (For the future).
|
|
|
})
|
|
})
|
|
|
self.options.update(self.defaults) # Copy app defaults to project options
|
|
self.options.update(self.defaults) # Copy app defaults to project options
|
|
|
#self.options_write_form()
|
|
#self.options_write_form()
|
|
@@ -877,13 +883,13 @@ class App(QtCore.QObject):
|
|
|
#self.shell.append_error("?\n")
|
|
#self.shell.append_error("?\n")
|
|
|
self.shell.append_error(str(e) + "\n")
|
|
self.shell.append_error(str(e) + "\n")
|
|
|
|
|
|
|
|
- def info(self, msg):
|
|
|
|
|
|
|
+ def info(self, msg, toshell=True):
|
|
|
"""
|
|
"""
|
|
|
Informs the user. Normally on the status bar, optionally
|
|
Informs the user. Normally on the status bar, optionally
|
|
|
also on the shell.
|
|
also on the shell.
|
|
|
|
|
|
|
|
:param msg: Text to write.
|
|
:param msg: Text to write.
|
|
|
- :param toshell: Forward the
|
|
|
|
|
|
|
+ :param toshell: Forward the meesage to the shell.
|
|
|
:return: None
|
|
:return: None
|
|
|
"""
|
|
"""
|
|
|
|
|
|
|
@@ -894,12 +900,15 @@ class App(QtCore.QObject):
|
|
|
msg_ = match.group(2)
|
|
msg_ = match.group(2)
|
|
|
self.ui.fcinfo.set_status(QtCore.QString(msg_), level=level)
|
|
self.ui.fcinfo.set_status(QtCore.QString(msg_), level=level)
|
|
|
|
|
|
|
|
- error = level == "error" or level == "warning"
|
|
|
|
|
- self.shell_message(msg, error=error, show=True)
|
|
|
|
|
|
|
+ if toshell:
|
|
|
|
|
+ error = level == "error" or level == "warning"
|
|
|
|
|
+ self.shell_message(msg, error=error, show=True)
|
|
|
|
|
|
|
|
else:
|
|
else:
|
|
|
self.ui.fcinfo.set_status(QtCore.QString(msg), level="info")
|
|
self.ui.fcinfo.set_status(QtCore.QString(msg), level="info")
|
|
|
- self.shell_message(msg)
|
|
|
|
|
|
|
+
|
|
|
|
|
+ if toshell:
|
|
|
|
|
+ self.shell_message(msg)
|
|
|
|
|
|
|
|
def load_defaults(self):
|
|
def load_defaults(self):
|
|
|
"""
|
|
"""
|
|
@@ -981,6 +990,11 @@ class App(QtCore.QObject):
|
|
|
this is, updates the GUI accordingly, any other records and plots it.
|
|
this is, updates the GUI accordingly, any other records and plots it.
|
|
|
This method is thread-safe.
|
|
This method is thread-safe.
|
|
|
|
|
|
|
|
|
|
+ Notes:
|
|
|
|
|
+ * If the name is in use, the self.collection will modify it
|
|
|
|
|
+ when appending it to the collection. There is no need to handle
|
|
|
|
|
+ name conflicts here.
|
|
|
|
|
+
|
|
|
:param kind: The kind of object to create. One of 'gerber',
|
|
:param kind: The kind of object to create. One of 'gerber',
|
|
|
'excellon', 'cncjob' and 'geometry'.
|
|
'excellon', 'cncjob' and 'geometry'.
|
|
|
:type kind: str
|
|
:type kind: str
|
|
@@ -998,19 +1012,6 @@ class App(QtCore.QObject):
|
|
|
|
|
|
|
|
t0 = time.time() # Debug
|
|
t0 = time.time() # Debug
|
|
|
|
|
|
|
|
- ### Check for existing name
|
|
|
|
|
- # while name in self.collection.get_names():
|
|
|
|
|
- # ## Create a new name
|
|
|
|
|
- # # Ends with number?
|
|
|
|
|
- # App.log.debug("new_object(): Object name (%s) exists, changing." % name)
|
|
|
|
|
- # match = re.search(r'(.*[^\d])?(\d+)$', name)
|
|
|
|
|
- # if match: # Yes: Increment the number!
|
|
|
|
|
- # base = match.group(1) or ''
|
|
|
|
|
- # num = int(match.group(2))
|
|
|
|
|
- # name = base + str(num + 1)
|
|
|
|
|
- # else: # No: add a number!
|
|
|
|
|
- # name += "_1"
|
|
|
|
|
-
|
|
|
|
|
## Create object
|
|
## Create object
|
|
|
classdict = {
|
|
classdict = {
|
|
|
"gerber": FlatCAMGerber,
|
|
"gerber": FlatCAMGerber,
|