Hi there
I subclass QListViewItem so that the font will be in green color
when the item is chosen either by double clicking or calling a
function (let's name it as Z)
The color changes properly when I double click or call this
function Z directly (clicking on menu or using accel key).
However, when function Z is used as callback from another
function (i.e. no user interaction), here are the scenarios..
1) if QListView scrolls (I have ensureItemVisible() in function
Z), the color changes
2) if QListView does not scroll, the color remains unchanged
until I physically send a mouse or keyboard event (i.e. move the
mouse pointer into the window border, or shake the mouse pointer
when it was already inside the window, or press any key when the
window is having focus)
Here are parts of the code...
class MyListItem(QListViewItem):
...
...
...
def isDoubleClicked(self):
return self.doubleClicked
def setDoubleClicked(self, doubleClicked):
self.doubleClicked = doubleClicked
self.repaint()
def paintCell(self, p, cg, column, width, align ):
if self.isDoubleClicked():
cg = QColorGroup(cg)
cg.setColor(QColorGroup.Text, QColor("forest
green"))
QListViewItem.paintCell(self, p, cg, column,
width,align)
class Gui:
...
...
...
def Z(self):
self.prevItem.setDoubleClicked(False)
self.listView.ensureVisible(self.currentItem)
self.currentItem.setDoubleClicked(True)
My description is kinda bad but I hope you can understand and
give me some guidance. Thanks!
__________________________________
Do you Yahoo!?
SBC Yahoo! DSL - Now only $29.95 per month!
http://sbc.yahoo.com
_______________________________________________
PyKDE mailing list [EMAIL PROTECTED]
http://mats.imk.fraunhofer.de/mailman/listinfo/pykde