Changeset 3728


Ignore:
Timestamp:
Nov 11, 2018 9:32:35 PM (3 years ago)
Author:
toby
Message:

fix crash entering modulation on mac

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/GSASIIphsGUI.py

    r3722 r3728  
    16081608                                Id = wx.NewId()
    16091609                                TabSelectionIdDict[Id] = 'Wave Data'
    1610                         else:
    1611                             if 'Wave Data' in pages:
    1612                                 G2frame.phaseDisplay.DeletePage(pages.index('Wave Data'))
     1610# deleting page now causes Mac crash, postpone until page is redrawn
     1611#                        else:
     1612#                            if 'Wave Data' in pages:
     1613#                                G2frame.phaseDisplay.DeletePage(pages.index('Wave Data'))
    16131614                        wx.CallAfter(UpdateGeneral)
    16141615                else:
     
    19921993           
    19931994        def ModulatedSizer(name):
    1994            
     1995            def showSSG(General,msg,text,table,refresh):
     1996                'Show the symmetry information, redraw window if needed'
     1997                dlg = G2G.SGMessageBox(General,msg,text,table)
     1998                dlg.ShowModal()
     1999                dlg.Destroy()
     2000                if refresh: UpdateGeneral()
    19952001            def OnSuperGp(event):   #for HKLF needs to reject SSgps not agreeing with modVec!
     2002                'Respond to selection of a modulation group'
    19962003                event.Skip()
    19972004                try:
     
    20122019                    generalData['SuperSg'] = SSymbol
    20132020                    msg = 'Superspace Group Information'
    2014                     G2G.SGMessageBox(General,msg,text,table).Show()
     2021                    wx.CallLater(100,showSSG,General,msg,text,table,refresh)
    20152022                else:
     2023                    # needed in case someone manually enters an invalid SG?
    20162024                    text = [E+'\nSuperspace Group set to previous']
    20172025                    superGp.SetValue(generalData['SuperSg'])
     
    20202028                    Text = '\n'.join(text)
    20212029                    wx.MessageBox(Text,caption=msg,style=Style)
    2022                 if refresh: wx.CallAfter(UpdateGeneral)               
     2030                    if refresh: wx.CallAfter(UpdateGeneral)               
    20232031                           
    20242032            def OnVecRef(event):
     
    20432051                    Choice = [G2spc.fixGray(SGData,item) for item in Choice]
    20442052            if len(Choice):
    2045                 superGp = wx.ComboBox(General,value=generalData['SuperSg'],choices=Choice,style=wx.CB_DROPDOWN|wx.TE_PROCESS_ENTER)
    2046                 superGp.Bind(wx.EVT_TEXT_ENTER,OnSuperGp)
     2053                # removed code that allows entries to be typed in
     2054                # because Bind to EVT_TEXT_ENTER caused two calls to OnSuperGp
     2055#                superGp = wx.ComboBox(General,value=generalData['SuperSg'],choices=Choice,style=wx.CB_DROPDOWN|wx.TE_PROCESS_ENTER)
     2056#                superGp.Bind(wx.EVT_TEXT_ENTER,OnSuperGp)
     2057                superGp = wx.ComboBox(General,value=generalData['SuperSg'],choices=Choice,style=wx.CB_DROPDOWN|wx.CB_READONLY)
    20472058                superGp.Bind(wx.EVT_COMBOBOX,OnSuperGp)
    20482059            else:
     
    23712382        SetupGeneral()
    23722383        generalData = data['General']
     2384        # remove the Wave Data tab when present and not needed
     2385        if not generalData['Modulated']:
     2386            pages = [G2frame.phaseDisplay.GetPageText(PageNum) for PageNum in range(G2frame.phaseDisplay.GetPageCount())]
     2387            if 'Wave Data' in pages:
     2388                G2frame.phaseDisplay.DeletePage(pages.index('Wave Data'))
    23732389        Map = generalData['Map']
    23742390        Flip = generalData['Flip']
Note: See TracChangeset for help on using the changeset viewer.