コード例 #1
0
ファイル: ScriptLoader.py プロジェクト: acarl123/MovingBoxes
	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)