Show icons instead of names for dps/volley columns
This commit is contained in:
@@ -25,6 +25,7 @@ import eos.config
|
||||
import gui.mainFrame
|
||||
from eos.saveddata.fit import Fit
|
||||
from eos.utils.spoolSupport import SpoolOptions, SpoolType
|
||||
from gui.bitmap_loader import BitmapLoader
|
||||
from gui.viewColumn import ViewColumn
|
||||
from gui.utils.numberFormatter import formatAmount
|
||||
|
||||
@@ -36,7 +37,8 @@ class DpsColumn(ViewColumn):
|
||||
def __init__(self, fittingView, params):
|
||||
ViewColumn.__init__(self, fittingView)
|
||||
self.mainFrame = gui.mainFrame.MainFrame.getInstance()
|
||||
self.columnText = 'DPS'
|
||||
self.imageId = fittingView.imageList.GetImageIndex(1432, 'icons')
|
||||
self.bitmap = BitmapLoader.getBitmap(1432, 'icons')
|
||||
self.mask = wx.LIST_MASK_TEXT
|
||||
|
||||
def getText(self, stuff):
|
||||
@@ -48,5 +50,8 @@ class DpsColumn(ViewColumn):
|
||||
return formatAmount(dps, 3, 0, 0)
|
||||
return ''
|
||||
|
||||
def getToolTip(self, stuff):
|
||||
return 'Declared DPS'
|
||||
|
||||
|
||||
DpsColumn.register()
|
||||
|
||||
@@ -25,6 +25,7 @@ import eos.config
|
||||
import gui.mainFrame
|
||||
from eos.saveddata.fit import Fit
|
||||
from eos.utils.spoolSupport import SpoolOptions, SpoolType
|
||||
from gui.bitmap_loader import BitmapLoader
|
||||
from gui.viewColumn import ViewColumn
|
||||
from gui.utils.numberFormatter import formatAmount
|
||||
|
||||
@@ -36,7 +37,8 @@ class VolleyColumn(ViewColumn):
|
||||
def __init__(self, fittingView, params):
|
||||
ViewColumn.__init__(self, fittingView)
|
||||
self.mainFrame = gui.mainFrame.MainFrame.getInstance()
|
||||
self.columnText = 'Volley'
|
||||
self.imageId = fittingView.imageList.GetImageIndex(1397, 'icons')
|
||||
self.bitmap = BitmapLoader.getBitmap(1397, 'icons')
|
||||
self.mask = wx.LIST_MASK_TEXT
|
||||
|
||||
def getText(self, stuff):
|
||||
@@ -48,5 +50,7 @@ class VolleyColumn(ViewColumn):
|
||||
return formatAmount(dps, 3, 0, 0)
|
||||
return ''
|
||||
|
||||
def getToolTip(self, stuff):
|
||||
return 'Declared volley'
|
||||
|
||||
VolleyColumn.register()
|
||||
|
||||
@@ -38,8 +38,10 @@ class BaseList(gui.display.Display):
|
||||
self.graphFrame = graphFrame
|
||||
self.fits = []
|
||||
|
||||
fitToolTip = wx.ToolTip('Drag a fit into this list to graph it')
|
||||
self.SetToolTip(fitToolTip)
|
||||
self.hoveredRow = None
|
||||
self.hoveredColumn = None
|
||||
|
||||
self.defaultTT = 'Drag a fit into this list to graph it'
|
||||
|
||||
self.contextMenu = wx.Menu()
|
||||
removeItem = wx.MenuItem(self.contextMenu, 1, 'Remove Fit')
|
||||
@@ -52,6 +54,8 @@ class BaseList(gui.display.Display):
|
||||
self.Bind(wx.EVT_LEFT_DCLICK, self.OnLeftDClick)
|
||||
self.Bind(wx.EVT_CHAR_HOOK, self.kbEvent)
|
||||
self.Bind(wx.EVT_CONTEXT_MENU, self.OnContextMenu)
|
||||
self.Bind(wx.EVT_MOTION, self.OnMouseMove)
|
||||
self.Bind(wx.EVT_LEAVE_WINDOW, self.OnLeaveWindow)
|
||||
|
||||
def kbEvent(self, event):
|
||||
keycode = event.GetKeyCode()
|
||||
@@ -148,6 +152,34 @@ class BaseList(gui.display.Display):
|
||||
self.update(self.fits)
|
||||
self.graphFrame.draw()
|
||||
|
||||
def OnLeaveWindow(self, event):
|
||||
self.SetToolTip(None)
|
||||
self.hoveredRow = None
|
||||
self.hoveredColumn = None
|
||||
event.Skip()
|
||||
|
||||
def OnMouseMove(self, event):
|
||||
row, _, col = self.HitTestSubItem(event.Position)
|
||||
if row != self.hoveredRow or col != self.hoveredColumn:
|
||||
if self.ToolTip is not None:
|
||||
self.SetToolTip(None)
|
||||
else:
|
||||
self.hoveredRow = row
|
||||
self.hoveredColumn = col
|
||||
if row != -1 and col != -1 and col < self.ColumnCount:
|
||||
try:
|
||||
fit = self.fits[row]
|
||||
except IndexError:
|
||||
return
|
||||
tooltip = self.activeColumns[col].getToolTip(fit)
|
||||
if tooltip:
|
||||
self.SetToolTip(tooltip)
|
||||
else:
|
||||
self.SetToolTip(self.defaultTT)
|
||||
else:
|
||||
self.SetToolTip(self.defaultTT)
|
||||
event.Skip()
|
||||
|
||||
|
||||
class FitList(BaseList):
|
||||
|
||||
|
||||
Reference in New Issue
Block a user