agencyBookmarks.py (1529B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\ui\shared\agencyNew\agencyBookmarks.py 2 from eve.client.script.ui.shared.agencyNew import agencySignals, agencyEventLog 3 from eve.client.script.ui.shared.agencyNew.contentGroups.contentGroupProvider import IsContentGroupValid 4 _bookmarks = None 5 MAX_NUM_BOOKMARKS = 6 6 7 def _CheckInitBookmarks(): 8 global _bookmarks 9 if _bookmarks is None: 10 _bookmarks = settings.char.ui.Get('agencyBookmarks', []) 11 _bookmarks = [ contentGroupID for contentGroupID in _bookmarks if IsContentGroupValid(contentGroupID) ] 12 13 14 def ClearBookmarksVariable(): 15 global _bookmarks 16 _bookmarks = None 17 18 19 def AddBookmark(contentGroupID, index = None): 20 _CheckInitBookmarks() 21 if len(_bookmarks) >= MAX_NUM_BOOKMARKS: 22 return 23 if contentGroupID in _bookmarks: 24 _bookmarks.remove(contentGroupID) 25 if index: 26 _bookmarks.insert(index, contentGroupID) 27 else: 28 _bookmarks.append(contentGroupID) 29 _PersistBookmarks() 30 agencySignals.on_bookmarks_changed(_bookmarks[:]) 31 agencyEventLog.LogEventBookmarkAdded(contentGroupID) 32 33 34 def RemoveBookmark(contentGroupID): 35 _CheckInitBookmarks() 36 if contentGroupID in _bookmarks: 37 _bookmarks.remove(contentGroupID) 38 _PersistBookmarks() 39 agencySignals.on_bookmarks_changed(_bookmarks[:]) 40 41 42 def _PersistBookmarks(): 43 settings.char.ui.Set('agencyBookmarks', _bookmarks) 44 45 46 def GetBookmarks(): 47 _CheckInitBookmarks() 48 return _bookmarks[:]