Re: [PyQt] lambda slot problem

2009-04-03 Thread Linos
Ok, reading about the scoping problem with lambda i now understand the problem, activated it is the bool emitted from the clicked signal so i have changed it to: lambda activated, m=msg: self.changeStatus(m, activated) and now works correctly, thanks Brian. If i have understand the way that lam

Re: [PyQt] lambda slot problem

2009-04-02 Thread Brian Kelley
You are seeing a scoping issue, to be safe, I would write the lambda as follows lambda changeStatus=self.changeStatus,m=msg,a=activated: changeStatus(m,a) This ensures that the bindings of self, activated and msg are what you expect when the lambda function is executed. On 4/2/09 7:16 PM, "Lino

[PyQt] lambda slot problem

2009-04-02 Thread Linos
Hello, i suppose i am making any mistake here but i dont know why, for example: for checkbox, msg in ((self.printedCheckBox, "printed"), (self.finishedCheckBox, "finished")): self.connect(checkbox, SIGNAL("clicked(bool)"), lambda activated: self.changeStatus(msg, activated)) This one