link.py (1378B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\ui\shared\pointerTool\link.py 2 import evelink.client 3 from carbon.common.script.sys.serviceManager import ServiceManager 4 from eve.client.script.ui.shared.pointerTool.pointerToolConst import SOURCE_LOCATION_LINK 5 from globalConfig.getFunctions import ArePointerLinksActive 6 SCHEME_HELP_POINTER = 'helpPointer' 7 8 def get_help_pointer_link(ui_element, name): 9 return evelink.Link(url=format_help_pointer_url(ui_element), text=name) 10 11 12 def register_link_handlers(registry): 13 registry.register(SCHEME_HELP_POINTER, handle_link, hint='UI/Help/HelpPointersTooltip', color_info=evelink.help_link_color_info) 14 15 16 def handle_link(url): 17 if not are_pointer_links_enabled(): 18 return 19 ui_element = parse_help_pointer_url(url) 20 help_pointer_service = get_service('helpPointer') 21 help_pointer_service.ActivateHelperPointer(ui_element, SOURCE_LOCATION_LINK) 22 23 24 def are_pointer_links_enabled(): 25 macho_net = get_service('machoNet') 26 return ArePointerLinksActive(macho_net) 27 28 29 def get_service(service_name): 30 service_manager = ServiceManager.Instance() 31 return service_manager.GetService(service_name) 32 33 34 def parse_help_pointer_url(url): 35 return url[url.index(':') + 1:] 36 37 38 def format_help_pointer_url(ui_element): 39 return '{}:{}'.format(SCHEME_HELP_POINTER, ui_element)