#=============================================================================== # # FILE: Application.py # # USAGE: --- # # DESCRIPTION: This main file use to start the Application # # OPTIONS: --- # REQUIREMENTS: --- # BUGS: --- # NOTES: --- # AUTHOR: Fahim Khan, fahim.elex@gmail.com # ORGANIZATION: eSim team at FOSSEE, IIT Bombay. # CREATED: Wednesday 21 January 2015 # REVISION: --- #=============================================================================== from PyQt4 import QtGui, QtCore from configuration.Appconfig import Appconfig from projManagement.openProject import OpenProjectInfo from projManagement.newProject import NewProjectInfo import os import ViewManagement import Workspace import sys import time import subprocess class Application(QtGui.QMainWindow): """ Its our main window of application """ def __init__(self,*args): """ Initialize main Application window """ #Calling __init__ of super class QtGui.QMainWindow.__init__(self,*args) #Creating Application configuration object self.obj_appconfig = Appconfig() self.setGeometry(self.obj_appconfig._app_xpos, self.obj_appconfig._app_ypos, self.obj_appconfig._app_width, self.obj_appconfig._app_heigth) self.setWindowTitle(self.obj_appconfig._APPLICATION) #Init Workspace self.obj_workspace = Workspace.Workspace() #Init necessary components in sequence self.initActions() self.initView() def initActions(self): self.newproj = QtGui.QAction(QtGui.QIcon('../images/newProject.svg'),'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.setShortcut('Ctrl+O') self.openproj.triggered.connect(self.open_project) self.exitproj = QtGui.QAction(QtGui.QIcon('../images/closeProject.svg'),'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.setShortcut('Ctrl+H') self.helpfile.triggered.connect(self.help_project) self.mainToolbar = self.addToolBar('Top Navigation') self.mainToolbar.addAction(self.newproj) self.mainToolbar.addAction(self.openproj) self.mainToolbar.addAction(self.exitproj) self.mainToolbar.addAction(self.helpfile) #self.test = self.addToolBar("Temp") def initView(self): """ Create gui from the class Views and initialize it """ self.view = ViewManagement.ViewManagement() self.setCentralWidget(self.view) def new_project(self): print "New Project called" self.project = NewProjectInfo() self.project.body() def open_project(self): print "Open Project called" self.project = OpenProjectInfo() self.project.body() def exit_project(self): print "Exit Project called" for proc in self.obj_appconfig.procThread_list: try: proc.terminate() except: pass self.project.close() self.close() def help_project(self): print "Help is called" print "Current Project : ",self.obj_appconfig.current_project def testing(self): print "Sucess hit kicad button" def main(args): """ It is main function of the module.It starts the application """ print "Hello Main" app = QtGui.QApplication(sys.argv) """ splash_pix = QtGui.QPixmap('../images/FreeEDAlogo.jpg') splash = QtGui.QSplashScreen(splash_pix,QtCore.Qt.WindowStaysOnTopHint) progressBar = QtGui.QProgressBar(splash) splash.setMask(splash_pix.mask()) splash.show() for i in range(0, 100): progressBar.setValue(i) t = time.time() while time.time() < t + 0.1: app.processEvents() time.sleep(2) appView = Application() appView.show() splash.finish(appView) sys.exit(app.exec_()) """ appView = Application() #QtGui.QApplication.setStyle(QtGui.QStyleFactory.create("Cleanlooks")) appView.show() sys.exit(app.exec_()) # Call main function if __name__ == '__main__': # Create and display the splash screen main(sys.argv)