Skip to content

Commit c9d9c84

Browse files
committed
Add CallAfter on Phase NB page to avoid Windows crash
1 parent 7dcb2aa commit c9d9c84

File tree

1 file changed

+6
-5
lines changed

1 file changed

+6
-5
lines changed

GSASII/GSASIIphsGUI.py

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12958,19 +12958,20 @@ def OnPageChanged(event):
1295812958
'''
1295912959
page = event.GetSelection()
1296012960
G2frame.phaseDisplay.SetSize(G2frame.dataWindow.GetClientSize()) #TODO -almost right
12961-
ChangePage(page)
12962-
12963-
def ChangePage(page):
12964-
newlist = []
1296512961
# force edits in open grids to complete
12962+
newlist = []
1296612963
for p in G2frame.phaseDisplay.gridList:
1296712964
if not p: continue # skip deleted grids
1296812965
try:
1296912966
p.ClearGrid()
1297012967
newlist.append(p)
1297112968
except:
1297212969
pass
12973-
G2frame.phaseDisplay.gridList = newlist # remove deleted grids from list
12970+
G2frame.phaseDisplay.gridList = newlist # remove deleted grids from lis
12971+
# let the pending events clear before posting the new NB page
12972+
wx.CallAfter(ChangePage,page)
12973+
12974+
def ChangePage(page):
1297412975
text = G2frame.phaseDisplay.GetPageText(page)
1297512976
G2frame.lastSelectedPhaseTab = text
1297612977
G2frame.dataWindow.helpKey = 'Phase-'+text # use name of Phase tab for help lookup

0 commit comments

Comments
 (0)