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