Fixed ticket #84, it seems that not only wxmac sux but wxgtk too, character editor remade as wx.frame + some tricks to emulate a modal dialog

This commit is contained in:
HomeWorld
2010-10-07 17:06:30 +03:00
parent cc2d9a9391
commit 4d102c5d8a
2 changed files with 10 additions and 7 deletions

View File

@@ -31,13 +31,15 @@ import sys
CharListUpdated, CHAR_LIST_UPDATED = wx.lib.newevent.NewEvent()
CharChanged, CHAR_CHANGED = wx.lib.newevent.NewEvent()
class CharacterEditor(wx.Dialog):
class CharacterEditor(wx.Frame):
def __init__(self, parent):
wx.Dialog.__init__ (self, parent, id=wx.ID_ANY, title=u"pyfa: Character Editor", pos=wx.DefaultPosition,
size=wx.Size(641, 600), style=wx.CAPTION | wx.DEFAULT_DIALOG_STYLE | wx.RESIZE_BORDER)
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)
self.disableWin=wx.WindowDisabler(self)
self.SetSizeHintsSz(wx.Size(640, 600), wx.DefaultSize)
self.SetBackgroundColour( wx.SystemSettings.GetColour( wx.SYS_COLOUR_BTNFACE ) )
mainSizer = wx.BoxSizer(wx.VERTICAL)
self.navSizer = wx.BoxSizer(wx.HORIZONTAL)
@@ -120,6 +122,7 @@ class CharacterEditor(wx.Dialog):
def editingFinished(self, event):
wx.PostEvent(self.mainFrame, CharListUpdated())
self.Destroy()
event.Skip()
def registerEvents(self):

View File

@@ -125,9 +125,9 @@ class MainFrame(wx.Frame):
wx.AboutBox(info)
def showCharacterEditor(self, event):
dlg=CharacterEditor(None)
dlg.ShowModal()
dlg.Destroy()
dlg=CharacterEditor(self)
dlg.Show()
cFit = service.Fit.getInstance()
cFit.clearFit(self.getActiveFit())
wx.PostEvent(self, fv.FitChanged(fitID=self.getActiveFit()))