diff options
author | fossee | 2019-08-29 12:03:11 +0530 |
---|---|---|
committer | fossee | 2019-08-29 12:03:11 +0530 |
commit | fe3bd934634bb2dae1cadf35e7c6d59facbedf66 (patch) | |
tree | ab841ad9ca3d56f7eb85cb3650f6608b80656027 /src/projManagement/newProject.py | |
parent | f7567ac99f21fb6c87d60f309f0aa71dee6ae975 (diff) | |
download | eSim-fe3bd934634bb2dae1cadf35e7c6d59facbedf66.tar.gz eSim-fe3bd934634bb2dae1cadf35e7c6d59facbedf66.tar.bz2 eSim-fe3bd934634bb2dae1cadf35e7c6d59facbedf66.zip |
adding files
Diffstat (limited to 'src/projManagement/newProject.py')
-rw-r--r-- | src/projManagement/newProject.py | 109 |
1 files changed, 109 insertions, 0 deletions
diff --git a/src/projManagement/newProject.py b/src/projManagement/newProject.py new file mode 100644 index 00000000..5b4af49a --- /dev/null +++ b/src/projManagement/newProject.py @@ -0,0 +1,109 @@ + +#=============================================================================== +# +# FILE: newProject.py +# +# USAGE: --- +# +# DESCRIPTION: It is called whenever new project is being called. +# +# OPTIONS: --- +# REQUIREMENTS: --- +# BUGS: --- +# NOTES: --- +# AUTHOR: Fahim Khan, fahim.elex@gmail.com +# ORGANIZATION: eSim team at FOSSEE, IIT Bombay. +# CREATED: Wednesday 12 February 2015 +# REVISION: --- +#=============================================================================== +from PyQt4 import QtGui +from Validation import Validation +from configuration.Appconfig import Appconfig +import os +import json + +class NewProjectInfo(QtGui.QWidget): + """ + This class is called when User create new Project. + """ + + def __init__(self): + super(NewProjectInfo, self).__init__() + self.obj_validation = Validation() + self.obj_appconfig = Appconfig() + + + def createProject(self,projName): + """ + This function create Project related directories and files + """ + #print "Create Project Called" + self.projName= projName + self.workspace = self.obj_appconfig.default_workspace['workspace'] + #self.projName = self.projEdit.text() + self.projName = str(self.projName).rstrip().lstrip() #Remove leading and trailing space + + self.projDir = os.path.join(self.workspace,str(self.projName)) + + + #Validation for newProject + if self.projName == "": + self.reply = "NONE" + else: + self.reply = self.obj_validation.validateNewproj(str(self.projDir)) + + #Checking Validations Response + if self.reply == "VALID": + #create project directory + try: + os.mkdir(self.projDir) + self.close() + self.projFile = os.path.join(self.projDir,self.projName+".proj") + f = open(self.projFile,"w") + except: + #print "Some Thing Went Wrong" + self.msg = QtGui.QErrorMessage(self) + self.msg.showMessage('Unable to create project. Please make sure you have write permission on '+self.workspace) + self.msg.setWindowTitle("Error Message") + f.write("schematicFile " + self.projName+".sch\n") + f.close() + + #Now Change the current working project + newprojlist = [] + #self.obj_appconfig = Appconfig() + self.obj_appconfig.current_project['ProjectName'] = self.projDir + newprojlist.append(self.projName+'.proj') + self.obj_appconfig.project_explorer[self.projDir] = newprojlist + + self.obj_appconfig.print_info('New project created : ' + self.projName) + self.obj_appconfig.print_info('Current project is : ' + self.projDir) + + json.dump(self.obj_appconfig.project_explorer, open(self.obj_appconfig.dictPath,'w')) + return self.projDir, newprojlist + + elif self.reply == "CHECKEXIST": + #print "Project already exist" + self.msg = QtGui.QErrorMessage(self) + self.msg.showMessage('The project "'+self.projName+'" already exist.Please select the different name or delete existing project') + self.msg.setWindowTitle("Error Message") + + + elif self.reply == "CHECKNAME": + #print "Name is not proper" + self.msg = QtGui.QErrorMessage(self) + self.msg.showMessage('The project name should not contain space between them') + self.msg.setWindowTitle("Error Message") + + elif self.reply == "NONE": + #print "Empty Project Name" + self.msg = QtGui.QErrorMessage(self) + self.msg.showMessage('The project name cannot be empty') + self.msg.setWindowTitle("Error Message") + + def cancelProject(self): + self.close() + + + + +
\ No newline at end of file |