Ejemplo n.º 1
0
 def __init__(self, cmpTbl = None):
     QtCore.QObject.__init__(self)
    
     self.dlg_ = QtGui.QDialog()
     self.ui_ = Ui_Dialog()
     self.ui_.setupUi(self.dlg_)
     
     if cmpTbl != None:
         self.cmpTbl_= cmpTbl
         
         self.matModel_ = GoalsCmpTblModel(cmpTbl, None)
         self.delegate_ = GoalsCmpTblDelegate(None)
         self.matPropModel_ = GoalsCmpTblPropsModel(cmpTbl)
         
         self.ui_.matrixView.setModel(self.matModel_)
         self.ui_.matrixView.setItemDelegate(self.delegate_)
         self.ui_.propertiesView.setModel(self.matPropModel_)
     
     self._SetupSlots()
Ejemplo n.º 2
0
class AHPCmpTblEditor(QtCore.QObject):
    @staticmethod
    def FromModel(mdl, delegate, propsMdl, cmpTbl):
        retEditor = AHPCmpTblEditor()
        
        retEditor.matModel_ = mdl
        retEditor.delegate_ = delegate
        retEditor.matPropModel_ = propsMdl
        
        retEditor.ui_.matrixView.setModel(retEditor.matModel_)
        if delegate: self.ui_.matrixView.setItemDelegate(retEditor.delegate_)
        retEditor.ui_.propertiesView.setModel(retEditor.matPropModel_)
        retEditor.cmpTbl_ = cmpTbl
        
        return retEditor
    
    def __init__(self, cmpTbl = None):
        QtCore.QObject.__init__(self)
       
        self.dlg_ = QtGui.QDialog()
        self.ui_ = Ui_Dialog()
        self.ui_.setupUi(self.dlg_)
        
        if cmpTbl != None:
            self.cmpTbl_= cmpTbl
            
            self.matModel_ = GoalsCmpTblModel(cmpTbl, None)
            self.delegate_ = GoalsCmpTblDelegate(None)
            self.matPropModel_ = GoalsCmpTblPropsModel(cmpTbl)
            
            self.ui_.matrixView.setModel(self.matModel_)
            self.ui_.matrixView.setItemDelegate(self.delegate_)
            self.ui_.propertiesView.setModel(self.matPropModel_)
        
        self._SetupSlots()
        
    def _SetupSlots(self):
        self.connect(self.ui_.calcBtn, QtCore.SIGNAL("clicked(bool)"), self._CaculateProperties)
        self.connect(self.ui_.btnCancel, QtCore.SIGNAL("clicked(bool)"), self._OnCancel)
        self.connect(self.ui_.btnSave, QtCore.SIGNAL("clicked(bool)"), self._OnSave)
        self.connect(self.ui_.btnAutoGen, QtCore.SIGNAL("clicked(bool)"), self._OnAutoGen)    
        return
        
    def ShowWidget(self):
        return self.dlg_.show()
    
    def ShowWidgetModal(self):
        return self.dlg_.exec_()
    
    def _CaculateProperties(self, bool = 0):
        self.cmpTbl_.CalculateProperties()
        self.matPropModel_.reset()
        self.matModel_.reset()
        
    def UI(self):
        return self.ui_
    
    def Widget(self):
        return self.dlg_
       
    def _OnCancel(self, b):
        self.dlg_.reject()
        
    def _OnSave(self, b):
        SaveTableModel([self.matModel_, self.matPropModel_], MainDocument.mainDoc.ProjDir, self.dlg_)
        
    def _OnAutoGen(self, b):
        autoEditor = AHPAutoCmpTblEditor(self.cmpTbl_)
        autoEditor.ShowWidgetModal()