def copy(self): ''' Copy the table selection to the clipboard At this point, works only for single line selection ''' selection = self.selectionModel() indexes = selection.selectedIndexes() indexes.sort() previous = indexes.pop(0) data = self.model().data(previous) text = data.toString() selected_text = QString(text) for current in indexes: if current.row() != previous.row(): selected_text.append('\n') else: selected_text.append('\t') data = self.model().data(current) text = data.toString() selected_text.append(text) previous = current selected_text.append('\n') QApplication.clipboard().setText(selected_text)
def copy(self): ''' Copy the table selection to the clipboard ''' selection = self.selectionModel() indexes = selection.selectedIndexes() indexes.sort() previous = indexes.pop(0) data = self.model().data(previous) try: text = data.toString() except: text = str(data) selected_text = QString(text) for current in indexes: if current.row() != previous.row(): selected_text.append('\n') else: selected_text.append('\t') data = self.model().data(current) try: text = data.toString() except: text = str(data) selected_text.append(text) previous = current selected_text.append('\n') QApplication.clipboard().setText(selected_text)
def paste(self): """Reimplement Qt method""" if self.has_selected_text(): self.remove_selected_text() self.insert_text(QApplication.clipboard().text())
def copy(self): """ Reimplement Qt method Copy text to clipboard with correct EOL chars """ QApplication.clipboard().setText(self.get_selected_text())