Changeset 2113 for trunk/GSASIIphsGUI.py


Ignore:
Timestamp:
Jan 6, 2016 10:14:21 AM (8 years ago)
Author:
vondreele
Message:

better cleanup when main window is closed
add FlagSetDialog? class & use it for wave parameters

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/GSASIIphsGUI.py

    r2111 r2113  
    25392539                atomSizer.Add(WaveSizer(iatm,atm[-1]['SS1']['waveType'],atm[-1]['SS1'][Stype],Stype,typeNames[Stype],Labels[Stype]))                       
    25402540            return atomSizer
    2541                
    25422541
    25432542        atms = wx.ComboBox(waveData,value=G2frame.atmSel,choices=atNames,
     
    25482547        G2frame.bottomSizer = ShowAtomInfo()
    25492548        mainSizer.Add(G2frame.bottomSizer)
    2550         #wxID_WAVEVARY
    25512549        SetPhaseWindow(G2frame.dataFrame,G2frame.waveData,mainSizer,Scroll)
    25522550   
    25532551    def OnWaveVary(event):
    2554         print 'set vary flags for all waves - TBD'
     2552        generalData = data['General']
     2553        cx,ct,cs,cia = generalData['AtomPtrs']
     2554        atomData = data['Atoms']
     2555        atNames = []
     2556        names = ['Sfrac','Spos','Sadp','Smag']
     2557        flags = dict(zip(names,[[],[],[],[]]))
     2558        for atom in atomData:
     2559            atNames.append(atom[ct-1])
     2560            waves = atom[-1]['SS1']
     2561            for name in names:
     2562                if waves[name]:
     2563                    flags[name].append(True)
     2564                else:
     2565                    flags[name].append(False)
     2566        dlg = G2G.FlagSetDialog(G2frame,'Wave refinement flags',['Atom',]+names,atNames,flags)
     2567        try:
     2568            if dlg.ShowModal() == wx.ID_OK:
     2569                flags = dlg.GetSelection()
     2570                for ia,atom in enumerate(atomData):
     2571                    for name in names:
     2572                        for wave in atom[-1]['SS1'][name]:
     2573                            wave[1] = flags[name][ia]
     2574        finally:
     2575            dlg.Destroy()
     2576        UpdateWavesData()
    25552577
    25562578################################################################################
Note: See TracChangeset for help on using the changeset viewer.