Yes to the last.. I guess my tutorial wasn't clear enough.. this is exactly what it is demonstrating. That last part in his signal: self.clickFoo() < the function name is clickFoo(). If you use "self." that means within the same class as you are connecting the signal too. So you'll create def clickFoo: within the QT class for the main window. If you want to call functions from other places.. you would pass the appropriate object to the function call in the self.clickFoo() part. If it's a global function, just "clickFoo()", etc.