I haven't really used PyGTK before, but from what I see the issue is most probably in the startcycletimer
method:
It should rather be GObject.timeout_add_seconds(1, self.displaytimer)
instead of GObject.timeout_add_seconds(1, self.displaytimer(counter))
.
You need to pass the caller to the function and not the output.