On Thu, 12 Aug 2004 21:02:46, Eron Lloyd wrote: >Does anybody have an example of how to implement rich text inside of a >QListViewItem? I can't wrap my head around the C++ examples I've found enough >to translate what needs to be done. It seems a little more tricky when not >implemented inside a QWidget...
You could probably start from the example given at http://doc.trolltech.com/qq/qq08-fancy-list-view.html Something simple like the following might be enough, but you may want to think about how the items are painted. Good luck, David #!/usr/bin/env python import sys from qt import QApplication, QBrush, QLabel, QListView, QListViewItem, \ QPixmap, Qt class RichTextItem(QListViewItem): def __init__(self, parent, previous = None): QListViewItem.__init__(self, parent, previous) self.label = QLabel(None) def paintCell(self, painter, colorGroup, column, width, alignment): painter.save() painter.fillRect(0, 0, width, self.height(), QBrush(Qt.white)) self.label.setText(self.text(column)) self.label.resize(width, self.height()) pixmap = QPixmap.grabWidget(self.label, 0, 0, width, self.height()) painter.drawPixmap(0, 0, pixmap) painter.restore() example_text = """<h1>My list items</h1> <b>A bold item</b> <i>An italic item</i> Some <i>mixed</i> <b>text</b>""" if __name__ == "__main__": app = QApplication(sys.argv) list_view = QListView() list_view.addColumn("Label") list_view.setSorting(-1) previous = None for line in example_text.split("\n"): list_item = RichTextItem(list_view, previous) list_item.setText(0, line) previous = list_item list_view.show() app.setMainWidget(list_view) sys.exit(app.exec_loop()) ___________________________________________________________ $0 Web Hosting with up to 120MB web space, 1000 MB Transfer 10 Personalized POP and Web E-mail Accounts, and much more. Signup at www.doteasy.com _______________________________________________ PyKDE mailing list [EMAIL PROTECTED] http://mats.imk.fraunhofer.de/mailman/listinfo/pykde