Changeset 22
- Timestamp:
- Feb 1, 2010 3:02:37 PM (12 years ago)
- Location:
- trunk
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/GSASII.py
r21 r22 256 256 self.PDevent = [] 257 257 self.IMevent = [] 258 self.SCevent = [] 259 self.Sngl = 0 258 260 259 261 def OnSize(self,event): … … 350 352 finally: 351 353 wx.EndBusyCursor() 354 self.PatternTree.Expand(Id) 355 self.PatternTree.SelectItem(Id) 352 356 self.NewPlot = True 353 357 self.PlotPatterns() … … 355 359 finally: 356 360 dlg.Destroy() 357 self.PatternTree.Expand(self.root)358 361 359 362 def OnReadPowderPeaks(self,event): … … 381 384 self.PatternTree.SetItemPyData(self.PatternTree.AppendItem(Id,text='Unit Cells List'),[]) 382 385 self.NewPlot = True 386 self.PatternTree.Expand(Id) 383 387 finally: 384 388 dlg.Destroy() … … 414 418 Data = copy.copy(self.imageDefault) 415 419 Data['refine'] = [False,False,False,False,False] 420 Data['showLines'] = True 416 421 else: 417 422 Data['color'] = 'binary' … … 434 439 self.Image = Id 435 440 self.PlotImage() 441 self.PatternTree.SelectItem(Id) 442 self.PatternTree.Expand(Id) 436 443 finally: 437 dlg.Destroy() 444 dlg.Destroy() 438 445 439 446 def OnSnglReadMenu(self,event): … … 451 458 wx.BeginBusyCursor() 452 459 try: 460 Data = {} 453 461 names = ['Type','Lam'] 454 HKLref = G2IO.GetHKLData(filename)455 Id = self.PatternTree.AppendItem(parent Id=self.root,text='SXTL '+ospath.basename(filename))456 self.PatternTree.SetItemPyData(Id, [filename,HKLref])462 HKLref,HKLmin,HKLmax,FoMax,ifFc = G2IO.GetHKLData(filename) 463 Id = self.PatternTree.AppendItem(parent=self.root,text='SXTL '+ospath.basename(filename)) 464 self.PatternTree.SetItemPyData(Id,HKLref) 457 465 Sub = self.PatternTree.AppendItem(Id,text='Instrument Parameters') 458 466 data = ['SXC',1.5428,] 459 467 self.PatternTree.SetItemPyData(Sub,[tuple(data),data,names]) 468 Data['Type'] = 'Fosq' 469 Data['ifFc'] = ifFc 470 Data['HKLmax'] = HKLmax 471 Data['HKLmin'] = HKLmin 472 Data['FoMax'] = FoMax 473 Data['Zone'] = '001' 474 Data['Layer'] = 0 475 Data['Scale'] = 1.0 476 Data['log-lin'] = 'lin' 477 self.PatternTree.SetItemPyData(self.PatternTree.AppendItem(Id,text='HKL Plot Controls'),Data) 478 self.PatternTree.SelectItem(Id) 479 self.PatternTree.Expand(Id) 480 self.Sngl = Id 460 481 finally: 461 482 wx.EndBusyCursor() 462 483 finally: 463 484 dlg.Destroy() 464 self.PatternTree.Expand(self.root)465 485 466 486 class SumDialog(wx.Dialog): … … 619 639 self.PatternTree.SetItemPyData(self.PatternTree.AppendItem(Id,text='Index Peak List'),[]) 620 640 self.PatternTree.SetItemPyData(self.PatternTree.AppendItem(Id,text='Unit Cells List'),[]) 641 self.PatternTree.SelectItem(Id) 621 642 622 643 self.PlotPatterns() … … 684 705 self.PatternTree.SetItemPyData(self.PatternTree.AppendItem(Id,text='Comments'),Comments) 685 706 self.PatternTree.SetItemPyData(self.PatternTree.AppendItem(Id,text='Image Controls'),Data) 707 self.PatternTree.SelectItem(Id) 686 708 self.PickId = Id 687 709 self.Image = Id … … 1148 1170 self.RefineCell.Enable(True) 1149 1171 self.IndexPeaks.Enable(True) 1172 1173 def ClearEventList(self,eventList): 1174 if eventList: 1175 for i in range(len(eventList)): 1176 self.pdplot.canvas.mpl_disconnect(eventList[i]) 1177 return [] 1150 1178 1151 1179 def PlotPeakWidths(self): … … 1172 1200 try: 1173 1201 self.pdplot.clear() 1202 self.IMevent = self.ClearEventList(self.IMevent) 1203 self.PDevent = self.ClearEventList(self.PDevent) 1204 self.SCevent = self.ClearEventList(self.SCevent) 1174 1205 self.pdplot.canvas.set_window_title('Peak Widths') 1175 1206 except: … … 1239 1270 1240 1271 def OnImMotion(event): 1272 self.pdplot.canvas.SetToolTipString('') 1241 1273 if event.xdata: 1242 1274 item = self.itemPicked 1243 1275 if item and self.PatternTree.GetItemText(self.PickId) == 'Image Controls': 1244 xpos = event.xdata1245 if xpos: #avoid out of frame mouse position1246 ypos = event.ydata1276 if 'Text' in str(item) and Data['refine'][0]: 1277 self.pdplot.canvas.SetToolTipString('%8.3f %8.3fmm'%(event.xdata/scalex,event.ydata/scaley)) 1278 else: 1247 1279 xcent,ycent = Data['center'] 1248 xpos -= xcent*scalex 1249 ypos -= ycent*scaley 1250 if 'Text' in str(item) and Data['refine'][0]: 1251 self.pdplot.canvas.SetToolTipString('%8.3f %8.3fmm'%(event.xdata/scalex,event.ydata/scaley)) 1252 else: 1253 if 'line2' in str(item) or 'line3' in str(item) and not Data['fullIntegrate']: 1254 ang = int(atan2d(-ypos,xpos)) 1255 self.pdplot.canvas.SetToolTipString('%6d deg'%(ang)) 1256 else: 1257 radius = math.sqrt(xpos**2+ypos**2) 1258 self.pdplot.canvas.SetToolTipString('%8.3fmm'%(radius/scalex)) 1280 xpos = event.xdata-xcent*scalex 1281 ypos = event.ydata-ycent*scaley 1282 if 'line2' in str(item) or 'line3' in str(item) and not Data['fullIntegrate']: 1283 ang = int(atan2d(-ypos,xpos)) 1284 self.pdplot.canvas.SetToolTipString('%6d deg'%(ang)) 1285 elif 'line0' in str(item) or 'line1' in str(item): 1286 radius = math.sqrt(xpos**2+ypos**2) 1287 self.pdplot.canvas.SetToolTipString('%8.3fmm'%(radius/scalex)) 1259 1288 else: 1260 size = len(self.ImageZ) 1261 xpos = int(event.xdata)*self.imScale 1262 ypos = int(event.ydata)*self.imScale 1263 if (0 < xpos < size) and (0 < ypos < size): #avoid out of image position 1264 z = self.ImageZ[ypos][xpos] 1265 self.pdplot.canvas.SetToolTipString('%6d'%(z)) 1289 self.pdplot.canvas.SetToolTipString('%6d'%(self.ImageZ[int(event.ydata)*self.imScale] \ 1290 [int(event.xdata)*self.imScale])) 1266 1291 1267 1292 def OnImPlotKeyPress(event): … … 1339 1364 self.itemPicked = None 1340 1365 1341 1342 1366 newPlot = False 1343 1367 self.NewPlot = True … … 1347 1371 self.pdplot.canvas.toolbar.set_history_buttons() 1348 1372 self.pdplot.canvas.set_window_title('2D Powder Image') 1349 if self.PDevent: 1350 for i in range(len(self.PDevent)): 1351 self.pdplot.canvas.mpl_disconnect(self.PDevent[i]) 1352 self.PDevent = [] 1373 self.PDevent = self.ClearEventList(self.PDevent) 1374 self.SCevent = self.ClearEventList(self.SCevent) 1353 1375 except: 1354 1376 self.pdplot = pylab.figure(facecolor='white') … … 1420 1442 pylab.show() 1421 1443 else: #1st plot 1422 pylab.draw() 1423 1444 pylab.draw() 1424 1445 1425 1446 def PlotPatterns(self): … … 1525 1546 self.pdplot.canvas.toolbar.set_history_buttons() 1526 1547 self.pdplot.canvas.set_window_title('Powder Patterns') 1527 if self.IMevent: 1528 for i in range(len(self.IMevent)): 1529 self.pdplot.canvas.mpl_disconnect(self.IMevent[i]) 1530 self.IMevent = [] 1548 self.IMevent = self.ClearEventList(self.IMevent) 1549 self.SCevent = self.ClearEventList(self.SCevent) 1531 1550 except: 1532 1551 self.pdplot = pylab.figure(facecolor='white') … … 1646 1665 pylab.draw() 1647 1666 1667 def PlotSngl(self): 1668 from matplotlib.patches import Circle 1669 1670 def OnSCMotion(event): 1671 xpos = event.xdata 1672 if xpos: 1673 xpos = round(xpos) #avoid out of frame mouse position 1674 ypos = round(event.ydata) 1675 zpos = Data['Layer'] 1676 if '100' in Data['Zone']: 1677 self.pdplot.canvas.SetToolTipString('(%3d,%3d,%3d)'%(zpos,xpos,ypos)) 1678 elif '010' in Data['Zone']: 1679 self.pdplot.canvas.SetToolTipString('(%3d,%3d,%3d)'%(xpos,zpos,ypos)) 1680 elif '001' in Data['Zone']: 1681 self.pdplot.canvas.SetToolTipString('(%3d,%3d,%3d)'%(xpos,ypos,zpos)) 1682 1683 def OnSCPick(event): 1684 # print str(event.artist).split('(') 1685 pass 1686 1687 try: 1688 if self.NewPlot: 1689 self.pdplot.clear() 1690 self.pdplot.canvas.toolbar.set_history_buttons() 1691 self.pdplot.canvas.set_window_title('Structure Factors') 1692 self.IMevent = self.ClearEventList(self.IMevent) 1693 self.PDevent = self.ClearEventList(self.PDevent) 1694 except: 1695 self.pdplot = pylab.figure(facecolor='white') 1696 self.pdplot.clear() 1697 self.pdplot.canvas.set_window_title('Structure Factors') 1698 self.NewPlot = True 1699 if not self.SCevent: 1700 self.SCevent.append(self.pdplot.canvas.mpl_connect('pick_event', OnSCPick)) 1701 self.SCevent.append(self.pdplot.canvas.mpl_connect('motion_notify_event', OnSCMotion)) 1702 PickId = self.PickId 1703 ax = self.pdplot.add_subplot(111) 1704 ax.set_aspect(aspect='equal') 1705 HKLref = self.PatternTree.GetItemPyData(self.Sngl) 1706 Data = self.PatternTree.GetItemPyData( \ 1707 G2gd.GetPatternTreeItemId(self,self.Sngl, 'HKL Plot Controls')) 1708 1709 Type = Data['Type'] 1710 scale = Data['Scale'] 1711 HKLmax = Data['HKLmax'] 1712 HKLmin = Data['HKLmin'] 1713 FosqMax = Data['FoMax'] 1714 FoMax = math.sqrt(FosqMax) 1715 ifFc = Data['ifFc'] 1716 xlabel = ['k, h=','h, k=','h, l='] 1717 ylabel = ['l','l','k'] 1718 zones = ['100','010','001'] 1719 pzone = [[1,2],[0,2],[0,1]] 1720 izone = zones.index(Data['Zone']) 1721 for h,k,l,Fosq,sig,Fcsq,x,x,x in HKLref: 1722 H = [h,k,l] 1723 if H[izone] == Data['Layer']: 1724 B = 0 1725 if Type == 'Fosq': 1726 A = scale*Fosq/FosqMax 1727 B = scale*Fcsq/FosqMax 1728 C = abs(A-B) 1729 elif Type == 'Fo': 1730 A = scale*math.sqrt(max(0,Fosq))/FoMax 1731 B = scale*math.sqrt(max(0,Fcsq))/FoMax 1732 C = abs(A-B) 1733 elif Type == '|DFsq|/sig': 1734 A = abs(Fosq-Fcsq)/(scale*sig) 1735 elif Type == '|DFsq|>sig': 1736 A = abs(Fosq-Fcsq)/(scale*sig) 1737 if A < 1.0: A = 0 1738 elif Type == '|DFsq|>3sig': 1739 A = abs(Fosq-Fcsq)/(scale*sig) 1740 if A < 3.0: A = 0 1741 xy = (H[pzone[izone][0]],H[pzone[izone][1]]) 1742 ax.add_artist(Circle(xy,radius=A,ec='g',fc='w')) 1743 if B: 1744 ax.add_artist(Circle(xy,radius=B,ec='b',fc='w',picker=3)) 1745 radius = C 1746 if radius > 0: 1747 if A > B: 1748 ax.add_artist(Circle(xy,radius=radius,ec='r',fc='r')) 1749 else: 1750 ax.add_artist(Circle(xy,radius=radius,ec='g',fc='g')) 1751 1752 ax.set_xlabel(xlabel[izone]+str(Data['Layer']),fontsize=12) 1753 ax.set_ylabel(ylabel[izone],fontsize=12) 1754 ax.set_xlim((HKLmin[pzone[izone][0]],HKLmax[pzone[izone][0]])) 1755 ax.set_ylim((HKLmin[pzone[izone][1]],HKLmax[pzone[izone][1]])) 1756 1757 if self.NewPlot: 1758 pylab.show() 1759 self.NewPlot = False 1760 else: #1st plot 1761 pylab.draw() 1648 1762 1649 1763 def ErrorDialog(self,title,message): -
trunk/GSASIIIO.py
r12 r22 162 162 File = open(filename,'Ur') 163 163 HKLref = [] 164 HKLmin = [1000,1000,1000] 165 HKLmax = [0,0,0] 166 FoMax = 0 167 ifFc = False 164 168 S = File.readline() 165 while S: 166 h,k,l,Fo,sigFo = S.split() 167 HKLref.append([h,k,l,Fo,sigFo,0,0,0,0]) #room for Fc, Fcp, Fcpp & phase 168 S = File.readline() 169 while '#' in S[0]: #get past comments if any 170 S = File.readline() 171 if '_' in S: #cif style .hkl file 172 while 'loop_' not in S: #skip preliminaries if any - can't have 'loop_' in them! 173 S = File.readline() 174 S = File.readline() #get past 'loop_' line 175 pos = 0 176 hpos = kpos = lpos = Fosqpos = Fcsqpos = sigpos = -1 177 while S: 178 if '_' in S: 179 if 'index_h' in S: 180 hpos = pos 181 elif 'index_k' in S: 182 kpos = pos 183 elif 'index_l' in S: 184 lpos = pos 185 elif 'F_squared_meas' in S: 186 Fosqpos = pos 187 elif 'F_squared_calc' in S: 188 Fcsqpos = pos 189 elif 'F_squared_sigma' in S: 190 sigpos = pos 191 pos += 1 192 else: 193 data = S.split() 194 if data: #avoid blank lines 195 h = int(data[hpos]) 196 k = int(data[kpos]) 197 l = int(data[lpos]) 198 Fosq = float(data[Fosqpos]) 199 if sigpos != -1: 200 sigFosq = float(data[sigpos]) 201 else: 202 sigFosq = 1. 203 if Fcsqpos != -1: 204 Fcsq = float(data[Fcsqpos]) 205 if Fcsq: 206 ifFc = True 207 else: 208 Fcsq = 0. 209 210 HKLmin = [min(h,HKLmin[0]),min(k,HKLmin[1]),min(l,HKLmin[2])] 211 HKLmax = [max(h,HKLmax[0]),max(k,HKLmax[1]),max(l,HKLmax[2])] 212 FoMax = max(FoMax,Fosq) 213 HKLref.append([h,k,l,Fosq,sigFosq,Fcsq,0,0,0]) #room for Fc, Fcp, Fcpp & phase 214 S = File.readline() 215 else: #dumb h,k,l,Fo,sigFo .hkl file 216 while S: 217 h,k,l,Fo,sigFo = S.split() 218 h = int(h) 219 k = int(k) 220 l = int(l) 221 Fo = float(Fo) 222 sigFo = float(sigFo) 223 HKLmin = [min(h,HKLmin[0]),min(k,HKLmin[1]),min(l,HKLmin[2])] 224 HKLmax = [max(h,HKLmax[0]),max(k,HKLmax[1]),max(l,HKLmax[2])] 225 FoMax = max(FoMax,Fo) 226 HKLref.append([h,k,l,Fo**2,2.*Fo*sigFo,0,0,0,0]) #room for Fc, Fcp, Fcpp & phase 227 S = File.readline() 169 228 File.close() 170 return HKLref 229 return HKLref,HKLmin,HKLmax,FoMax,ifFc 171 230 172 231 def GetPowderData(filename,Pos,Bank,DataType): -
trunk/GSASIIgrid.py
r21 r22 73 73 self.selectedRow = 0 74 74 75 def setSizePosLeft(self, xWidth,yWidth):75 def setSizePosLeft(self,Width): 76 76 screenSize = wx.DisplaySize() 77 self.SetSize( wx.Size(xWidth,yWidth))78 self.SetPosition(wx.Point(screenSize[0]- xWidth,250))77 self.SetSize(Width) 78 self.SetPosition(wx.Point(screenSize[0]-Width[0],250)) 79 79 80 80 def Clear(self): … … 325 325 self.PlotPatterns() 326 326 327 self.dataFrame.setSizePosLeft(650,350)328 327 self.PickTable = [] 329 328 rowLabels = [] … … 352 351 self.dataDisplay.SetMargins(0,0) 353 352 self.dataDisplay.AutoSizeColumns(False) 353 self.dataFrame.setSizePosLeft([650,350]) 354 354 355 355 def UpdateBackgroundGrid(self,data): … … 379 379 self.PatternTree.SetItemPyData(BackId,data) 380 380 381 self.dataFrame.setSizePosLeft( 700,150)381 self.dataFrame.setSizePosLeft([700,150]) 382 382 maxTerm = 7 383 383 self.BackTable = [] … … 403 403 if self.dataDisplay: 404 404 self.dataDisplay.Destroy() 405 self.dataFrame.setSizePosLeft( 250,150)405 self.dataFrame.setSizePosLeft([250,150]) 406 406 LimitId = GetPatternTreeItemId(self,self.PatternId, 'Limits') 407 407 def RefreshLimitsGrid(event): … … 434 434 Ka2 = True 435 435 Xwid = 800 436 self.dataFrame.setSizePosLeft( Xwid,150)436 self.dataFrame.setSizePosLeft([Xwid,150]) 437 437 InstId = GetPatternTreeItemId(self,self.PatternId, 'Instrument Parameters') 438 438 def RefreshInstrumentGrid(event): … … 536 536 if self.dataDisplay: 537 537 self.dataDisplay.Destroy() 538 self.dataFrame.setSizePosLeft( 500,300)538 self.dataFrame.setSizePosLeft([500,300]) 539 539 inst = self.PatternTree.GetItemPyData(GetPatternTreeItemId(self,self.PatternId, 'Instrument Parameters'))[1] 540 540 self.IndexPeaksTable = [] … … 682 682 controls,bravais,cells,dmin = data 683 683 if cells: 684 self.dataFrame.setSizePosLeft( 900,320)684 self.dataFrame.setSizePosLeft([900,320]) 685 685 else: 686 self.dataFrame.setSizePosLeft( 280,320)686 self.dataFrame.setSizePosLeft([280,320]) 687 687 if len(controls) < 13: 688 688 controls.append(G2cmp.calc_V(G2cmp.cell2A(controls[6:12]))) … … 779 779 self.RefineCell.Enable(False) 780 780 781 def UpdateHKLControls(self,data): 782 783 def OnScaleSlider(event): 784 scale = int(scaleSel.GetValue())/1000. 785 scaleSel.SetValue(int(scale*1000.)) 786 data['Scale'] = scale*10. 787 self.NewPlot = True 788 self.PlotSngl() 789 790 def OnLayerSlider(event): 791 layer = layerSel.GetValue() 792 data['Layer'] = layer 793 self.NewPlot = True 794 self.PlotSngl() 795 796 def OnSelZone(event): 797 data['Zone'] = zoneSel.GetValue() 798 self.NewPlot = True 799 self.PlotSngl() 800 801 def OnSelType(event): 802 data['Type'] = typeSel.GetValue() 803 self.NewPlot = True 804 self.PlotSngl() 805 806 def SetStatusLine(): 807 Status.SetStatusText("look at me!!!") 808 809 if self.dataDisplay: 810 self.dataDisplay.Destroy() 811 Status = self.dataFrame.CreateStatusBar() 812 SetStatusLine() 813 zones = ['100','010','001'] 814 HKLmax = data['HKLmax'] 815 HKLmin = data['HKLmin'] 816 if data['ifFc']: 817 typeChoices = ['Fosq','Fo','|DFsq|/sig','|DFsq|>sig','|DFsq|>3sig'] 818 else: 819 typeChoices = ['Fosq','Fo'] 820 self.dataDisplay = wx.Panel(self.dataFrame) 821 mainSizer = wx.BoxSizer(wx.VERTICAL) 822 mainSizer.Add((5,10),0) 823 824 scaleSizer = wx.BoxSizer(wx.HORIZONTAL) 825 scaleSizer.Add(wx.StaticText(parent=self.dataDisplay,label=' Scale'),0, 826 wx.ALIGN_CENTER_VERTICAL|wx.EXPAND) 827 scaleSel = wx.Slider(parent=self.dataDisplay,maxValue=1000,minValue=100, 828 style=wx.SL_HORIZONTAL,value=int(data['Scale']*100)) 829 scaleSizer.Add(scaleSel,1,wx.EXPAND|wx.RIGHT|wx.ALIGN_CENTER_VERTICAL) 830 scaleSel.Bind(wx.EVT_SLIDER, OnScaleSlider) 831 mainSizer.Add(scaleSizer,1,wx.EXPAND|wx.RIGHT) 832 833 zoneSizer = wx.BoxSizer(wx.HORIZONTAL) 834 zoneSizer.Add(wx.StaticText(parent=self.dataDisplay,label=' Zone '),0, 835 wx.ALIGN_CENTER_VERTICAL) 836 zoneSel = wx.ComboBox(parent=self.dataDisplay,value=data['Zone'],choices=['100','010','001'], 837 style=wx.CB_READONLY|wx.CB_DROPDOWN) 838 zoneSel.Bind(wx.EVT_COMBOBOX, OnSelZone) 839 zoneSizer.Add(zoneSel,0,wx.ALIGN_CENTER_VERTICAL) 840 zoneSizer.Add(wx.StaticText(parent=self.dataDisplay,label=' Plot type '),0, 841 wx.ALIGN_CENTER_VERTICAL) 842 typeSel = wx.ComboBox(parent=self.dataDisplay,value=data['Type'],choices=typeChoices, 843 style=wx.CB_READONLY|wx.CB_DROPDOWN) 844 typeSel.Bind(wx.EVT_COMBOBOX, OnSelType) 845 zoneSizer.Add(typeSel,0,wx.ALIGN_CENTER_VERTICAL) 846 zoneSizer.Add((10,0),0) 847 mainSizer.Add(zoneSizer,1,wx.EXPAND|wx.RIGHT) 848 849 izone = zones.index(data['Zone']) 850 layerSizer = wx.BoxSizer(wx.HORIZONTAL) 851 layerSizer.Add(wx.StaticText(parent=self.dataDisplay,label=' Layer'),0, 852 wx.ALIGN_CENTER_VERTICAL|wx.EXPAND) 853 layerSel = wx.Slider(parent=self.dataDisplay,maxValue=HKLmax[izone],minValue=HKLmin[izone], 854 style=wx.SL_HORIZONTAL|wx.SL_AUTOTICKS|wx.SL_LABELS,value=0) 855 layerSizer.Add(layerSel,1,wx.EXPAND|wx.RIGHT|wx.ALIGN_CENTER_VERTICAL) 856 layerSel.Bind(wx.EVT_SLIDER, OnLayerSlider) 857 layerSizer.Add((10,0),0) 858 mainSizer.Add(layerSizer,1,wx.EXPAND|wx.RIGHT) 859 860 861 mainSizer.Layout() 862 self.dataDisplay.SetSizer(mainSizer) 863 self.dataDisplay.SetSize(mainSizer.Fit(self.dataFrame)) 864 self.dataFrame.setSizePosLeft(mainSizer.Fit(self.dataFrame)) 865 781 866 def UpdateImageControls(self,data): 782 867 … … 1009 1094 dataSizer.Add(setDefault,0) 1010 1095 setDefault.Bind(wx.EVT_CHECKBOX, OnSetDefault) 1011 s howLines.SetValue(data['setDefault'])1096 setDefault.SetValue(data['setDefault']) 1012 1097 dataSizer.Add((5,5),0) 1013 1098 … … 1017 1102 self.dataDisplay.SetSizer(mainSizer) 1018 1103 self.dataDisplay.SetSize(mainSizer.Fit(self.dataFrame)) 1019 self.dataFrame.setSizePosLeft( 550,310)1104 self.dataFrame.setSizePosLeft(mainSizer.Fit(self.dataFrame)) 1020 1105 1021 1106 def UpdatePhaseData(self,item,data,oldPage): … … 1123 1208 colType = 1 1124 1209 colSS = 7 1125 self.dataFrame.setSizePosLeft( 600,350)1210 self.dataFrame.setSizePosLeft([600,350]) 1126 1211 if generalData[1] =='macromolecular': 1127 1212 colType = 4 … … 1430 1515 elif 'PWDR' in self.PatternTree.GetItemText(item): 1431 1516 self.PlotPatterns() 1517 elif 'SXTL ' in self.PatternTree.GetItemText(item): 1518 self.Sngl = item 1519 self.PlotSngl() 1432 1520 1433 1521 elif self.PatternTree.GetItemText(parentID) == 'Phases': … … 1443 1531 self.dataFrame.SetTitle('Image Controls') 1444 1532 self.PickId = item 1533 self.Image = self.PatternTree.GetItemParent(item) 1445 1534 data = self.PatternTree.GetItemPyData(item) 1446 1535 UpdateImageControls(self,data) 1447 self.PlotImage() 1536 self.PlotImage() 1537 elif self.PatternTree.GetItemText(item) == 'HKL Plot Controls': 1538 self.PickId = item 1539 self.Sngl = self.PatternTree.GetItemParent(item) 1540 data = self.PatternTree.GetItemPyData(item) 1541 UpdateHKLControls(self,data) 1542 self.PlotSngl() 1448 1543 elif self.PatternTree.GetItemText(item) == 'Peak List': 1449 1544 self.PatternId = self.PatternTree.GetItemParent(item)
Note: See TracChangeset
for help on using the changeset viewer.