def LoadMenu (self): #clear the menu for s in self.Scripts: self.Menu.RemoveItem(s.MenuItem) self.Scripts = [] if (os.path.exists("./Scripts")): for filename in os.listdir("./Scripts"): sf = ScriptFile("./Scripts/" + filename,self,False) if (sf.IsRunOnce): if sf.File not in self.RunScripts: self.RunScripts.add(sf.File) self.ExecuteScript(sf.File) else: self.Scripts.append(sf) if (os.path.exists(self.SpecialDir)): for filename in os.listdir(self.SpecialDir): sf = ScriptFile(self.SpecialDir + "/" + filename,self,True) if (sf.IsRunOnce): if sf.File not in self.RunScripts: self.RunScripts.add(sf.File) self.ExecuteScript(sf.File) else: self.Scripts.append(sf) self.Scripts = sorted(self.Scripts, key=lambda s: s.Name) for s in reversed(self.Scripts): s.MenuItem = wx.MenuItem(self.Menu,wx.ID_ANY,s.Name,s.Description) if (s.Special): s.MenuItem.SetBitmap(Icons.getstarBitmap()) self.Menu.PrependItem(s.MenuItem) self.Navigator.Bind(wx.EVT_MENU,s.OnClicked,s.MenuItem)