From 4713e795b6c9508c0e40462e155f90d769708775 Mon Sep 17 00:00:00 2001 From: rahulp13 Date: Sun, 30 Aug 2020 14:37:44 +0530 Subject: fixed crash on exception of ngspice taking too long time --- src/frontEnd/Application.py | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) (limited to 'src/frontEnd') diff --git a/src/frontEnd/Application.py b/src/frontEnd/Application.py index 44616ab7..4edf7a9f 100644 --- a/src/frontEnd/Application.py +++ b/src/frontEnd/Application.py @@ -532,16 +532,27 @@ class Application(QtWidgets.QMainWindow): break except Exception: pass - time.sleep(0.5) + time.sleep(1) # Fail Safe ===> count += 1 if count >= 10: - raise Exception( + print( "Ngspice taking too long for simulation. " "Check netlist file to change simulation parameters." ) + self.msg = QtWidgets.QErrorMessage() + self.msg.setModal(True) + self.msg.setWindowTitle("Warning Message") + self.msg.showMessage( + 'Ngspice taking too long for simulation. ' + 'Check netlist file to change simulation parameters.' + ) + self.msg.exec_() + + return + # Calling Python Plotting try: self.obj_Mainview.obj_dockarea.plottingEditor() -- cgit From 779eac4d604c082442ba9ca72a7c23509a78e5f5 Mon Sep 17 00:00:00 2001 From: rahulp13 Date: Mon, 14 Dec 2020 21:08:43 +0530 Subject: changed QFileDialog separator and handled crash exception for all input fields --- src/frontEnd/Application.py | 17 ++++++++++++----- src/frontEnd/Workspace.py | 12 ++++++++---- 2 files changed, 20 insertions(+), 9 deletions(-) (limited to 'src/frontEnd') diff --git a/src/frontEnd/Application.py b/src/frontEnd/Application.py index 4edf7a9f..94bce4ae 100644 --- a/src/frontEnd/Application.py +++ b/src/frontEnd/Application.py @@ -13,7 +13,7 @@ # MODIFIED: Rahul Paknikar, rahulp@iitb.ac.in # ORGANIZATION: eSim Team at FOSSEE, IIT Bombay # CREATED: Tuesday 24 February 2015 -# REVISION: Saturday 01 August 2020 +# REVISION: Sunday 13 December 2020 # ========================================================================= import os @@ -293,13 +293,20 @@ class Application(QtWidgets.QMainWindow): text, ok = QtWidgets.QInputDialog.getText( self, 'New Project Info', 'Enter Project Name:' ) + updated = False + if ok: self.projname = (str(text)) self.project = NewProjectInfo() directory, filelist = self.project.createProject(self.projname) - self.obj_Mainview.obj_projectExplorer.addTreeNode( - directory, filelist) - else: + + if directory and filelist: + self.obj_Mainview.obj_projectExplorer.addTreeNode( + directory, filelist + ) + updated = True + + if not updated: print("No new project created") self.obj_appconfig.print_info('No new project created') try: @@ -714,7 +721,7 @@ class Application(QtWidgets.QMainWindow): 'Please select the project first. ' + 'You can either create a new project or open existing project' ) - self.exec_() + self.msg.exec_() def open_OMoptim(self): """ diff --git a/src/frontEnd/Workspace.py b/src/frontEnd/Workspace.py index 0a80d357..4d033539 100644 --- a/src/frontEnd/Workspace.py +++ b/src/frontEnd/Workspace.py @@ -13,7 +13,7 @@ # MODIFIED: Rahul Paknikar, rahulp@iitb.ac.in # ORGANIZATION: eSim Team at FOSSEE, IIT Bombay # CREATED: Wednesday 05 February 2015 -# REVISION: Saturday 25 July 2020 +# REVISION: Sunday 13 December 2020 # ========================================================================= from PyQt5 import QtCore, QtGui, QtWidgets @@ -172,7 +172,11 @@ class Workspace(QtWidgets.QWidget): def browseLocation(self): print("Function : Browse Location") - self.workspace_directory = QtWidgets.QFileDialog.getExistingDirectory( - self, "Browse Location", os.path.expanduser("~") + self.workspace_directory = QtCore.QDir.toNativeSeparators( + QtWidgets.QFileDialog.getExistingDirectory( + self, "Browse Location", os.path.expanduser("~") + ) ) - self.workspace_loc.setText(self.workspace_directory) + + if self.workspace_directory: + self.workspace_loc.setText(self.workspace_directory) -- cgit