Esempio n. 1
0
    def deleteRecords(self):
        """ Delete selected records
		"""
        indexes = self._getWriteableSelectedModelIndexes()

        if indexes:
            proxyModel = self.tableView.model()
            if QtGui.QMessageBox.question(
                    self, 'Delete Records',
                    'Are you sure you want to delete %d rows?' % len(indexes),
                    QtGui.QMessageBox.Yes
                    | QtGui.QMessageBox.No) != QtGui.QMessageBox.Yes:
                return

            with utils.showWaitCursor():
                if not proxyModel.sourceModel().deleteRecords(indexes):
                    QtGui.QMessageBox.critical(
                        self, 'Database Error',
                        proxyModel.sourceModel().lastError().text(),
                        QtGui.QMessageBox.Ok)

                # Finally, re-populate accounts and date range in case this has changed
                self.populateAccounts()
                self.populateDates()
                self.setDateRange()
Esempio n. 2
0
	def removeTag(self):
		""" Delete a tag - ask for confirmation if tag is currently assigned to records
		"""
		proxyModel = self.tagView.model()
		for proxyIndex in self.tagView.selectionModel().selectedRows():
			assignedRecords = proxyModel.sourceModel().index(proxyModel.mapToSource(proxyIndex).row(), enum.kTags_RecordIds).data()
			if assignedRecords:
				if QtGui.QMessageBox.question(
						self, 'Delete Tags',
						'There are %d records assigned to this tag\nSure you want to delete it?' % len(assignedRecords),
						QtGui.QMessageBox.Yes|QtGui.QMessageBox.No) != QtGui.QMessageBox.Yes:
					continue
			with utils.showWaitCursor():
				tagId = proxyModel.sourceModel().index(proxyModel.mapToSource(proxyIndex).row(), enum.kTags_TagId).data()
				proxyModel.sourceModel().removeTag(tagId)

		self.tagView.resizeColumnsToContents()
Esempio n. 3
0
    def removeTag(self):
        """ Delete a tag - ask for confirmation if tag is currently assigned to records
		"""
        proxyModel = self.tagView.model()
        for proxyIndex in self.tagView.selectionModel().selectedRows():
            assignedRecords = proxyModel.sourceModel().index(
                proxyModel.mapToSource(proxyIndex).row(),
                enum.kTags_RecordIds).data()
            if assignedRecords:
                if QtGui.QMessageBox.question(
                        self, 'Delete Tags',
                        'There are %d records assigned to this tag\nSure you want to delete it?'
                        % len(assignedRecords), QtGui.QMessageBox.Yes
                        | QtGui.QMessageBox.No) != QtGui.QMessageBox.Yes:
                    continue
            with utils.showWaitCursor():
                tagId = proxyModel.sourceModel().index(
                    proxyModel.mapToSource(proxyIndex).row(),
                    enum.kTags_TagId).data()
                proxyModel.sourceModel().removeTag(tagId)

        self.tagView.resizeColumnsToContents()
Esempio n. 4
0
	def deleteRecords(self):
		""" Delete selected records
		"""
		indexes = self._getWriteableSelectedModelIndexes()

		if indexes:
			proxyModel = self.tableView.model()
			if QtGui.QMessageBox.question(
					self, 'Delete Records',
					'Are you sure you want to delete %d rows?' % len(indexes),
					QtGui.QMessageBox.Yes|QtGui.QMessageBox.No) != QtGui.QMessageBox.Yes:
				return

			with utils.showWaitCursor():
				if not proxyModel.sourceModel().deleteRecords(indexes):
					QtGui.QMessageBox.critical(self, 'Database Error',
						proxyModel.sourceModel().lastError().text(), QtGui.QMessageBox.Ok)

				# Finally, re-populate accounts and date range in case this has changed
				self.populateAccounts()
				self.populateDates()
				self.setDateRange()