Update graph info when fit name changes

This commit is contained in:
DarkPhoenix
2019-07-07 02:33:54 +03:00
parent 3e410540c9
commit 5b74c6c5e1
41 changed files with 61 additions and 47 deletions

View File

@@ -31,6 +31,7 @@ import gui.globalEvents as GE
import gui.mainFrame
from gui.bitmap_loader import BitmapLoader
from gui.builtinGraphs.base import FitGraph
from gui.builtinShipBrowser.events import EVT_FIT_RENAMED
from service.const import GraphCacheCleanupReason
from service.settings import GraphSettings
from .panel import GraphControlPanel
@@ -123,6 +124,7 @@ class GraphFrame(wx.Frame):
self.Bind(wx.EVT_CHAR_HOOK, self.kbEvent)
# Event bindings - external events
self.mainFrame.Bind(GE.FIT_CHANGED, self.OnFitChanged)
self.mainFrame.Bind(EVT_FIT_RENAMED, self.OnFitRenamed)
self.mainFrame.Bind(GE.GRAPH_OPTION_CHANGED, self.OnGraphOptionChanged)
self.Layout()
@@ -156,6 +158,10 @@ class GraphFrame(wx.Frame):
self.clearCache(reason=GraphCacheCleanupReason.fitChanged, extraData=event.fitID)
self.draw()
def OnFitRenamed(self, event):
event.Skip()
self.draw()
def OnGraphOptionChanged(self, event):
event.Skip()
self.clearCache(reason=GraphCacheCleanupReason.optionChanged)
@@ -171,6 +177,7 @@ class GraphFrame(wx.Frame):
def closeWindow(self):
self.mainFrame.Unbind(GE.FIT_CHANGED, handler=self.OnFitChanged)
self.mainFrame.Unbind(EVT_FIT_RENAMED, handler=self.OnFitRenamed)
self.mainFrame.Unbind(GE.GRAPH_OPTION_CHANGED, handler=self.OnGraphOptionChanged)
self.ctrlPanel.unbindExternalEvents()
self.Destroy()

View File

@@ -23,6 +23,7 @@ import wx
import gui.display
import gui.globalEvents as GE
from gui.builtinShipBrowser.events import EVT_FIT_RENAMED
from service.fit import Fit
@@ -46,6 +47,7 @@ class BaseList(gui.display.Display):
self.contextMenu.Bind(wx.EVT_MENU, self.ContextMenuHandler, removeItem)
self.graphFrame.mainFrame.Bind(GE.FIT_REMOVED, self.OnFitRemoved)
self.graphFrame.mainFrame.Bind(EVT_FIT_RENAMED, self.OnFitRenamed)
self.Bind(wx.EVT_LEFT_DCLICK, self.OnLeftDClick)
self.Bind(wx.EVT_CHAR_HOOK, self.kbEvent)
self.Bind(wx.EVT_CONTEXT_MENU, self.OnContextMenu)
@@ -85,6 +87,10 @@ class BaseList(gui.display.Display):
if fit is not None:
self.removeFits([fit])
def OnFitRenamed(self, event):
event.Skip()
self.update(self.fits)
def getSelectedFits(self):
fits = []
for row in self.getSelectedRows():
@@ -108,6 +114,7 @@ class BaseList(gui.display.Display):
def unbindExternalEvents(self):
self.graphFrame.mainFrame.Unbind(GE.FIT_REMOVED, handler=self.OnFitRemoved)
self.graphFrame.mainFrame.Unbind(EVT_FIT_RENAMED, handler=self.OnFitRenamed)
def handleDrag(self, type, fitID):
if type == 'fit':