From: Barış Metin Date: Fri, 10 Sep 2010 17:08:34 +0000 (+0200) Subject: Merge branch 'master' of git.onelab.eu:/git/sface X-Git-Tag: sface-0.1-1~63 X-Git-Url: http://git.onelab.eu/?p=sface.git;a=commitdiff_plain;h=225f44c6dd0ced8e880a5a106f0563d390af54ee;hp=-c Merge branch 'master' of git.onelab.eu:/git/sface --- 225f44c6dd0ced8e880a5a106f0563d390af54ee diff --combined sface/screens/mainscreen.py index 32d9849,19aedfe..00710a3 --- a/sface/screens/mainscreen.py +++ b/sface/screens/mainscreen.py @@@ -5,7 -5,7 +5,7 @@@ from PyQt4.QtGui import from sfa.util.rspecHelper import RSpec from sface.sfahelper import * - from sface.sficonfig import config + from sface.config import config from sface.sfiprocess import SfiProcess from sface.screens.sfascreen import SfaScreen @@@ -19,29 -19,6 +19,29 @@@ class NodeView(QTreeView) self.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding) self.setAttribute(Qt.WA_MacShowFocusRect, 0) +class ItemDelegate(QStyledItemDelegate): + def __init__(self, parent): + QStyledItemDelegate.__init__(self) + + def paint(self, painter, option, index): + data = "%s" % index.data().toString() + + if data.startswith("*"): # already in the sliver + data = " %s " % data[1:] + + rect = option.rect + fm = QFontMetrics(option.font) + w = fm.width(QString(data)) + rect.setWidth(w) + + painter.save() + painter.fillRect(rect, QColor.fromRgb(0, 250, 0)) + painter.setPen(QColor.fromRgb(0, 0, 0)) + painter.drawText(option.rect, 0, QString(data)) + painter.restore() + else: # others, fall back to default view + QStyledItemDelegate.paint(self, painter, option, index) + class TreeItem: def __init__(self, data, parent=None): self.parentItem = parent @@@ -237,11 -214,11 +237,11 @@@ class SliceWidget(QWidget) available_nodes = filter(lambda x:x not in sliver_nodes, all_nodes) for node in sliver_nodes: - nodeItem = TreeItem([QString(""), QString(node), QString("True")], networkItem) + nodeItem = TreeItem([QString(""), QString("*%s" % node), QString("Implement Checkbox")], networkItem) networkItem.appendChild(nodeItem) for node in available_nodes: - nodeItem = TreeItem([QString(""), QString(node), QString("False")], networkItem) + nodeItem = TreeItem([QString(""), QString(node), QString("Implement Checkbox")], networkItem) networkItem.appendChild(nodeItem) self.nodeModel.rootItem.appendChild(networkItem) @@@ -249,9 -226,6 +249,9 @@@ self.nodeView.expandAll() self.nodeView.resizeColumnToContents(1) + self.delegate = ItemDelegate(self) + self.nodeView.setItemDelegateForColumn(1, self.delegate) + class MainScreen(SfaScreen): def __init__(self, parent):