Changeset 2412 for trunk/GSASIIpwdGUI.py


Ignore:
Timestamp:
Aug 9, 2016 12:36:20 PM (5 years ago)
Author:
vondreele
Message:

fixes to PDF stuff

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/GSASIIpwdGUI.py

    r2380 r2412  
    46274627                       
    46284628        item = data[key]
    4629         fileList = np.array(GetFileList('PWDR')).T[1]
     4629        fileList = GetFileList('PWDR')
    46304630        fileSizer.Add(wx.StaticText(parent=G2frame.dataDisplay,label=' '+key+' file:'),0,WACV)
    46314631        fileName = wx.ComboBox(G2frame.dataDisplay,value=item['Name'],choices=fileList,
     
    48504850        G2plt.PlotISFG(G2frame,newPlot=True)       
    48514851
    4852     def GetFileList(fileType,skip=None):
    4853         fileList = [[False,'',0]]
    4854         Source = ''
     4852    def GetFileList(fileType):
     4853        fileList = []
    48554854        id, cookie = G2frame.PatternTree.GetFirstChild(G2frame.root)
    48564855        while id:
    48574856            name = G2frame.PatternTree.GetItemText(id)
    48584857            if fileType in name:
    4859                 if id == skip:
    4860                     Source = name
    4861                 else:
    4862                     fileList.append([False,name,id])
     4858                fileList.append(name)
    48634859            id, cookie = G2frame.PatternTree.GetNextChild(G2frame.root, cookie)
    4864         if skip:
    4865             return fileList,Source
    4866         else:
    4867             return fileList
     4860        return fileList
    48684861       
    48694862    def OnCopyPDFControls(event):
    48704863        import copy
    4871         TextList,Source = GetFileList('PDF',skip=G2frame.PatternId)
    4872         TextList[0] = [False,'All PDF',0]
     4864        TextList = GetFileList('PDF')
     4865        Source = G2frame.PatternTree.GetItemText(G2frame.PatternId)
    48734866        if len(TextList) == 1:
    48744867            G2frame.ErrorDialog('Nothing to copy controls to','There must be more than one "PDF" pattern')
    48754868            return
    4876         dlg = G2frame.CopyDialog(G2frame,'Copy PDF controls','Copy controls from '+Source+' to:',TextList)
     4869        dlg = G2G.G2MultiChoiceDialog(G2frame,'Copy PDF controls','Copy controls from '+Source+' to:',TextList)
    48774870        try:
    48784871            if dlg.ShowModal() == wx.ID_OK:
    4879                 result = dlg.GetData()
    4880                 if result[0][0]:
    4881                     result = TextList[1:]
    4882                     for item in result: item[0] = True
    4883                 for i,item in enumerate(result):
    4884                     ifcopy,name,id = item
    4885                     if ifcopy:
    4886                         olddata = G2frame.PatternTree.GetItemPyData(G2gd.GetPatternTreeItemId(G2frame,id, 'PDF Controls'))
    4887                         sample = olddata['Sample']
    4888                         olddata.update(copy.deepcopy(data))
    4889                         olddata['Sample'] = sample
    4890                         G2frame.PatternTree.SetItemPyData(G2gd.GetPatternTreeItemId(G2frame,id, 'PDF Controls'),olddata)
     4872                PDFlist = [TextList[i] for i in dlg.GetSelections()]
     4873                for item in PDFlist:
     4874                    id = G2gd.GetPatternTreeItemId(G2frame,G2frame.root,item)
     4875                    olddata = G2frame.PatternTree.GetItemPyData(G2gd.GetPatternTreeItemId(G2frame,id, 'PDF Controls'))
     4876                    sample = olddata['Sample']
     4877                    olddata.update(copy.deepcopy(data))
     4878                    olddata['Sample'] = sample
     4879                    G2frame.PatternTree.SetItemPyData(G2gd.GetPatternTreeItemId(G2frame,id, 'PDF Controls'),olddata)
    48914880                Status.SetStatusText('PDF controls copied')
    48924881        finally:
     
    49414930        powName = Data['Sample']['Name']
    49424931        powId = G2gd.GetPatternTreeItemId(G2frame,G2frame.root,powName)
     4932        limits = G2frame.PatternTree.GetItemPyData(G2gd.GetPatternTreeItemId(G2frame,powId,'Limits'))[1]
    49434933        inst = G2frame.PatternTree.GetItemPyData(G2gd.GetPatternTreeItemId(G2frame,powId,'Instrument Parameters'))[0]
    4944         auxPlot = G2pwd.CalcPDF(Data,inst,xydata)
     4934        auxPlot = G2pwd.CalcPDF(Data,inst,limits,xydata)
    49454935        PDFId = G2gd.GetPatternTreeItemId(G2frame,G2frame.root,'PDF '+powName[4:])
    49464936        G2frame.PatternTree.SetItemPyData(G2gd.GetPatternTreeItemId(G2frame,PDFId,'I(Q)'+powName[4:]),xydata['IofQ'])
     
    49754965                id, cookie = G2frame.PatternTree.GetNextChild(G2frame.root, cookie)
    49764966            Status.SetStatusText('All PDFs computed')
     4967            G2plt.PlotISFG(G2frame,newPlot=True,type='I(Q)')
     4968            G2plt.PlotISFG(G2frame,newPlot=True,type='S(Q)')
     4969            G2plt.PlotISFG(G2frame,newPlot=True,type='F(Q)')
    49774970            G2plt.PlotISFG(G2frame,newPlot=True,type='G(R)')
    49784971            print ' Done calculating PDFs:'
Note: See TracChangeset for help on using the changeset viewer.