From 38d69570094deddcf467b9c058d115193da86f5b Mon Sep 17 00:00:00 2001 From: Juan Pablo Caram Date: Fri, 15 Jul 2016 22:23:48 -0400 Subject: [PATCH] Added SVG-to-GCode flow test. --- FlatCAMApp.py | 38 ++++++++++++++++++++++++++++++-------- FlatCAMGUI.py | 7 +++++-- FlatCAMVersion.py | 22 ++++++++++++++++++++++ sandbox/prepare_release.py | 0 4 files changed, 57 insertions(+), 10 deletions(-) create mode 100644 FlatCAMVersion.py create mode 100644 sandbox/prepare_release.py diff --git a/FlatCAMApp.py b/FlatCAMApp.py index c9e6daaf..3e93c6a8 100644 --- a/FlatCAMApp.py +++ b/FlatCAMApp.py @@ -1,4 +1,5 @@ -import sys, traceback +import sys +import traceback import urllib import getopt import random @@ -16,6 +17,7 @@ from contextlib import contextmanager ######################################## ## Imports part of FlatCAM ## ######################################## +import FlatCAMVersion from FlatCAMWorker import Worker from ObjectCollection import * from FlatCAMObj import * @@ -64,7 +66,9 @@ class App(QtCore.QObject): ## Version version = 8.5 - version_date = "2016/7" + #version_date_str = "2016/7" + version_date = (0, 0, 0) + version_name = None ## URL for update checks and statistics version_url = "http://flatcam.org/version" @@ -115,6 +119,13 @@ class App(QtCore.QObject): # in the worker task. thread_exception = QtCore.pyqtSignal(object) + @property + def version_date_str(self): + return "{:4d}/{:02d}".format( + self.version_date[0], + self.version_date[1] + ) + def __init__(self, user_defaults=True, post_gui=None): """ Starts the application. @@ -123,6 +134,8 @@ class App(QtCore.QObject): :rtype: App """ + FlatCAMVersion.setup(self) + App.log.info("FlatCAM Starting...") ################### @@ -184,7 +197,7 @@ class App(QtCore.QObject): QtCore.QObject.__init__(self) - self.ui = FlatCAMGUI(self.version) + self.ui = FlatCAMGUI(self.version, name=self.version_name) self.connect(self.ui, QtCore.SIGNAL("geomUpdate(int, int, int, int)"), self.save_geometry) @@ -549,7 +562,11 @@ class App(QtCore.QObject): self.shell.setWindowIcon(self.ui.app_icon) self.shell.setWindowTitle("FlatCAM Shell") self.shell.resize(*self.defaults["shell_shape"]) - self.shell.append_output("FlatCAM %s\n(c) 2014-2015 Juan Pablo Caram\n\n" % self.version) + self.shell.append_output("FlatCAM {}".format(self.version)) + if self.version_name: + self.shell.append_output(" - {}".format(self.version_name)) + self.shell.append_output("\n(c) 2014-{} Juan Pablo Caram\n\n".format( + self.version_date[0])) self.shell.append_output("Type help to get started.\n\n") self.init_tcl() @@ -583,7 +600,7 @@ class App(QtCore.QObject): App.log.debug("END of constructor. Releasing control.") def init_tcl(self): - if hasattr(self,'tcl'): + if hasattr(self, 'tcl'): # self.tcl = None # TODO we need to clean non default variables and procedures here # new object cannot be used here as it will not remember values created for next passes, @@ -1063,7 +1080,8 @@ class App(QtCore.QObject): self.report_usage("on_about") version = self.version - version_date = self.version_date + version_date_str = self.version_date_str + version_year = self.version_date[0] class AboutDialog(QtGui.QDialog): def __init__(self, parent=None): @@ -1085,12 +1103,16 @@ class App(QtCore.QObject): title = QtGui.QLabel( "FlatCAM
" - "Version %s (%s)
" + "Version {} ({})
" "
" "2D Computer-Aided Printed Circuit Board
" "Manufacturing.
" "
" - "(c) 2014-2015 Juan Pablo Caram" % (version, version_date) + "(c) 2014-{} Juan Pablo Caram".format( + version, + version_date_str, + version_year + ) ) layout2.addWidget(title, stretch=1) diff --git a/FlatCAMGUI.py b/FlatCAMGUI.py index 9f22faa5..908152e6 100644 --- a/FlatCAMGUI.py +++ b/FlatCAMGUI.py @@ -7,7 +7,7 @@ class FlatCAMGUI(QtGui.QMainWindow): # Emitted when persistent window geometry needs to be retained geom_update = QtCore.pyqtSignal(int, int, int, int, name='geomUpdate') - def __init__(self, version): + def __init__(self, version, name=None): super(FlatCAMGUI, self).__init__() # Divine icon pack by Ipapun @ finicons.com @@ -248,7 +248,10 @@ class FlatCAMGUI(QtGui.QMainWindow): self.setWindowIcon(self.app_icon) self.setGeometry(100, 100, 1024, 650) - self.setWindowTitle('FlatCAM %s - Development Version' % version) + title = 'FlatCAM {}'.format(version) + if name is not None: + title += ' - {}'.format(name) + self.setWindowTitle(title) self.show() def closeEvent(self, event): diff --git a/FlatCAMVersion.py b/FlatCAMVersion.py new file mode 100644 index 00000000..f5935cfc --- /dev/null +++ b/FlatCAMVersion.py @@ -0,0 +1,22 @@ +import logging + +version = { + "number": 8.5, + "date": (2016, 7, 1), # Year, Month, Day + "name": None, + "release": True, +} + + +def setup(app): + app.version = version["number"] + app.version_date = version["date"] + if version["release"]: + app.log.setLevel(logging.WARNING) + else: + app.log.setLevel(logging.DEBUG) + + if version["name"] is None and version["release"] == False: + app.version_name = "Development Version" + else: + app.version_name = version["name"] diff --git a/sandbox/prepare_release.py b/sandbox/prepare_release.py new file mode 100644 index 00000000..e69de29b