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

menuUtil.py (1577B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\packages\carbonui\control\contextMenu\menuUtil.py
      2 from carbonui import uiconst
      3 from carbonui.control.contextMenu.contextMenuMixin import ContextMenuMixin
      4 from carbonui.primitives.fill import Fill
      5 from carbonui.uianimations import animations
      6 from carbonui.uicore import uicore
      7 from eve.client.script.ui import eveColor
      8 
      9 def CloseContextMenus():
     10     closedMenu = False
     11     for each in uicore.layer.menu.children[:]:
     12         if isinstance(each, ContextMenuMixin):
     13             each.Close()
     14             closedMenu = True
     15             sm.ScatterEvent('OnMenuClosed')
     16 
     17     return closedMenu
     18 
     19 
     20 def HasContextMenu():
     21     for each in uicore.layer.menu.children:
     22         if isinstance(each, ContextMenuMixin):
     23             return True
     24 
     25     return False
     26 
     27 
     28 def ClearMenuLayer():
     29     uicore.layer.menu.Flush()
     30 
     31 
     32 def GetContextMenuOwner():
     33     contextMenuOwner = getattr(uicore, 'contextMenuOwner', None)
     34     if contextMenuOwner:
     35         menuOwner = contextMenuOwner()
     36         if menuOwner and not menuOwner.destroyed and ObjectHasMenu(menuOwner):
     37             return menuOwner
     38 
     39 
     40 def ObjectHasMenu(uiObject):
     41     if hasattr(uiObject, 'menuObject_weakref'):
     42         mo = uiObject.menuObject_weakref
     43         if mo and mo():
     44             return True
     45     return False
     46 
     47 
     48 def FlashEntrySelection(pos):
     49     fill = Fill(parent=uicore.layer.menu, align=uiconst.ABSOLUTE, color=eveColor.WHITE, pos=pos, outputMode=uiconst.OUTPUT_COLOR_AND_GLOW, glowBrightness=0.3)
     50     animations.FadeOut(fill, duration=0.15, callback=fill.Close)