コード例 #1
0
 def load(self):
     self.form.nameEdit.setText(
         _fromUtf8(converter.itemsToText(self.item.name, edit=True)))
     self.form.idEdit.setText(_fromUtf8(self.item.identifier))
     self.form.descriptionEdit.setPlainText(
         _fromUtf8(converter.itemsToText(self.item.description, edit=True)))
     self.form.stateDiagramEdit.setPlainText(
         _fromUtf8(self.item.state_diagram))
コード例 #2
0
 def data(self, index, role):
     column = index.column()
     
     if column == 0 and role in [QtCore.Qt.DisplayRole, QtCore.Qt.EditRole]:
         return QtCore.QVariant(self.item.attributes[index.row()].name)
     elif column == 1 and role in [QtCore.Qt.DisplayRole, QtCore.Qt.EditRole]:
         return QtCore.QVariant(self.item.attributes[index.row()].type)
     elif column == 2 and role == QtCore.Qt.DisplayRole:
         return QtCore.QVariant(converter.itemsToText(self.item.attributes[index.row()].description, edit = False))
     elif column == 2 and role == QtCore.Qt.EditRole:
         return QtCore.QVariant(converter.itemsToText(self.item.attributes[index.row()].description, edit = True))
コード例 #3
0
	def setEditorData(self, editor, index):
		step = self.item.path[index.row()].ucstep
		idx = -1 

		if step is not None:
			if step.parent != self.item.uc_ref:
				toFind = '<' + converter.itemsToText(step.parent.title) + '>' +  converter.itemsToText(step.items)
			else:
				toFind = converter.itemsToText(step.items)
			idx = editor.findText(toFind)

		if index != -1:
			editor.setCurrentIndex(idx)
コード例 #4
0
    def setEditorData(self, editor, index):
        step = self.item.path[index.row()].ucstep
        idx = -1

        if step is not None:
            if step.parent != self.item.uc_ref:
                toFind = '<' + converter.itemsToText(
                    step.parent.title) + '>' + converter.itemsToText(
                        step.items)
            else:
                toFind = converter.itemsToText(step.items)
            idx = editor.findText(toFind)

        if index != -1:
            editor.setCurrentIndex(idx)
コード例 #5
0
	def createEditor(self, parent, option, index):
		editor = QtGui.QComboBox(parent)

		if self.item.uc_ref is None:
			editor.addItem('No reference to UC step')
		else :
			for step in self.item.uc_ref.scenario.items:

				for element in step.items:
					if isinstance(element, model.GoToCommand):
						for step_goto in element.item.scenario.items:
							editor.addItem('<' + converter.itemsToText(element.item.title) + '>' +  converter.itemsToText(step_goto.items), step_goto)

				editor.addItem(converter.itemsToText(step.items), step)

		return editor
コード例 #6
0
	def load(self):
		self.form.nameEdit.setText(_fromUtf8(self.item.name))
		self.form.definitionEdit.setPlainText(
				_fromUtf8(
						converter.itemsToText(self.item.definition, edit = True)
				)
		)
コード例 #7
0
    def data(self, index, role):
        column = index.column()

        if column == 0 and role == QtCore.Qt.DisplayRole:
            return QtCore.QVariant(self.afefuc['project'].ucspec.usecases[index.row()].identifier)
        elif column == 1 and role == QtCore.Qt.DisplayRole:
            return QtCore.QVariant(converter.itemsToText(self.afefuc['project'].ucspec.usecases[index.row()].title))
コード例 #8
0
    def data(self, index, role):
        column = index.column()

        if column == 0 and role in [QtCore.Qt.DisplayRole, QtCore.Qt.EditRole]:
            return QtCore.QVariant(self.item.attributes[index.row()].name)
        elif column == 1 and role in [
                QtCore.Qt.DisplayRole, QtCore.Qt.EditRole
        ]:
            return QtCore.QVariant(self.item.attributes[index.row()].type)
        elif column == 2 and role == QtCore.Qt.DisplayRole:
            return QtCore.QVariant(
                converter.itemsToText(
                    self.item.attributes[index.row()].description, edit=False))
        elif column == 2 and role == QtCore.Qt.EditRole:
            return QtCore.QVariant(
                converter.itemsToText(
                    self.item.attributes[index.row()].description, edit=True))
コード例 #9
0
ファイル: GlossaryTabWrapper.py プロジェクト: perfidia/afefuc
    def data(self, index, role):
        column = index.column()

        if column == 0 and role == QtCore.Qt.DisplayRole:
            return QtCore.QVariant(self.afefuc["project"].glossary[index.row()].name)
        elif column == 1 and role == QtCore.Qt.DisplayRole:
            return QtCore.QVariant(
                converter.itemsToText(self.afefuc["project"].glossary[index.row()].definition, edit=False)
            )
コード例 #10
0
    def data(self, index, role):
        column = index.column()

        if column == 0 and role == QtCore.Qt.DisplayRole:
            return QtCore.QVariant(
                self.afefuc['project'].ucspec.usecases[index.row()].identifier)
        elif column == 1 and role == QtCore.Qt.DisplayRole:
            return QtCore.QVariant(
                converter.itemsToText(
                    self.afefuc['project'].ucspec.usecases[index.row()].title))
コード例 #11
0
    def data(self, index, role):
        column = index.column()

        if column == 0 and role == QtCore.Qt.DisplayRole:
            return QtCore.QVariant(
                self.afefuc['project'].business_rules[index.row()].identifier)
        elif column == 1 and role == QtCore.Qt.DisplayRole:
            return QtCore.QVariant(
                converter.itemsToText(self.afefuc['project'].business_rules[
                    index.row()].description,
                                      edit=False))
コード例 #12
0
    def load(self):
        self.form.idEdit.setText(_fromUtf8(self.item.identifier))

        self.form.descriptionEdit.setPlainText(
            _fromUtf8(converter.itemsToText(self.item.description, edit=True)))

        index = self.form.typeComboBox.findData(QtCore.QVariant(
            self.item.type))

        if index != -1:
            self.form.typeComboBox.setCurrentIndex(index)

        index = self.form.dynamismComboBox.findData(
            QtCore.QVariant(self.item.dynamism))

        if index != -1:
            self.form.dynamismComboBox.setCurrentIndex(index)

        self.form.sourceEdit.setPlainText(
            _fromUtf8(converter.itemsToText(self.item.source, edit=True)))
コード例 #13
0
ファイル: UseCaseFormWrapper.py プロジェクト: perfidia/afefuc
	def load(self):
		self.form.titleEdit.setText(_fromUtf8(converter.itemsToText(self.item.title, edit = True)))
		self.form.idEdit.setText(_fromUtf8(self.item.identifier))

		self.form.actorMainEdit.setText(_fromUtf8(", ".join(["[%s] %s" % (a.item.identifier, a.item.name) for a in self.item.main_actors])))
		self.form.actorOtherEdit.setText(_fromUtf8(", ".join(["[%s] %s" % (a.item.identifier, a.item.name) for a in self.item.other_actors])))

		self.form.summaryTextEdit.setPlainText(_fromUtf8(converter.itemsToText(self.item.summary, edit = True)))
		self.form.remarksTextEdit.setPlainText(_fromUtf8(converter.itemsToText(self.item.remarks, edit = True)))


		if self.item.priority:
			index = self.form.priorityComboBox.findText(_fromUtf8(self.item.priority.item.name))
			if index != -1:
				self.form.priorityComboBox.setCurrentIndex(index)

		if self.item.goal_level:
			index = self.form.goalLevelComboBox.findText(_fromUtf8(self.item.goal_level.item.name))
			if index != -1:
				self.form.goalLevelComboBox.setCurrentIndex(index)
コード例 #14
0
    def createEditor(self, parent, option, index):
        editor = QtGui.QComboBox(parent)

        if self.item.uc_ref is None:
            editor.addItem('No reference to UC step')
        else:
            for step in self.item.uc_ref.scenario.items:

                for element in step.items:
                    if isinstance(element, model.GoToCommand):
                        for step_goto in element.item.scenario.items:
                            editor.addItem(
                                '<' +
                                converter.itemsToText(element.item.title) +
                                '>' + converter.itemsToText(step_goto.items),
                                step_goto)

                editor.addItem(converter.itemsToText(step.items), step)

        return editor
コード例 #15
0
    def data(self, index, role):
        column = index.column()

        if column == 0 and role == QtCore.Qt.DisplayRole:
            return QtCore.QVariant(
                self.afefuc['project'].glossary[index.row()].name)
        elif column == 1 and role == QtCore.Qt.DisplayRole:
            return QtCore.QVariant(
                converter.itemsToText(
                    self.afefuc['project'].glossary[index.row()].definition,
                    edit=False))
コード例 #16
0
	def data(self, index, role):
		column = index.column()

		if column == 0 and role == QtCore.Qt.DisplayRole:
			return QtCore.QVariant(self.afefuc['project'].business_rules[index.row()].identifier)
		elif column == 1 and role == QtCore.Qt.DisplayRole:
			return QtCore.QVariant(
					converter.itemsToText(
							self.afefuc['project'].business_rules[index.row()].description,
							edit = False
					)
			)
コード例 #17
0
ファイル: xml.py プロジェクト: perfidia/afefuc
def Reference_att_to_xml(self, parent):
    tmp = {
        orginal.Actor: "actor",
        orginal.BusinessObject: "business-object",
        orginal.GoalLevel: "goal-level",
        orginal.Priority: "priority",
        orginal.Step: "step",
    }.get(type(self.item))

    assert tmp is not None

    ref = ET.SubElement(parent, tmp)
    ref.set("ref", str(id(self.item)))

    if self.properties:
        properties = ET.SubElement(ref, "properties")

        Dict2XML(self.properties, properties)

    debug = True

    if debug:
        # TODO: refactor
        if isinstance(self.item, orginal.Actor):
            tmp = self.item.name
        elif isinstance(self.item, orginal.BusinessObject):
            tmp = converter.itemsToText(self.item.name)
        elif isinstance(self.item, orginal.GoalLevel):
            tmp = self.item.name
        elif isinstance(self.item, orginal.Priority):
            tmp = self.item.name
        elif isinstance(self.item, orginal.Step):
            tmp = converter.itemsToText(self.item.items)
        else:
            print type(self.item)
            assert 1 == 2

        ref.set("tmp", tmp)

    return ref
コード例 #18
0
def Reference_att_to_xml(self, parent):
    tmp = {
        orginal.Actor: "actor",
        orginal.BusinessObject: "business-object",
        orginal.GoalLevel: "goal-level",
        orginal.Priority: "priority",
        orginal.Step: "step",
    }.get(type(self.item))

    assert tmp is not None

    ref = ET.SubElement(parent, tmp)
    ref.set("ref", str(id(self.item)))

    if self.properties:
        properties = ET.SubElement(ref, "properties")

        Dict2XML(self.properties, properties)

    debug = True

    if debug:
        # TODO: refactor
        if isinstance(self.item, orginal.Actor):
            tmp = self.item.name
        elif isinstance(self.item, orginal.BusinessObject):
            tmp = converter.itemsToText(self.item.name)
        elif isinstance(self.item, orginal.GoalLevel):
            tmp = self.item.name
        elif isinstance(self.item, orginal.Priority):
            tmp = self.item.name
        elif isinstance(self.item, orginal.Step):
            tmp = converter.itemsToText(self.item.items)
        else:
            print type(self.item)
            assert 1 == 2

        ref.set("tmp", tmp)

    return ref
コード例 #19
0
    def data(self, index, role):
        if not index.isValid():
            return QtCore.QVariant()

        column = index.column()
        row = index.row()

        if column == 0 and role == QtCore.Qt.DisplayRole:
            return QtCore.QVariant(row + 1)
        elif column == 1 and role in [QtCore.Qt.DisplayRole, QtCore.Qt.EditRole]:
            return QtCore.QVariant(converter.itemsToText(self.conditions[row].items, role == QtCore.Qt.EditRole))

        return QtCore.QVariant()
コード例 #20
0
	def paint(self, painter, option, index):
		value = 'No reference to UC step'

		if(len(self.item.path) > index.row()): 
			step = self.item.path[index.row()].ucstep
			if step is not None:
				value = converter.itemsToText(step.items)
		
		style = QtGui.QApplication.style()
		opt = QtGui.QStyleOptionComboBox()
		opt.currentText = value
		opt.rect = option.rect
		opt.state = QtGui.QStyle.State_Active | QtGui.QStyle.State_Enabled;
		style.drawControl(QtGui.QStyle.CE_ComboBoxLabel, opt, painter)
コード例 #21
0
    def paint(self, painter, option, index):
        value = 'No reference to UC step'

        if (len(self.item.path) > index.row()):
            step = self.item.path[index.row()].ucstep
            if step is not None:
                value = converter.itemsToText(step.items)

        style = QtGui.QApplication.style()
        opt = QtGui.QStyleOptionComboBox()
        opt.currentText = value
        opt.rect = option.rect
        opt.state = QtGui.QStyle.State_Active | QtGui.QStyle.State_Enabled
        style.drawControl(QtGui.QStyle.CE_ComboBoxLabel, opt, painter)
コード例 #22
0
	def load(self):
		self.form.idEdit.setText(_fromUtf8(self.item.identifier))

		self.form.descriptionEdit.setPlainText(
				_fromUtf8(
						converter.itemsToText(self.item.description, edit = True)
				)
		)

		index = self.form.typeComboBox.findData(QtCore.QVariant(self.item.type))

		if index != -1:
			self.form.typeComboBox.setCurrentIndex(index)

		index = self.form.dynamismComboBox.findData(QtCore.QVariant(self.item.dynamism))

		if index != -1:
			self.form.dynamismComboBox.setCurrentIndex(index)

		self.form.sourceEdit.setPlainText(
				_fromUtf8(
						converter.itemsToText(self.item.source, edit = True)
				)
		)
コード例 #23
0
    def data(self, index, role):
        if not index.isValid():
            return QtCore.QVariant()

        column = index.column()
        row = index.row()

        if column == 0 and role == QtCore.Qt.DisplayRole:
            coords = self.positionToCoordinates(row)

            if coords[0] == 'E':
                retval = QtCore.QVariant("%d.%c" % (coords[1]+1, chr(coords[2]+65)))
            else:
                retval = QtCore.QVariant("%d.%c.%d" % (coords[1]+1, chr(coords[2]+65), coords[3]+1))

            return retval
        elif column == 1 and role in [QtCore.Qt.DisplayRole, QtCore.Qt.EditRole]:
            coords = self.positionToCoordinates(row)

            edit = True if role == QtCore.Qt.EditRole else False

            if coords[0] == 'E':
                retval = QtCore.QVariant(
                        converter.itemsToText(
                                self.item.scenario.items[coords[1]].events[coords[2]].title,
                                edit
                        )
                )
            else:
                step = self.item.scenario.items[coords[1]].events[coords[2]].scenario.items[coords[3]]

                retval = QtCore.QVariant(converter.itemsToText(step.items, edit))

            return retval

        return QtCore.QVariant()
コード例 #24
0
	def clickedOKButton(self):
		uccb = self.form.useCaseComboBox
		self.uc_ref = uccb.itemData(uccb.currentIndex()).toPyObject()
		if self.uc_ref is not None:
			algorithm = Algorithm()
			result = algorithm.execute(self.uc_ref)
			for i, test in enumerate(result.tests):
				#tc = clone.testcase(test, self.afefuc['project'])
				#tc = model.TestCase(test.path)
				#print self.uc_ref.title.text
				test.uc_ref = self.uc_ref
				test.title = converter.itemsToText(self.uc_ref.title) + ' - test #' + str(i)
				test.identifier = self.afefuc['project'].testcases.getUniqueId(
						self.uc_ref.identifier + '_T' + str(i))
				self.parent.model.insertItem((None, test))
		self.dialog.close()
コード例 #25
0
 def clickedOKButton(self):
     uccb = self.form.useCaseComboBox
     self.uc_ref = uccb.itemData(uccb.currentIndex()).toPyObject()
     if self.uc_ref is not None:
         algorithm = Algorithm()
         result = algorithm.execute(self.uc_ref)
         for i, test in enumerate(result.tests):
             #tc = clone.testcase(test, self.afefuc['project'])
             #tc = model.TestCase(test.path)
             #print self.uc_ref.title.text
             test.uc_ref = self.uc_ref
             test.title = converter.itemsToText(
                 self.uc_ref.title) + ' - test #' + str(i)
             test.identifier = self.afefuc['project'].testcases.getUniqueId(
                 self.uc_ref.identifier + '_T' + str(i))
             self.parent.model.insertItem((None, test))
     self.dialog.close()
コード例 #26
0
    def data(self, index, role):
        if not index.isValid() and role not in [QtCore.Qt.DisplayRole, QtCore.Qt.EditRole]:
            return QtCore.QVariant()

        column = index.column()
        row = index.row()

        if column == 0 and role == QtCore.Qt.DisplayRole:
            return QtCore.QVariant(row + 1)
        elif column == 1 and role in [QtCore.Qt.DisplayRole, QtCore.Qt.EditRole]:
            edit = True if role == QtCore.Qt.EditRole else False

            step = self.item.scenario.items[row]

            retval = QtCore.QVariant(converter.itemsToText(step.items, edit))

            return QtCore.QVariant(retval)

        return QtCore.QVariant()
コード例 #27
0
    def load(self):
        self.form.titleEdit.setText(_fromUtf8(converter.itemsToText(self.item.title, edit = True)))
        self.form.idEdit.setText(_fromUtf8(self.item.identifier))
        self.form.summaryTextEdit.setPlainText(_fromUtf8(converter.itemsToText(self.item.summary, edit = True)))
        self.form.remarksTextEdit.setPlainText(_fromUtf8(converter.itemsToText(self.item.remarks, edit = True)))


        if self.item.priority:
            index = self.form.priorityComboBox.findText(_fromUtf8(self.item.priority.item.name))
            if index != -1:
                self.form.priorityComboBox.setCurrentIndex(index)

        if self.item.goal_level:
            index = self.form.goalLevelComboBox.findText(_fromUtf8(self.item.goal_level.item.name))
            if index != -1:
                self.form.goalLevelComboBox.setCurrentIndex(index)

        mainactorlist = []        
        otheractorlist = []
    
        mainActorlayout = QtGui.QVBoxLayout()
        for act in self.actors:
            chekMain = QtGui.QCheckBox(act.name)
            if len(self.item.main_actors) != 0:
                if act.name in self.item.main_actors:
                    chekMain.setChecked(True)
                else:
                    chekMain.setEnabled(False)
            chekMain.setObjectName(act.name)
            mainActorlayout.addWidget(chekMain)
            mainactorlist.append(chekMain)    
            if len(self.item.main_actors) != 0:                           
                QtCore.QObject.connect(chekMain, QtCore.SIGNAL("stateChanged(int)"), lambda: self.setEditEnableAndDisableMainActorList(otheractorlist,mainactorlist))
            else:
                QtCore.QObject.connect(chekMain, QtCore.SIGNAL("stateChanged(int)"), lambda: self.setEnableAndDisableMainActorList(otheractorlist,mainactorlist))
        self.form.mainActorTab.setLayout(mainActorlayout)
        
       
        otherActorslayout = QtGui.QVBoxLayout()
        for othact in self.actors:
            chekOther = QtGui.QCheckBox(othact.name)
            if len(self.item.other_actors) != 0:
                if othact.name in self.item.other_actors:
                    chekOther.setChecked(True)
                else:
                    chekOther.setEnabled(False)
                    chekOther.setChecked(False)

            chekOther.setObjectName(othact.name)
            otherActorslayout.addWidget(chekOther)
            otheractorlist.append(chekOther)
            
            if len(self.item.other_actors) != 0:
                QtCore.QObject.connect(chekOther, QtCore.SIGNAL("stateChanged(int)"), lambda: self.setEditEnableAndDisableOtherAcotrList(otheractorlist,mainactorlist))
            else:
                QtCore.QObject.connect(chekOther, QtCore.SIGNAL("stateChanged(int)"), lambda: self.setEnableAndDisableOtherAcotrList(otheractorlist,mainactorlist))    
        self.form.otherActorsTab.setLayout(otherActorslayout)

        if len(self.item.main_actors) != 0 and len(self.item.other_actors) != 0 : 
            for i in range(len(mainactorlist)):
                if mainactorlist[i].checkState() == 0 and otheractorlist[i].checkState() == 0:
                    mainactorlist[i].setEnabled(True)
                    otheractorlist[i].setEnabled(True)     
        elif len(self.item.main_actors) != 0 and len(self.item.other_actors) == 0:             
            for i in range(len(mainactorlist)):
                if mainactorlist[i].checkState() == 2:
                    otheractorlist[i].setEnabled(False)
        elif  len(self.item.main_actors) == 0 and len(self.item.other_actors) != 0:             
            for i in range(len(mainactorlist)):
                if otheractorlist[i].checkState() == 2 :
                    mainactorlist[i].setEnabled(False)     
コード例 #28
0
ファイル: model.py プロジェクト: perfidia/afefuc
    def toText(self, edit):
        if edit:
            return "@bo:" + self.identifier

        return converter.itemsToText(self.name)
コード例 #29
0
 def load(self):
     self.form.nameEdit.setText(_fromUtf8(converter.itemsToText(self.item.name, edit = True)))
     self.form.idEdit.setText(_fromUtf8(self.item.identifier))
     self.form.descriptionEdit.setPlainText(_fromUtf8(converter.itemsToText(self.item.description, edit = True)))
     self.form.stateDiagramEdit.setPlainText(_fromUtf8(self.item.state_diagram))
コード例 #30
0
ファイル: model.py プロジェクト: wafaast/afefuc-project
    def toText(self, edit):
        if edit:
            return "@bo:" + self.identifier

        return converter.itemsToText(self.name)