Changeset 2521
- Timestamp:
- Nov 13, 2016 8:27:56 PM (6 years ago)
- Location:
- trunk
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/GSASIIgrid.py
r2520 r2521 1956 1956 self.PeakEdit = wx.Menu(title='') 1957 1957 self.PeakMenu.Append(menu=self.PeakEdit, title='Peak Fitting') 1958 self.peaksSel = self.PeakEdit.Append(wx.ID_ANY, 1959 help='Set refinement flags for selected peaks', 1960 kind=wx.ITEM_NORMAL, 1961 text='Set sel. ref flags...') 1962 self.peaksAll = self.PeakEdit.Append(wx.ID_ANY, 1963 help='Set refinement flags for all peaks', 1964 kind=wx.ITEM_NORMAL, 1965 text='Set all ref flags...') 1958 1966 self.AutoSearch = self.PeakEdit.Append(help='Automatic peak search', 1959 1967 id=wxID_AUTOSEARCH, kind=wx.ITEM_NORMAL,text='Auto search') -
trunk/GSASIIphsGUI.py
r2517 r2521 1 #indx = Atoms.GetSelectedRows()2 1 # -*- coding: utf-8 -*- 3 2 #GSASII - phase data display routines -
trunk/GSASIIplot.py
r2508 r2521 1462 1462 xy[1] = xy[1]**2 1463 1463 if G2frame.PatternTree.GetItemText(PickId) == 'Peak List': 1464 if ind.all() != [0] and ObsLine[0].get_label() in str(pick): 1464 if ind.all() != [0] and ObsLine[0].get_label() in str(pick): #picked a data point 1465 1465 data = G2frame.PatternTree.GetItemPyData(G2frame.PickId) 1466 1466 XY = G2mth.setPeakparms(Parms,Parms2,xy[0],xy[1]) … … 1470 1470 PlotPatterns(G2frame,plotType=plottype) 1471 1471 else: #picked a peak list line 1472 # prepare to animate move of line 1472 1473 G2frame.itemPicked = pick 1474 pick.set_linestyle(':') # set line as dotted 1475 Page = G2frame.G2plotNB.nb.GetPage(plotNum) 1476 Plot = Page.figure.gca() 1477 Page.canvas.draw() # refresh without dotted line & save bitmap 1478 savedplot = Page.canvas.copy_from_bbox(Page.figure.gca().bbox) 1479 G2frame.cid = Page.canvas.mpl_connect('motion_notify_event', OnDragLine) 1480 pick.set_linestyle('--') # back to dashed 1473 1481 elif G2frame.PatternTree.GetItemText(PickId) == 'Limits': 1474 1482 if ind.all() != [0]: #picked a data point … … 2003 2011 Page.canvas.SetToolTipString(tip) 2004 2012 data = G2frame.PatternTree.GetItemPyData(G2gd.GetPatternTreeItemId(G2frame,PatternId, 'Peak List')) 2005 for item in data['peaks']: 2013 selectedPeaks = list(set( 2014 [row for row,col in G2frame.dataDisplay.GetSelectedCells()] + 2015 G2frame.dataDisplay.GetSelectedRows())) 2016 for i,item in enumerate(data['peaks']): 2017 if i in selectedPeaks: 2018 Ni = N+1 2019 else: 2020 Ni = N 2006 2021 if G2frame.plotStyle['qPlot']: 2007 Lines.append(Plot.axvline(2.*np.pi/G2lat.Pos2dsp(Parms,item[0]),color=colors[N %6],picker=2.))2022 Lines.append(Plot.axvline(2.*np.pi/G2lat.Pos2dsp(Parms,item[0]),color=colors[Ni%6],picker=2.)) 2008 2023 elif G2frame.plotStyle['dPlot']: 2009 Lines.append(Plot.axvline(G2lat.Pos2dsp(Parms,item[0]),color=colors[N %6],picker=2.))2024 Lines.append(Plot.axvline(G2lat.Pos2dsp(Parms,item[0]),color=colors[Ni%6],picker=2.)) 2010 2025 else: 2011 Lines.append(Plot.axvline(item[0],color=colors[N %6],picker=2.))2026 Lines.append(Plot.axvline(item[0],color=colors[Ni%6],picker=2.)) 2012 2027 if G2frame.PatternTree.GetItemText(PickId) == 'Limits': 2013 2028 tip = 'On data point: Lower limit - L MB; Upper limit - R MB. On limit: MB down to move' -
trunk/GSASIIpwdGUI.py
r2519 r2521 745 745 G2plt.PlotPatterns(G2frame,plotType='PWDR') 746 746 747 def SelectVars(rows): 748 '''Set or clear peak refinement variables for peaks listed in rows 749 ''' 750 refOpts = {G2frame.dataDisplay.GetColLabelValue(i):i+1 for i in range(G2frame.dataDisplay.GetNumberCols()) if G2frame.dataDisplay.GetColLabelValue(i) != "refine"} 751 dlg = G2G.G2MultiChoiceDialog( 752 G2frame.dataFrame, 753 'Select columns to refine', 754 'Refinement Selection', sorted(refOpts.keys()), 755 filterBox=False,toggle=False) 756 sels = [] 757 try: 758 if dlg.ShowModal() == wx.ID_OK: 759 sels = [sorted(refOpts.keys())[i] for i in dlg.GetSelections()] 760 else: 761 return 762 finally: 763 dlg.Destroy() 764 for r in rows: 765 for lbl,c in refOpts.iteritems(): 766 data['peaks'][r][c] = lbl in sels 767 UpdatePeakGrid(G2frame,data) 768 769 def OnRefineSelected(event): 770 '''set refinement flags for the selected peaks 771 ''' 772 rows = list(set([row for row,col in G2frame.dataDisplay.GetSelectedCells()] + 773 G2frame.dataDisplay.GetSelectedRows())) 774 if not rows: 775 wx.MessageBox('No selected rows. You must select rows or cells before using this command', 776 caption='No selected peaks') 777 return 778 SelectVars(rows) 779 780 def OnRefineAll(event): 781 '''set refinement flags for all peaks 782 ''' 783 SelectVars(range(G2frame.dataDisplay.GetNumberRows())) 784 785 def onSelectedRow(event): 786 '''Called when a peak is selected so that it can be highlighted in the plot 787 ''' 788 event.Skip() 789 wx.CallAfter(G2plt.PlotPatterns,G2frame,plotType='PWDR') 790 791 #====================================================================== 792 # beginning of UpdatePeakGrid init 793 #====================================================================== 747 794 G2gd.SetDataMenuBar(G2frame,G2frame.dataFrame.PeakMenu) 748 795 if not G2frame.dataFrame.GetStatusBar(): … … 752 799 G2frame.Bind(wx.EVT_MENU, OnCopyPeaks, id=G2gd.wxID_PEAKSCOPY) 753 800 G2frame.Bind(wx.EVT_MENU, OnUnDo, id=G2gd.wxID_UNDO) 801 G2frame.Bind(wx.EVT_MENU, OnRefineSelected, id=G2frame.dataFrame.peaksSel.GetId()) 802 G2frame.Bind(wx.EVT_MENU, OnRefineAll, id=G2frame.dataFrame.peaksAll.GetId()) 754 803 G2frame.Bind(wx.EVT_MENU, OnLSQPeakFit, id=G2gd.wxID_LSQPEAKFIT) 755 804 G2frame.Bind(wx.EVT_MENU, OnOneCycle, id=G2gd.wxID_LSQONECYCLE) … … 807 856 G2frame.dataDisplay.Bind(wg.EVT_GRID_CELL_CHANGE, RefreshPeakGrid) 808 857 G2frame.dataDisplay.Bind(wx.EVT_KEY_DOWN, KeyEditPeakGrid) 858 G2frame.dataDisplay.Bind(wg.EVT_GRID_LABEL_LEFT_CLICK, onSelectedRow) 859 G2frame.dataDisplay.Bind(wg.EVT_GRID_CELL_LEFT_CLICK, onSelectedRow) 809 860 G2frame.dataDisplay.SetMargins(0,0) 810 861 G2frame.dataDisplay.AutoSizeColumns(False) 811 862 G2frame.dataFrame.setSizePosLeft([535,350]) 812 863 G2frame.dataFrame.SendSizeEvent() 813 864 814 865 ################################################################################ 815 866 ##### Background
Note: See TracChangeset
for help on using the changeset viewer.