1 9028 hh150184 Index: Alacarte/MainWindow.py 2 9028 hh150184 =================================================================== 3 9028 hh150184 RCS file: /cvs/gnome/alacarte/Alacarte/MainWindow.py,v 4 9028 hh150184 retrieving revision 1.20 5 9028 hh150184 diff -u -p -r1.20 MainWindow.py 6 9028 hh150184 --- Alacarte/MainWindow.py 5 Aug 2006 04:26:45 -0000 1.20 7 9028 hh150184 +++ Alacarte/MainWindow.py 15 Aug 2006 11:42:56 -0000 8 9162 dc144907 @@ -42,7 +42,7 @@ 9 9028 hh150184 def __init__(self, datadir, version, argv): 10 9028 hh150184 self.file_path = datadir 11 9028 hh150184 self.version = version 12 9028 hh150184 - self.editor = MenuEditor() 13 9028 hh150184 + self.editor = MenuEditor(self) 14 9162 dc144907 self.gnome_program = gnome.init('alacarte', version) 15 9028 hh150184 gtk.window_set_default_icon_name('alacarte') 16 9028 hh150184 self.tree = gtk.glade.XML(os.path.join(self.file_path, 'alacarte.glade')) 17 9028 hh150184 Index: Alacarte/MenuEditor.py 18 9028 hh150184 =================================================================== 19 9028 hh150184 RCS file: /cvs/gnome/alacarte/Alacarte/MenuEditor.py,v 20 9028 hh150184 retrieving revision 1.14 21 9028 hh150184 diff -u -p -r1.14 MenuEditor.py 22 9028 hh150184 --- Alacarte/MenuEditor.py 9 Jul 2006 19:53:04 -0000 1.14 23 9028 hh150184 +++ Alacarte/MenuEditor.py 15 Aug 2006 11:42:56 -0000 24 9028 hh150184 @@ -30,10 +30,22 @@ class MenuEditor: 25 9028 hh150184 #lists for undo/redo functionality 26 9028 hh150184 __undo = [] 27 9028 hh150184 __redo = [] 28 9028 hh150184 + __mainWindow = None 29 9028 hh150184 + __menuTreeReload = True 30 9028 hh150184 31 9028 hh150184 - def __init__(self): 32 9028 hh150184 + def __init__(self, mainWindow): 33 9028 hh150184 self.locale = locale.getdefaultlocale()[0] 34 9028 hh150184 + self.__mainWindow = mainWindow 35 9028 hh150184 self.__loadMenus() 36 9028 hh150184 + #init the flag to true 37 9028 hh150184 + os.system("gconftool-2 --type bool --set " \ 38 9028 hh150184 + + "/apps/panel/general/menu_tree_reload true") 39 9028 hh150184 + 40 9028 hh150184 + def __forceReload(self): 41 9028 hh150184 + self.applications.tree.force_reload() 42 9028 hh150184 + self.applications.visible_tree.force_reload() 43 9028 hh150184 + self.settings.tree.force_reload() 44 9028 hh150184 + self.settings.visible_tree.force_reload() 45 9028 hh150184 46 9028 hh150184 def __loadMenus(self): 47 9028 hh150184 self.applications = Menu() 48 9028 hh150184 @@ -64,6 +76,18 @@ class MenuEditor: 49 9028 hh150184 fd.close() 50 9028 hh150184 if not from_loading: 51 9028 hh150184 self.__loadMenus() 52 9028 hh150184 + # force the menu trees to reload 53 9028 hh150184 + self.__forceReload() 54 9028 hh150184 + self.__mainWindow.loadUpdates() 55 9028 hh150184 + # toggle the gconf key to let gnome panel reload 56 9028 hh150184 + if self.__menuTreeReload: 57 9028 hh150184 + os.system("gconftool-2 --type bool --set " \ 58 9028 hh150184 + + "/apps/panel/general/menu_tree_reload false") 59 9028 hh150184 + else: 60 9028 hh150184 + os.system("gconftool-2 --type bool --set " \ 61 9028 hh150184 + + "/apps/panel/general/menu_tree_reload true") 62 9028 hh150184 + self.__menuTreeReload = not self.__menuTreeReload 63 9028 hh150184 + 64 9028 hh150184 65 9028 hh150184 def quit(self): 66 9028 hh150184 for file_name in os.listdir(util.getUserItemPath()): 67