From: Ed Page Date: Tue, 22 Feb 2011 13:40:04 +0000 (-0600) Subject: Forcing a refresh X-Git-Url: https://vcs.maemo.org/git/?a=commitdiff_plain;h=842f868e4e0f7d4912699c568d32b1c0f9ef97e1;p=gc-dialer Forcing a refresh --- diff --git a/src/gv_views.py b/src/gv_views.py index 55815c3..1dbeea5 100644 --- a/src/gv_views.py +++ b/src/gv_views.py @@ -495,7 +495,7 @@ class Messages(object): self._itemStore.setHorizontalHeaderLabels(["Messages"]) self._categoryManager = TimeCategories(self._itemStore) - self._htmlDelegate = qui_utils.QHtmlDelegate() + #self._htmlDelegate = qui_utils.QHtmlDelegate() self._itemView = QtGui.QTreeView() self._itemView.setModel(self._itemStore) self._itemView.setUniformRowHeights(False) @@ -505,9 +505,9 @@ class Messages(object): self._itemView.setSelectionMode(QtGui.QAbstractItemView.SingleSelection) self._itemView.setHeaderHidden(True) self._itemView.setItemsExpandable(False) - self._itemView.setItemDelegate(self._htmlDelegate) + #self._itemView.setItemDelegate(self._htmlDelegate) self._itemView.activated.connect(self._on_row_activated) - self._itemView.header().sectionResized.connect(self._on_column_resized) + #self._itemView.header().sectionResized.connect(self._on_column_resized) self._layout = QtGui.QVBoxLayout() self._layout.addLayout(self._selectionLayout) @@ -618,6 +618,15 @@ class Messages(object): messageItem.setCheckable(False) row = (messageItem, ) self._categoryManager.add_row(item["time"], row) + for c in xrange(self._itemStore.rowCount()): + catItem = self._itemStore.item(c, 0) + for r in xrange(catItem.rowCount()): + rowItem = catItem.child(r, 0) + rowIndex = self._itemStore.indexFromItem(rowItem) + itemWidget = QtGui.QLabel(rowItem.text()) + itemWidget.setTextFormat(QtCore.Qt.RichText) + itemWidget.setAutoFillBackground(True) + self._itemView.setIndexWidget(rowIndex, itemWidget) self._itemView.expandAll() @QtCore.pyqtSlot(str) diff --git a/src/util/qui_utils.py b/src/util/qui_utils.py index 27ce1ff..9e33f88 100644 --- a/src/util/qui_utils.py +++ b/src/util/qui_utils.py @@ -231,9 +231,17 @@ class QHtmlDelegate(QtGui.QStyledItemDelegate): doc.documentLayout().draw(painter, ctx) painter.restore() - def setWidth(self, width): - # @bug we need to be emitting sizeHintChanged but it requires an index + def setWidth(self, width, model): + if self._width == width: + return self._width = width + for c in xrange(model.rowCount()): + cItem = model.item(c, 0) + for r in xrange(model.rowCount()): + rItem = cItem.child(r, 0) + rIndex = model.indexFromItem(rItem) + self.sizeHintChanged.emit(rIndex) + return def sizeHint(self, option, index): newOption = QtGui.QStyleOptionViewItemV4(option)