Hoi,
Zoals misschien bekend van m'n vorige topic ben ik een plugin aan het schrijven voor Rhythmbox. Ik zit alleen wéér met een, voor mij, onverklaarbaar probleem. Hier een stuk code:
class ConfigurationDialog(object):
def __init__(self, glade_file):
self.builder = gtk.Builder()
self.builder.add_from_file(glade_file)
def get_dialog(self):
print(self)
print(self.builder)
return self.dialog
def lyricConfig_response(self, dialog, signal):
print(self)
print(self.builder)
In __init__ staat nog wel meer code, maar dat is even niet relevant. Met __init__() wordt een GTK+ schermpje aangemaakt. Vervolgend wordt get_dialog aangeroepen om die vervolgens terug te geven aan Rhythmbox.
Zodra er op sluiten wordt gedrukt, wordt lyricConfig_response() aangeroepen. Nu krijg ik deze output:
(11:56:08) [0x89ea408] [ConfigurationDialog.get_dialog] .gnome2/rhythmbox/plugins/lyricWiki/LyricsConfigurationDialog.py:135: <lyricWiki.LyricsConfigurationDialog.ConfigurationDialog object at 0x92bbbcc>
(11:56:08) [0x89ea408] [ConfigurationDialog.get_dialog] .gnome2/rhythmbox/plugins/lyricWiki/LyricsConfigurationDialog.py:136: <gtk.Builder object at 0x92ed554 (GtkBuilder at 0x8e798a0)>
(11:56:13) [0x89ea408] [ConfigurationDialog.lyricConfig_response] .gnome2/rhythmbox/plugins/lyricWiki/LyricsConfigurationDialog.py:147: <lyricWiki.LyricsConfigurationDialog.ConfigurationDialog object at 0x92bbbcc>
Traceback (most recent call last):
File "/home/martijn2/.gnome2/rhythmbox/plugins/lyricWiki/LyricsConfigurationDialog.py", line 75, in lyricConfig_response
print(self.builder)
AttributeError: 'ConfigurationDialog' object has no attribute 'builder'
Dat is toch vreemd?

. De 'self' is precies hetzelfde (0x92bbbcc == 0x92bbbcc), maar toch is 'builder' niet beschikbaar.