PyGubu Protokoll Ereignis „Fenster schließen“ abfangen / Catch close window event with PyGubu

Leider ist die Doku von PyGubu etwas dürftig.
Nach langen Suchen habe ich gefunden, wie man das Schließen eines Frames abfängt :

The documentation of pygubu is not the best.
Perhaps there is any documentation about this event, but I ain’t found it until today.
Put this def in your app-class to handle the window closing event.

def on_close_execute(self):
print „End“
return pygubu.TkApplication.on_close_execute(self)

Eclipse, PyDev und der Pfad während der Ausführung

PyDev for Eclipse ist meiner Meinung nach die beste Entwicklungsumgebung für Python.
Sicher ist die Installation etwas aufwendiger als z.B. beim PyScripter, der auch sehr gut
funktioniert, jedoch bei der automatischen Code-Ergänzung nicht an PyDev heran kommt.

Das Problem bestand darin, dass ich mit Glade eine Form entwofen habe, die im gleichen
Verzeichnis wie das darstellende Python Script liegt.

Dateien :
gtkTest.py
gtkTest.glade

Mit einem „normalen“ Editor funktioniert folgendes um die Form zu lesen:

self.wTree = gtk.glade.XML(„gtkTest.glade“ )

Lässt man das Script in Eclipse laufen, bekommt man den Fehler das die Datei gtkTest.glade nicht gefunden wird.

Eclipse setzt den aktuellen Pfad bei der Ausführung in den Workspace, egal wo das Script
liegt. Daher muss der Scriptpfad zum lesen der libGlade-.Datei mitgegeben werden.
Den Scriptpfad kann man wie folgt ermitteln:

import sys
print sys.path[0]

Daraus ergibt sich folgende Möglichkeit die libGlade-Datei zu laden:

self.wTree = gtk.glade.XML(sys.path[0] + „/gtkTest.glade“ )

Dabei ist zu beachten, dass sys.path[0] den Pfad zum Script ohne den abschließenden
Slash / Backslash wiedergibt.
Der einfache Slash (/) funktioniert auch unter Windows.

Umgebung:

Windows 7 / Xubuntu 12.04 LTS
Eclipse Platform 4.3.2.M20140221-1700
PyDev for Eclipse 3.3.3.201401272249