NovaBryan/EVE_Dump
Log | Files | 📦 下载最新源码 (.zip) | Refs | README

link.py (960B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\ui\shared\bookmarks\link.py
      2 import evelink.client
      3 from carbon.common.lib.const import maxInt
      4 SCHEME = 'bookmarkFolder'
      5 
      6 def register_link_handlers(registry):
      7     registry.register(SCHEME, handle_bookmark_folder_link, hint='UI/AclBookmarks/BookmarkFolderLinkHint', color_info=evelink.settings_link_color_info)
      8 
      9 
     10 def handle_bookmark_folder_link(url):
     11     folder_id = parse_bookmark_folder_url(url)
     12     sm.GetService('bookmarkSvc').ShowBookmarkFolderInfo(folder_id)
     13 
     14 
     15 def parse_bookmark_folder_url(url):
     16     folder_id = int(url.split(':')[1])
     17     if maxInt < folder_id < 1:
     18         raise ValueError('Bookmark folder ID out of range')
     19     return folder_id
     20 
     21 
     22 def bookmark_folder_link(folder_id, name):
     23     return evelink.Link(url=format_bookmark_folder_url(folder_id), text=name)
     24 
     25 
     26 def format_bookmark_folder_url(folder_id):
     27     return u'{}:{}'.format(SCHEME, folder_id)