From e10b2de0bec4836b2dc134d56ed573ad1d633ce3 Mon Sep 17 00:00:00 2001
From: fahim
Date: Tue, 7 Apr 2015 15:32:15 +0530
Subject: Subject: Added new Icon images and Modified code to get model from
xml file
Description: Started the work to get the details of model parameter from xml.
---
src/configuration/Appconfig.py | 2 +-
src/configuration/Appconfig.pyc | Bin 1303 -> 1303 bytes
src/frontEnd/Application.py | 20 +-
src/images/closeProject.png | Bin 0 -> 43683 bytes
src/images/helpProject.png | Bin 0 -> 44903 bytes
src/images/helpProject.svg | 604 ++++++++++++++++++++++++++++++++++
src/images/newProject.png | Bin 0 -> 53055 bytes
src/images/newProject_test.png | Bin 0 -> 58704 bytes
src/images/openProject.png | Bin 0 -> 49794 bytes
src/images/warning.png | Bin 0 -> 64071 bytes
src/kicadtoNgspice/Convert.py | 13 +-
src/kicadtoNgspice/KicadtoNgspice.py | 47 ++-
src/kicadtoNgspice/KicadtoNgspice.pyc | Bin 3987 -> 4289 bytes
src/kicadtoNgspice/Processing.py | 98 +++++-
src/kicadtoNgspice/Source.py | 7 +
src/kicadtoNgspice/TrackWidget.py | 5 +-
src/modelParamXML/Analog/gain.xml | 11 +
src/modelParamXML/Analog/temp.xml | 11 +
src/modelParamXML/Digital/gains.xml | 11 +
src/modelParamXML/Digital/test.xml | 11 +
src/projManagement/Kicad.py | 3 +-
src/projManagement/Kicad.pyc | Bin 4085 -> 4108 bytes
src/projManagement/Worker.py | 10 +-
src/projManagement/Worker.pyc | Bin 1257 -> 1173 bytes
src/projManagement/newProject.py | 1 -
src/projManagement/newProject.pyc | Bin 3836 -> 3816 bytes
26 files changed, 820 insertions(+), 34 deletions(-)
create mode 100644 src/images/closeProject.png
create mode 100644 src/images/helpProject.png
create mode 100644 src/images/helpProject.svg
create mode 100644 src/images/newProject.png
create mode 100644 src/images/newProject_test.png
create mode 100644 src/images/openProject.png
create mode 100644 src/images/warning.png
create mode 100644 src/modelParamXML/Analog/gain.xml
create mode 100644 src/modelParamXML/Analog/temp.xml
create mode 100644 src/modelParamXML/Digital/gains.xml
create mode 100644 src/modelParamXML/Digital/test.xml
(limited to 'src')
diff --git a/src/configuration/Appconfig.py b/src/configuration/Appconfig.py
index bf3c4140..5735534b 100644
--- a/src/configuration/Appconfig.py
+++ b/src/configuration/Appconfig.py
@@ -34,7 +34,7 @@ class Appconfig(QtGui.QWidget):
#Workspace detail
workspace_text = '''ecSim stores your project in a folder called a workspace. You can choose a different workspace folder to use for this session.'''
-
+
def __init__(self):
super(Appconfig, self).__init__()
diff --git a/src/configuration/Appconfig.pyc b/src/configuration/Appconfig.pyc
index 2229b859..a9348ab9 100644
Binary files a/src/configuration/Appconfig.pyc and b/src/configuration/Appconfig.pyc differ
diff --git a/src/frontEnd/Application.py b/src/frontEnd/Application.py
index e52ac45b..1d6b4f03 100755
--- a/src/frontEnd/Application.py
+++ b/src/frontEnd/Application.py
@@ -57,20 +57,21 @@ class Application(QtGui.QMainWindow):
def initActions(self):
-
- self.newproj = QtGui.QAction(QtGui.QIcon('../images/newProject.svg'),'New Project',self)
+
+ self.newproj = QtGui.QAction(QtGui.QIcon('../images/newProject.png'),'New Project',self)
self.newproj.setShortcut('Ctrl+N')
self.newproj.triggered.connect(self.new_project)
- self.openproj = QtGui.QAction(QtGui.QIcon('../images/openProject.svg'),'Open Project',self)
+
+ self.openproj = QtGui.QAction(QtGui.QIcon('../images/openProject.png'),'Open Project',self)
self.openproj.setShortcut('Ctrl+O')
self.openproj.triggered.connect(self.open_project)
- self.exitproj = QtGui.QAction(QtGui.QIcon('../images/closeProject.svg'),'Exit',self)
+ self.exitproj = QtGui.QAction(QtGui.QIcon('../images/closeProject.png'),'Exit',self)
self.exitproj.setShortcut('Ctrl+X')
self.exitproj.triggered.connect(self.exit_project)
- self.helpfile = QtGui.QAction(QtGui.QIcon('../images/default.png'),'Help',self)
+ self.helpfile = QtGui.QAction(QtGui.QIcon('../images/helpProject.png'),'Help',self)
self.helpfile.setShortcut('Ctrl+H')
self.helpfile.triggered.connect(self.help_project)
@@ -79,6 +80,10 @@ class Application(QtGui.QMainWindow):
self.mainToolbar.addAction(self.openproj)
self.mainToolbar.addAction(self.exitproj)
self.mainToolbar.addAction(self.helpfile)
+
+ #self.test = self.addToolBar("Temp")
+
+
def initView(self):
@@ -101,12 +106,13 @@ class Application(QtGui.QMainWindow):
def exit_project(self):
print "Exit Project called"
- self.close()
+ self.destroy()
def help_project(self):
print "Help is called"
print "Current Project : ",self.obj_appconfig.current_project
- print "Sourcelist track : ",self.obj_appconfig.sourcelisttrack
+
+
def testing(self):
print "Sucess hit kicad button"
diff --git a/src/images/closeProject.png b/src/images/closeProject.png
new file mode 100644
index 00000000..2aa0dbb4
Binary files /dev/null and b/src/images/closeProject.png differ
diff --git a/src/images/helpProject.png b/src/images/helpProject.png
new file mode 100644
index 00000000..1be6a7bc
Binary files /dev/null and b/src/images/helpProject.png differ
diff --git a/src/images/helpProject.svg b/src/images/helpProject.svg
new file mode 100644
index 00000000..27252661
--- /dev/null
+++ b/src/images/helpProject.svg
@@ -0,0 +1,604 @@
+
+
+
+
diff --git a/src/images/newProject.png b/src/images/newProject.png
new file mode 100644
index 00000000..edc9b9bb
Binary files /dev/null and b/src/images/newProject.png differ
diff --git a/src/images/newProject_test.png b/src/images/newProject_test.png
new file mode 100644
index 00000000..86588f15
Binary files /dev/null and b/src/images/newProject_test.png differ
diff --git a/src/images/openProject.png b/src/images/openProject.png
new file mode 100644
index 00000000..c755399a
Binary files /dev/null and b/src/images/openProject.png differ
diff --git a/src/images/warning.png b/src/images/warning.png
new file mode 100644
index 00000000..e3dee87a
Binary files /dev/null and b/src/images/warning.png differ
diff --git a/src/kicadtoNgspice/Convert.py b/src/kicadtoNgspice/Convert.py
index 3d45f94a..26010d9e 100644
--- a/src/kicadtoNgspice/Convert.py
+++ b/src/kicadtoNgspice/Convert.py
@@ -8,13 +8,12 @@ class Convert:
self.entry_var = source_entry_var
self.sourcelistvalue = []
- self.analysisInserter()
-
+
def addSourceParameter(self):
print "Adding Source parameter"
- print "SourceListTrack : ",self.sourcelisttrack
- print "Schematic Info ",self.schematicInfo
- print "Entry Var",self.entry_var
+ #print "SourceListTrack : ",self.sourcelisttrack
+ #print "Schematic Info ",self.schematicInfo
+ #print "Entry Var",self.entry_var
self.start = 0
self.end = 0
@@ -107,5 +106,5 @@ class Convert:
return self.schematicInfo
- def analysisInserter(self):
- print "Adding Analysis"
\ No newline at end of file
+ def addModelParameter(self,schematicInfo):
+ print "Schematic info after adding source detail",schematicInfo
\ No newline at end of file
diff --git a/src/kicadtoNgspice/KicadtoNgspice.py b/src/kicadtoNgspice/KicadtoNgspice.py
index ecf951cd..55e6c360 100644
--- a/src/kicadtoNgspice/KicadtoNgspice.py
+++ b/src/kicadtoNgspice/KicadtoNgspice.py
@@ -16,7 +16,6 @@
# REVISION: ---
#===============================================================================
import sys
-import os
from PyQt4 import QtGui,QtCore
from Processing import PrcocessNetlist
import Analysis
@@ -32,8 +31,10 @@ class MainWindow(QtGui.QWidget):
QtGui.QWidget.__init__(self)
#Create object of track widget
self.obj_track = TrackWidget.TrackWidget()
-
+
print "Init Kicad to Ngspice"
+ #print "Current Project",sys.argv[1]
+
#Creating GUI for kicadtoNgspice window
self.grid = QtGui.QGridLayout(self)
@@ -92,7 +93,9 @@ class MainWindow(QtGui.QWidget):
#Adding Source Value to Schematic Info
schematicInfo = self.obj_convert.addSourceParameter()
-
+ #print "Schematic After adding source parameter",schematicInfo
+ schematicInfo = self.obj_convert.addModelParameter(schematicInfo)
+
@@ -102,8 +105,8 @@ def main(args):
print "Kicad to Ngspice netlist converter "
print "=================================="
global kicadFile,kicadNetlist,schematicInfo
- kicadFile = "/home/fahim/eSim-Workspace/BJT_amplifier/BJT_amplifier.cir"
- #kicadFile = sys.argv[1]
+ #kicadFile = "/home/fahim/eSim-Workspace/BJT_amplifier/BJT_amplifier.cir"
+ kicadFile = sys.argv[1]
#Object of Processing
obj_proc = PrcocessNetlist()
@@ -127,32 +130,54 @@ def main(args):
print "SCHEMATICINFO",schematicInfo
#Getting model and subckt list
- modelList=[]
+ devicemodelList=[]
subcktList=[]
- modelList,subcktList = obj_proc.getModelSubcktList(schematicInfo,modelList,subcktList)
+ devicemodelList,subcktList = obj_proc.getModelSubcktList(schematicInfo,devicemodelList,subcktList)
- print "MODEL LIST ",modelList
+ print "MODEL LIST ",devicemodelList
print "SUBCKT ",subcktList
#List for storing source and its value
global sourcelist, sourcelisttrack
sourcelist=[]
sourcelisttrack=[]
- schematicInfo,sourcelist=obj_proc.insertSpecialSourceParam(schematicInfo,sourcelist)
+ schematicInfo,sourcelist = obj_proc.insertSpecialSourceParam(schematicInfo,sourcelist)
print "SOURCELIST",sourcelist
print "SCHEMATICINFO",schematicInfo
-
-
+ #List storing model detail
+ global modelList,outputOption
+ modelList = []
+ outputOption = []
+ schematicInfo,outputOption,modelList,unknownModelList,multipleModelList = obj_proc.convertICintoBasicBlocks(schematicInfo,outputOption,modelList)
+ print "Unknown Model List",unknownModelList
+ print "Multple Model List",multipleModelList
+
+
+
+ #Checking for unknown Model List and Multiple Model List
+ if unknownModelList:
+ print "ErrorMessage : These Models are not available.Please check it",unknownModelList
+ sys.exit(2)
+ else:
+ if multipleModelList:
+ print "ErrorMessage: There are multiple model for same name. Please check it",multipleModelList
+ sys.exit(2)
+ else:
+ pass
+
app = QtGui.QApplication(args)
#app.setApplicationName("KicadToNgspice")
#app.setQuitOnLastWindowClosed(True)
kingWindow = MainWindow()
kingWindow.show()
sys.exit(app.exec_())
+
+
+
if __name__ == '__main__':
main(sys.argv)
diff --git a/src/kicadtoNgspice/KicadtoNgspice.pyc b/src/kicadtoNgspice/KicadtoNgspice.pyc
index ece6486f..5a3f1e57 100644
Binary files a/src/kicadtoNgspice/KicadtoNgspice.pyc and b/src/kicadtoNgspice/KicadtoNgspice.pyc differ
diff --git a/src/kicadtoNgspice/Processing.py b/src/kicadtoNgspice/Processing.py
index 4dee9446..3a2bcb37 100644
--- a/src/kicadtoNgspice/Processing.py
+++ b/src/kicadtoNgspice/Processing.py
@@ -1,8 +1,14 @@
+import sys
+import os
+from xml.etree import ElementTree as ET
+
+
class PrcocessNetlist:
+ modelxmlDIR = '../modelParamXML'
def __init__(self):
pass
-
+
def readNetlist(self,filename):
f = open(filename)
data=f.read()
@@ -92,13 +98,18 @@ class PrcocessNetlist:
modelName=words[4]
index=schematicInfo.index(eachline)
schematicInfo.remove(eachline)
+ '''
width=raw_input(' Enter width of mosfet '+words[0]+'(default=100u):')
length=raw_input(' Enter length of mosfet '+words[0]+'(default=100u):')
multiplicative_factor=raw_input(' Enter multiplicative factor of mosfet '+words[0]+'(default=1):')
+
if width=="": width="100u"
if multiplicative_factor=="": multiplicative_factor="100u"
if length=="": length="100u"
schematicInfo.insert(index,words[0]+" "+words[1]+" "+words[2]+" "+words[3]+" "+words[3]+" "+words[4]+" "+'M='+multiplicative_factor+" "+'L='+length+" "+'W='+width)
+ '''
+
+ schematicInfo.insert(index,words[0]+" "+words[1]+" "+words[2]+" "+words[3]+" "+words[3]+" "+words[4])
if modelName in modelList:
continue
modelList.append(modelName)
@@ -191,4 +202,89 @@ class PrcocessNetlist:
return schematicInfo,sourcelist
+ def convertICintoBasicBlocks(self,schematicInfo,outputOption,modelList):
+ #Insert details of Ngspice model
+ unknownModelList = []
+ multipleModelList = []
+ k = 1
+ for compline in schematicInfo:
+ words = compline.split()
+ compName = words[0]
+ # Find the IC from schematic
+ if compName[0]=='u':
+ # Find the component from the circuit
+ index=schematicInfo.index(compline)
+ compType=words[len(words)-1];
+ schematicInfo.remove(compline)
+ print "Compline",compline
+ print "CompType",compType
+ print "Words",words
+ print "compName",compName
+ #Looking if model file is present
+ xmlfile = compType+".xml" #XML Model File
+ count = 0 #Check if model of same name is present
+ modelPath = []
+ all_dir = [x[0] for x in os.walk(PrcocessNetlist.modelxmlDIR)]
+ for each_dir in all_dir:
+ all_file = os.listdir(each_dir)
+ if xmlfile in all_file:
+ count += 1
+ modelPath.append(os.path.join(each_dir,xmlfile))
+
+ if count > 1:
+ multipleModelList.append(modelPath)
+ elif count == 0:
+ unknownModelList.append(compType)
+ elif count == 1:
+ try:
+ tree = ET.parse(modelPath[0])
+ #root = parsemodel.getroot()
+ for child in tree.iter():
+ print "Child Item",child
+ #print "Tag",child.tag
+ #print "Tag Value",child.text
+
+ except:
+ print "Unable to parse the model, Please check your your xml file"
+ sys.exit(2)
+
+ #print "Count",count
+ #print "UnknownModelList",unknownModelList
+ #print "MultipleModelList",multipleModelList
+ '''
+ if compType=="gain":
+ schematicInfo.append("a"+str(k)+" "+words[1]+" "+words[2]+" "+compName)
+ k=k+1
+ #Insert comment at remove line
+ schematicInfo.insert(index,"* "+compline)
+ print "-----------------------------------------------------------\n"
+ print "Adding Gain"
+ Comment='* Gain '+compType
+ Title='Add parameters for Gain '+compName
+ in_offset=' Enter offset for input (default=0.0): '
+ gain=' Enter gain (default=1.0): '
+ out_offset=' Enter offset for output (default=0.0): '
+ print "-----------------------------------------------------------"
+ modelList.append([index,compline,compType,compName,Comment,Title,in_offset,gain,out_offset])
+ elif compType=="summer":
+ schematicInfo.append("a"+str(k)+" ["+words[1]+" "+words[2]+"] "+words[3]+" "+compName)
+ k=k+1
+ #Insert comment at remove line
+ schematicInfo.insert(index,"* "+compline)
+ print "-----------------------------------------------------------\n"
+ print "Adding summer"
+ Comment='* Summer '+compType
+ Title='Add parameters for Summer '+compName
+ in1_offset=' Enter offset for input 1 (default=0.0): '
+ in2_offset=' Enter offset for input 2 (default=0.0): '
+ in1_gain=' Enter gain for input 1 (default=1.0): '
+ in2_gain=' Enter gain for input 2 (default=1.0): '
+ out_gain=' Enter gain for output (default=1.0): '
+ out_offset=' Enter offset for output (default=0.0): '
+ print "-----------------------------------------------------------"
+ modelList.append([index,compline,compType,compName,Comment,Title,in1_offset,in2_offset,in1_gain,in2_gain,out_gain,out_offset])
+ '''
+ return schematicInfo,outputOption,modelList,unknownModelList,multipleModelList
+
+
\ No newline at end of file
diff --git a/src/kicadtoNgspice/Source.py b/src/kicadtoNgspice/Source.py
index 657a980c..ee460cb0 100644
--- a/src/kicadtoNgspice/Source.py
+++ b/src/kicadtoNgspice/Source.py
@@ -16,6 +16,7 @@ class Source(QtGui.QWidget):
self.end = 0
self.row = 0
self.entry_var = {}
+ #self.font = QtGui.QFont("Times",20,QtGui.QFont.Bold,True)
#Creating Source Widget
self.createSourceWidget(sourcelist,sourcelisttrack)
@@ -41,6 +42,7 @@ class Source(QtGui.QWidget):
label=QtGui.QLabel(line[4])
self.grid.addWidget(label,self.row,0)
self.entry_var[self.count]=QtGui.QLineEdit()
+ self.entry_var[self.count].setMaximumWidth(150)
self.grid.addWidget(self.entry_var[self.count],self.row,1)
#Value Need to check previuouse value
self.entry_var[self.count].setText("")
@@ -57,6 +59,7 @@ class Source(QtGui.QWidget):
label=QtGui.QLabel(line[4])
self.grid.addWidget(label,self.row,0)
self.entry_var[self.count]=QtGui.QLineEdit()
+ self.entry_var[self.count].setMaximumWidth(150)
self.grid.addWidget(self.entry_var[self.count],self.row,1)
self.entry_var[self.count].setText("")
self.row=self.row+1
@@ -74,6 +77,7 @@ class Source(QtGui.QWidget):
label=QtGui.QLabel(line[it])
self.grid.addWidget(label,self.row,0)
self.entry_var[self.count]=QtGui.QLineEdit()
+ self.entry_var[self.count].setMaximumWidth(150)
self.grid.addWidget(self.entry_var[self.count],self.row,1)
self.entry_var[self.count].setText("")
self.row=self.row+1
@@ -90,6 +94,7 @@ class Source(QtGui.QWidget):
label=QtGui.QLabel(line[it])
self.grid.addWidget(label,self.row,0)
self.entry_var[self.count]=QtGui.QLineEdit()
+ self.entry_var[self.count].setMaximumWidth(150)
self.grid.addWidget(self.entry_var[self.count],self.row,1)
self.entry_var[self.count].setText("")
self.row=self.row+1
@@ -105,6 +110,7 @@ class Source(QtGui.QWidget):
label=QtGui.QLabel(line[4])
self.grid.addWidget(label,self.row,0)
self.entry_var[self.count]=QtGui.QLineEdit()
+ self.entry_var[self.count].setMaximumWidth(150)
self.grid.addWidget(self.entry_var[self.count],self.row,1)
self.entry_var[self.count].setText("");
self.row=self.row+1
@@ -121,6 +127,7 @@ class Source(QtGui.QWidget):
label=QtGui.QLabel(line[it])
self.grid.addWidget(label,self.row,0)
self.entry_var[self.count]=QtGui.QLineEdit()
+ self.entry_var[self.count].setMaximumWidth(150)
self.grid.addWidget(self.entry_var[self.count],self.row,1)
self.entry_var[self.count].setText("")
self.row=self.row+1
diff --git a/src/kicadtoNgspice/TrackWidget.py b/src/kicadtoNgspice/TrackWidget.py
index 0b11d938..1c600d79 100644
--- a/src/kicadtoNgspice/TrackWidget.py
+++ b/src/kicadtoNgspice/TrackWidget.py
@@ -1,9 +1,8 @@
class TrackWidget:
"""
This Class track the widget of Kicad to NgSpice converter
- module in the form of list
+ module.
"""
sourcelisttrack = {"ITEMS":"None"}
source_entry_var = {"ITEMS":"None"}
- analysis_entry_var = {"ITEMS":"NONE"}
- analysis_type = {"ITEMS":"NONE"}
\ No newline at end of file
+
\ No newline at end of file
diff --git a/src/modelParamXML/Analog/gain.xml b/src/modelParamXML/Analog/gain.xml
new file mode 100644
index 00000000..2bce2a66
--- /dev/null
+++ b/src/modelParamXML/Analog/gain.xml
@@ -0,0 +1,11 @@
+
+gain
+Analog
+2
+Add Parameter for model gain
+
+ Enter offset for input (default=0.0):
+ Enter gain (default=1.0):
+ Enter offset for output (default=0.0):
+
+
\ No newline at end of file
diff --git a/src/modelParamXML/Analog/temp.xml b/src/modelParamXML/Analog/temp.xml
new file mode 100644
index 00000000..2bce2a66
--- /dev/null
+++ b/src/modelParamXML/Analog/temp.xml
@@ -0,0 +1,11 @@
+
+gain
+Analog
+2
+Add Parameter for model gain
+
+ Enter offset for input (default=0.0):
+ Enter gain (default=1.0):
+ Enter offset for output (default=0.0):
+
+
\ No newline at end of file
diff --git a/src/modelParamXML/Digital/gains.xml b/src/modelParamXML/Digital/gains.xml
new file mode 100644
index 00000000..2bce2a66
--- /dev/null
+++ b/src/modelParamXML/Digital/gains.xml
@@ -0,0 +1,11 @@
+
+gain
+Analog
+2
+Add Parameter for model gain
+
+ Enter offset for input (default=0.0):
+ Enter gain (default=1.0):
+ Enter offset for output (default=0.0):
+
+
\ No newline at end of file
diff --git a/src/modelParamXML/Digital/test.xml b/src/modelParamXML/Digital/test.xml
new file mode 100644
index 00000000..2bce2a66
--- /dev/null
+++ b/src/modelParamXML/Digital/test.xml
@@ -0,0 +1,11 @@
+
+gain
+Analog
+2
+Add Parameter for model gain
+
+ Enter offset for input (default=0.0):
+ Enter gain (default=1.0):
+ Enter offset for output (default=0.0):
+
+
\ No newline at end of file
diff --git a/src/projManagement/Kicad.py b/src/projManagement/Kicad.py
index cbee89e9..a575af21 100644
--- a/src/projManagement/Kicad.py
+++ b/src/projManagement/Kicad.py
@@ -21,7 +21,7 @@ import Validation
from configuration.Appconfig import Appconfig
import Worker
from PyQt4 import QtGui
-
+import time
class Kicad:
"""
Class Kicad open Schematic,PCB and Layout
@@ -109,6 +109,7 @@ class Kicad:
self.cmd = "python ../kicadtoNgspice/KicadtoNgspice.py "+self.project+".cir "
self.obj_workThread = Worker.WorkerThread(self.cmd)
self.obj_workThread.start()
+
else:
self.msg = QtGui.QErrorMessage(None)
diff --git a/src/projManagement/Kicad.pyc b/src/projManagement/Kicad.pyc
index 9d783b32..4011f875 100644
Binary files a/src/projManagement/Kicad.pyc and b/src/projManagement/Kicad.pyc differ
diff --git a/src/projManagement/Worker.py b/src/projManagement/Worker.py
index 00cad6a4..58078b86 100644
--- a/src/projManagement/Worker.py
+++ b/src/projManagement/Worker.py
@@ -23,16 +23,22 @@ class WorkerThread(QtCore.QThread):
def __init__(self,args):
QtCore.QThread.__init__(self)
self.args = args
-
+ '''
+ #Not Required
def __del__(self):
self.wait()
+ '''
def run(self):
print "Calling :",self.args
self.call_system(self.args)
def call_system(self,command):
print "System called"
- os.system(command)
+ try:
+ os.system(command)
+ print "PID",os.getpid()
+ except:
+ print "Unable to run the command"
\ No newline at end of file
diff --git a/src/projManagement/Worker.pyc b/src/projManagement/Worker.pyc
index c8e30b8f..237fe279 100644
Binary files a/src/projManagement/Worker.pyc and b/src/projManagement/Worker.pyc differ
diff --git a/src/projManagement/newProject.py b/src/projManagement/newProject.py
index c76acdc1..10251d1b 100644
--- a/src/projManagement/newProject.py
+++ b/src/projManagement/newProject.py
@@ -41,7 +41,6 @@ class NewProjectInfo(QtGui.QWidget):
self.okbtn.clicked.connect(self.createProject)
self.cancelbtn = QtGui.QPushButton("Cancel")
- self.cancelbtn = QtGui.QPushButton('Cancel')
self.cancelbtn.clicked.connect(self.cancelProject)
diff --git a/src/projManagement/newProject.pyc b/src/projManagement/newProject.pyc
index 16e965d3..b97b85c2 100644
Binary files a/src/projManagement/newProject.pyc and b/src/projManagement/newProject.pyc differ
--
cgit