Wed 28 Aug 21:38:52 CEST 2024
This commit is contained in:
		
							parent
							
								
									0fdf01de17
								
							
						
					
					
						commit
						847273d5bc
					
				
							
								
								
									
										126
									
								
								src/SimNDT/gui/boundarySetupController.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										126
									
								
								src/SimNDT/gui/boundarySetupController.py
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,126 @@ | ||||||
|  | __author__ = 'Miguel' | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | from PySide.QtCore import * | ||||||
|  | from PySide.QtGui import * | ||||||
|  | 
 | ||||||
|  | from SimNDT.gui.ui_boundarysetup import Ui_boundarySetupDialog | ||||||
|  | from SimNDT.gui.Warnings import WarningParms | ||||||
|  | from SimNDT.gui.constants import * | ||||||
|  | 
 | ||||||
|  | from SimNDT.core.constants import * | ||||||
|  | from SimNDT.core.boundary import Boundary | ||||||
|  | import copy | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | class BoundarySetup(QDialog,Ui_boundarySetupDialog): | ||||||
|  | 
 | ||||||
|  | 	def __init__(self, SimNDT_Boundaries, parent = None): | ||||||
|  | 		super(BoundarySetup,self).__init__(parent) | ||||||
|  | 		self.setupUi(self) | ||||||
|  | 		self.connectionSetup() | ||||||
|  | 
 | ||||||
|  | 		if SimNDT_Boundaries is not None: | ||||||
|  | 			for boundary in SimNDT_Boundaries: | ||||||
|  | 				self.setupBC(boundary) | ||||||
|  | 		else: | ||||||
|  | 			self.topComboBox.setCurrentIndex(BC.AirLayer) | ||||||
|  | 			self.bottomComboBox.setCurrentIndex(BC.AirLayer) | ||||||
|  | 			self.leftComboBox.setCurrentIndex(BC.AirLayer) | ||||||
|  | 			self.rightComboBox.setCurrentIndex(BC.AirLayer) | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | 	def connectionSetup(self): | ||||||
|  | 		self.connect(self.topComboBox, SIGNAL("currentIndexChanged(int)"), self.setVisibleFunc) | ||||||
|  | 		self.connect(self.topComboBox, SIGNAL("currentIndexChanged(int)"), self.setVisibleFunc) | ||||||
|  | 		self.connect(self.bottomComboBox, SIGNAL("currentIndexChanged(int)"), self.setVisibleFunc) | ||||||
|  | 		self.connect(self.bottomComboBox, SIGNAL("currentIndexChanged(int)"), self.setVisibleFunc) | ||||||
|  | 		self.connect(self.leftComboBox, SIGNAL("currentIndexChanged(int)"), self.setVisibleFunc) | ||||||
|  | 		self.connect(self.leftComboBox, SIGNAL("currentIndexChanged(int)"), self.setVisibleFunc) | ||||||
|  | 		self.connect(self.rightComboBox, SIGNAL("currentIndexChanged(int)"), self.setVisibleFunc) | ||||||
|  | 		self.connect(self.rightComboBox, SIGNAL("currentIndexChanged(int)"), self.setVisibleFunc) | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | 	def setVisibleFunc(self, value): | ||||||
|  | 
 | ||||||
|  | 		sender = self.sender() | ||||||
|  | 		if  sender.objectName() == "topComboBox": | ||||||
|  | 			self.topLayerSizeLabel.setVisible(not value) | ||||||
|  | 			self.topLayerSizeLineEdit.setVisible(not value) | ||||||
|  | 		elif sender.objectName() == "bottomComboBox": | ||||||
|  | 			self.bottomLayerSizeLabel.setVisible(not value) | ||||||
|  | 			self.bottomLayerSizeLineEdit.setVisible(not value) | ||||||
|  | 		elif sender.objectName() == "leftComboBox": | ||||||
|  | 			self.leftLayerSizeLabel.setVisible(not value) | ||||||
|  | 			self.leftLayerSizeLineEdit.setVisible(not value) | ||||||
|  | 		elif sender.objectName() == "rightComboBox": | ||||||
|  | 			self.rightLayerSizeLabel.setVisible(not value) | ||||||
|  | 			self.rightLayerSizeLineEdit.setVisible(not value) | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | 	def setupBC(self, boundary): | ||||||
|  | 
 | ||||||
|  | 		if boundary.Name == "Top": | ||||||
|  | 			self.topComboBox.setCurrentIndex(boundary.BC) | ||||||
|  | 			if boundary.BC == BC.AbsorbingLayer: | ||||||
|  | 				self.topLayerSizeLabel.setVisible(True) | ||||||
|  | 				self.topLayerSizeLineEdit.setVisible(True) | ||||||
|  | 				self.topLayerSizeLineEdit.setText(unicode(boundary.Size)) | ||||||
|  | 
 | ||||||
|  | 		elif boundary.Name == "Bottom": | ||||||
|  | 			self.bottomComboBox.setCurrentIndex(boundary.BC) | ||||||
|  | 			if boundary.BC == BC.AbsorbingLayer: | ||||||
|  | 				self.bottomLayerSizeLabel.setVisible(True) | ||||||
|  | 				self.bottomLayerSizeLineEdit.setVisible(True) | ||||||
|  | 				self.bottomLayerSizeLineEdit.setText(unicode(boundary.Size)) | ||||||
|  | 
 | ||||||
|  | 		elif boundary.Name == "Left": | ||||||
|  | 			self.leftComboBox.setCurrentIndex(boundary.BC) | ||||||
|  | 			if boundary.BC == BC.AbsorbingLayer: | ||||||
|  | 				self.leftLayerSizeLabel.setVisible(True) | ||||||
|  | 				self.leftLayerSizeLineEdit.setVisible(True) | ||||||
|  | 				self.leftLayerSizeLineEdit.setText(unicode(boundary.Size)) | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | 		elif boundary.Name == "Right": | ||||||
|  | 			self.rightComboBox.setCurrentIndex(boundary.BC) | ||||||
|  | 			if boundary.BC == BC.AbsorbingLayer: | ||||||
|  | 				self.rightLayerSizeLabel.setVisible(True) | ||||||
|  | 				self.rightLayerSizeLineEdit.setVisible(True) | ||||||
|  | 				self.rightLayerSizeLineEdit.setText(unicode(boundary.Size)) | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | 	def accept(self): | ||||||
|  | 
 | ||||||
|  | 		try: | ||||||
|  | 			items = [ (self.topComboBox,self.topLayerSizeLineEdit, "Top" ), | ||||||
|  | 			          (self.bottomComboBox,self.bottomLayerSizeLineEdit,"Bottom" ), | ||||||
|  | 			          (self.leftComboBox,self.leftLayerSizeLineEdit,"Left" ), | ||||||
|  | 			          (self.rightComboBox,self.rightLayerSizeLineEdit,"Right" )] | ||||||
|  | 
 | ||||||
|  | 			self.Boundaries = list() | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | 			for item in items: | ||||||
|  | 				index = item[0].currentIndex() | ||||||
|  | 				if index == BC.AirLayer: | ||||||
|  | 					Size = 0.0 | ||||||
|  | 				else: | ||||||
|  | 					Size = float(item[1].text()) | ||||||
|  | 					if Size == 0: | ||||||
|  | 						msgBox = WarningParms("Undefined Size (%s)!!!!" % item[2]) | ||||||
|  | 						if msgBox.exec_(): | ||||||
|  | 							return | ||||||
|  | 
 | ||||||
|  | 				self.Boundaries.append(Boundary(item[2],index,Size)) | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | 		except: | ||||||
|  | 			msgBox = WarningParms() | ||||||
|  | 			if msgBox.exec_(): | ||||||
|  | 				return | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | 		QDialog.accept(self) | ||||||
		Loading…
	
		Reference in New Issue
	
	Block a user