Create a proper menu item toggle for overrides

This commit is contained in:
blitzmann
2015-11-01 21:19:49 -05:00
parent e80917e3d1
commit c436e0e669
5 changed files with 28 additions and 16 deletions

View File

@@ -39,7 +39,7 @@ class ChargeAttrShortcut(object):
class ModifiedAttributeDict(collections.MutableMapping):
OVERRIDES = True
OVERRIDES = False
class CalculationPlaceholder():
pass

View File

@@ -29,21 +29,12 @@ from gui.contextMenu import ContextMenu
from wx.lib.buttons import GenBitmapButton
import gui.globalEvents as GE
from eos.modifiedAttributeDict import ModifiedAttributeDict
class CharacterEditor(wx.Frame):
def __init__(self, parent):
wx.Frame.__init__ (self, parent, id=wx.ID_ANY, title=u"pyfa: Character Editor", pos=wx.DefaultPosition,
size=wx.Size(641, 600), style=wx.DEFAULT_FRAME_STYLE|wx.FRAME_FLOAT_ON_PARENT|wx.TAB_TRAVERSAL)
i = wx.IconFromBitmap(BitmapLoader.getBitmap("character_small", "gui"))
print ModifiedAttributeDict.OVERRIDES
ModifiedAttributeDict.OVERRIDES = not ModifiedAttributeDict.OVERRIDES
print ModifiedAttributeDict.OVERRIDES
self.mainFrame = parent
self.SetIcon(i)
self.disableWin= wx.WindowDisabler(self)

View File

@@ -56,6 +56,9 @@ from gui.updateDialog import UpdateDialog
from gui.propertyEditor import AttributeEditor
from gui.builtinViews import *
# import this to access override setting
from eos.modifiedAttributeDict import ModifiedAttributeDict
from time import gmtime, strftime
@@ -422,7 +425,9 @@ class MainFrame(wx.Frame):
# Save current character
self.Bind(wx.EVT_MENU, self.revertChar, id = menuBar.revertCharId)
# Open attribute editor
self.Bind(wx.EVT_MENU, self.showAttrEditor, id = menuBar.attrEditor)
self.Bind(wx.EVT_MENU, self.showAttrEditor, id = menuBar.attrEditorId)
# Open attribute editor
self.Bind(wx.EVT_MENU, self.toggleOverrides, id = menuBar.toggleOverridesId)
#Clipboard exports
self.Bind(wx.EVT_MENU, self.exportToClipboard, id=wx.ID_COPY)
@@ -487,6 +492,12 @@ class MainFrame(wx.Frame):
atable = wx.AcceleratorTable(actb)
self.SetAcceleratorTable(atable)
def toggleOverrides(self, event):
ModifiedAttributeDict.OVERRIDES = not ModifiedAttributeDict.OVERRIDES
wx.PostEvent(self, GE.FitChanged(fitID=self.getActiveFit()))
menu = self.GetMenuBar()
menu.SetLabel(menu.toggleOverridesId, "Turn Overrides Off" if ModifiedAttributeDict.OVERRIDES else "Turn Overrides On")
def saveChar(self, event):
sChr = service.Character.getInstance()
charID = self.charSelection.getActiveCharacter()

View File

@@ -40,7 +40,8 @@ class MainMenuBar(wx.MenuBar):
self.saveCharId = wx.NewId()
self.saveCharAsId = wx.NewId()
self.revertCharId = wx.NewId()
self.attrEditor = wx.NewId()
self.attrEditorId = wx.NewId()
self.toggleOverridesId = wx.NewId()
self.mainFrame = gui.mainFrame.MainFrame.getInstance()
@@ -79,6 +80,9 @@ class MainMenuBar(wx.MenuBar):
editMenu.Append(self.saveCharId, "Save Character")
editMenu.Append(self.saveCharAsId, "Save Character As...")
editMenu.Append(self.revertCharId, "Revert Character")
editMenu.AppendSeparator()
editMenu.Append(self.toggleOverridesId, "Turn Overrides On")
# Character menu
windowMenu = wx.Menu()
self.Append(windowMenu, "&Window")
@@ -103,8 +107,8 @@ class MainMenuBar(wx.MenuBar):
preferencesItem.SetBitmap(BitmapLoader.getBitmap("preferences_small", "gui"))
windowMenu.AppendItem(preferencesItem)
attrItem = wx.MenuItem(windowMenu, self.attrEditor, "Attribute Editor\tCTRL+A")
attrItem.SetBitmap(BitmapLoader.getBitmap("preferences_small", "gui"))
attrItem = wx.MenuItem(windowMenu, self.attrEditorId, "Attribute Overrides\tCTRL+A")
attrItem.SetBitmap(BitmapLoader.getBitmap("fit_rename_small", "gui"))
windowMenu.AppendItem(attrItem)
# Help menu

View File

@@ -4,8 +4,9 @@ import wx.propgrid as wxpg
import gui.PFSearchBox as SBox
from gui.marketBrowser import SearchBox
import gui.display as d
import service
import gui.globalEvents as GE
from gui.bitmapLoader import BitmapLoader
import service
import logging
@@ -14,7 +15,12 @@ logger = logging.getLogger(__name__)
class AttributeEditor( wx.Frame ):
def __init__( self, parent ):
wx.Frame.__init__(self, parent, wx.ID_ANY, title="Attribute Editor", size=wx.Size(700,500))
wx.Frame.__init__(self, parent, wx.ID_ANY, title="Attribute Editor", pos=wx.DefaultPosition,
size=wx.Size(650, 600), style=wx.DEFAULT_FRAME_STYLE|wx.FRAME_FLOAT_ON_PARENT|wx.TAB_TRAVERSAL)
i = wx.IconFromBitmap(BitmapLoader.getBitmap("fit_rename_small", "gui"))
self.SetIcon(i)
self.mainFrame = parent
self.panel = panel = wx.Panel(self, wx.ID_ANY)
topsizer = wx.BoxSizer(wx.HORIZONTAL)