From b8a87cdb785471005e96234782287528e3edc39c Mon Sep 17 00:00:00 2001 From: fahim Date: Wed, 25 Feb 2015 12:28:36 +0530 Subject: Subject: Kicad Module modified along with some other minor changes Description: Added openschematic,openlayout,openpcb in the kicad module. --- src/projManagement/Kicad.py | 93 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 93 insertions(+) create mode 100644 src/projManagement/Kicad.py (limited to 'src/projManagement/Kicad.py') diff --git a/src/projManagement/Kicad.py b/src/projManagement/Kicad.py new file mode 100644 index 00000000..bbd7664b --- /dev/null +++ b/src/projManagement/Kicad.py @@ -0,0 +1,93 @@ +#=============================================================================== +# +# FILE: openKicad.py +# +# USAGE: --- +# +# DESCRIPTION: It call kicad schematic +# +# OPTIONS: --- +# REQUIREMENTS: --- +# BUGS: --- +# NOTES: --- +# AUTHOR: Fahim Khan, fahim.elex@gmail.com +# ORGANIZATION: ecSim team at FOSSEE, IIT Bombay. +# CREATED: Tuesday 17 Feb 2015 +# REVISION: --- +#=============================================================================== + +import os +import Validation +from configuration.Appconfig import Appconfig +import Worker +from PyQt4 import QtGui + +class Kicad: + """ + Class Kicad open Schematic,PCB and Layout + """ + def __init__(self): + self.obj_validation = Validation.Validation() + self.obj_appconfig = Appconfig() + + + def openSchematic(self): + print "Kicad Schematic is called" + self.projDir = self.obj_appconfig.current_project["ProjectName"] + #Validating if current project is available or not + + if self.obj_validation.validateKicad(self.projDir): + print "calling Kicad schematic ",self.projDir + self.projName = os.path.basename(self.projDir) + self.project = os.path.join(self.projDir,self.projName) + + #Creating a command to run + self.cmd = "eeschema "+self.project+".sch " + self.obj_workThread = Worker.WorkerThread(self.cmd) + self.obj_workThread.start() + + else: + self.msg = QtGui.QErrorMessage(None) + self.msg.showMessage('Please select the project first. You can either create new project or open existing project') + self.msg.setWindowTitle("Error Message") + + + + def openFootprint(self): + print "Kicad Foot print Editor called" + self.projDir = self.obj_appconfig.current_project["ProjectName"] + #Validating if current project is available or not + + if self.obj_validation.validateKicad(self.projDir): + print "calling Kicad FootPrint Editor ",self.projDir + self.projName = os.path.basename(self.projDir) + self.project = os.path.join(self.projDir,self.projName) + + #Creating a command to run + self.cmd = "cvpcb "+self.project+".net " + self.obj_workThread = Worker.WorkerThread(self.cmd) + self.obj_workThread.start() + + else: + self.msg = QtGui.QErrorMessage(None) + self.msg.showMessage('Please select the project first. You can either create new project or open existing project') + self.msg.setWindowTitle("Error Message") + + def openLayout(self): + print "Kicad Layout is called" + self.projDir = self.obj_appconfig.current_project["ProjectName"] + #Validating if current project is available or not + if self.obj_validation.validateKicad(self.projDir): + print "calling Kicad schematic ",self.projDir + self.projName = os.path.basename(self.projDir) + self.project = os.path.join(self.projDir,self.projName) + + #Creating a command to run + self.cmd = "pcbnew "+self.project+".net " + self.obj_workThread = Worker.WorkerThread(self.cmd) + self.obj_workThread.start() + + else: + self.msg = QtGui.QErrorMessage(None) + self.msg.showMessage('Please select the project first. You can either create new project or open existing project') + self.msg.setWindowTitle("Error Message") \ No newline at end of file -- cgit