Hello, I'm writing a Gnome applet using PyGTK, and I have a problem changing applet's contextual menu dynamically.
The problem is that I'm trying to hide or show a menu's entry using "set_prop()" method as you can see bellow, but it doesn't change the menu. I have tried to change "sensitive" property instead of "hidden" with the same luck. Thank you in advance. Regards, [1] Applet's menu XML: ------------------------------------------------------------------------ <Root> <popups> <popup name="button3"> <menuitem name="start_tf" verb="start_tf" _label="_Start tracking" /> <menuitem name="stop_tf" verb="stop_tf" _label="_Stop tracking" /> <menuitem name="upload_data" verb="upload_data" _label="_Upload data now" /> <separator/> <menuitem name="preferences" verb="preferences" _label="_Preferences" pixtype="stock" pixname="gtk-preferences" /> <menuitem name="about" verb="about" _label="_About" pixtype="stock" pixname="gtk-about" /> </popup> </popups> </Root> ------------------------------------------------------------------------ [2] Code I'm trying to use to change menu: ------------------------------------------------------------------------ def __init__ (self, applet): self.applet = applet # Unrelated stuff self.applet.setup_menu_from_file (os.path.join (config.DATA_DIR, \ "detras-applet"), \ "DetrasApplet.xml", \ None, \ [("about", self.about_cb), \ ("preferences", self.prefs_cb), \ ("upload_data", self.upload_data_cb), \ ("toggle_tf", self.toggle_tf_cb)]) self.update_menu ("start_tf", 0) def update_menu (self, menu_verb, value): popup = self.applet.get_popup_component() val = {False: "0", True: "1"}[value] popup.set_prop("/commands/"+menu_verb, "hidden", val) ------------------------------------------------------------------------ -- Edmundo Álvarez Jiménez <e.alvar...@gmail.com> _______________________________________________ pygtk mailing list pygtk@daa.com.au http://www.daa.com.au/mailman/listinfo/pygtk Read the PyGTK FAQ: http://faq.pygtk.org/