Changeset 94
- Timestamp:
- Jul 1, 2010 9:25:08 AM (13 years ago)
- Location:
- trunk
- Files:
-
- 5 added
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/GSASII.py
r87 r94 244 244 self.Sngl = 0 245 245 self.ifGetRing = False 246 self.setPoly = False 246 247 247 248 def OnSize(self,event): … … 1040 1041 if dlg.ShowModal() == wx.ID_OK: 1041 1042 self.peaklistfile = dlg.GetPath() 1042 file = open(self.peaklistfile,'w a')1043 file = open(self.peaklistfile,'w') 1043 1044 item, cookie = self.PatternTree.GetFirstChild(self.root) 1044 1045 while item: -
trunk/GSASIIIO.py
r85 r94 969 969 elif 'ATOM' in S[:4] or 'HETATM' in S[:6]: 970 970 XYZ = [float(S[31:39]),float(S[39:47]),float(S[47:55])] 971 XYZ = np.sum(A A*XYZ,axis=1)971 XYZ = np.sum(AB*XYZ,axis=1) 972 972 SytSym,Mult = G2spc.SytSym(XYZ,SGData) 973 973 Uiso = float(S[61:67])/EightPiSq -
trunk/GSASIIgrid.py
r85 r94 31 31 [ wxID_INDEXPEAKS, wxID_REFINECELL, wxID_COPYCELL, 32 32 ] = [wx.NewId() for _init_coll_INDEX_Items in range(3)] 33 34 VERY_LIGHT_GREY = wx.Colour(235,235,235) 33 35 34 36 class DataFrame(wx.Frame): -
trunk/GSASIIimage.py
r89 r94 24 24 npatand = lambda x: 180.*np.arctan(x)/np.pi 25 25 npatan2d = lambda y,x: 180.*np.arctan2(y,x)/np.pi 26 27 def pointInPolygon(pXY,xy): 28 #pXY - assumed closed 1st & last points are duplicates 29 Inside = False 30 N = len(pXY) 31 p1x,p1y = pXY[0] 32 for i in range(N+1): 33 p2x,p2y = pXY[i%N] 34 if (max(p1y,p2y) >= xy[1] > min(p1y,p2y)) and (xy[0] <= max(p1x,p2x)): 35 if p1y != p2y: 36 xinters = (xy[1]-p1y)*(p2x-p1x)/(p2y-p1y)+p1x 37 if p1x == p2x or xy[0] <= xinters: 38 Inside = not Inside 39 p1x,p1y = p2x,p2y 40 return Inside 26 41 27 42 def makeMat(Angle,Axis): … … 454 469 #make position masks here 455 470 spots = masks['Points'] 471 polygons = masks['Polygons'] 456 472 tam = ma.make_mask_none((imageN,imageN)) 457 473 for X,Y,diam in spots: 458 474 tam = ma.mask_or(tam,ma.getmask(ma.masked_less((tax-X)**2+(tay-Y)**2,(diam/2.)**2))) 475 for polygon in polygons: 476 tam = ma.mask_or(tam.flatten(),ma.make_mask([pointInPolygon(polygon,xy) for xy in zip(tax.flatten(),tay.flatten())])) 459 477 return GetTthAzm(tax,tay,data),tam #2-theta & azimuth arrays & position mask 460 478 -
trunk/GSASIIimgGUI.py
r90 r94 11 11 import GSASIIIO as G2IO 12 12 import GSASIIgrid as G2gd 13 14 VERY_LIGHT_GREY = wx.Colour(235,235,235) 13 15 14 16 # trig functions in degrees … … 340 342 cent = data['center'] 341 343 centText = wx.TextCtrl(parent=self.dataDisplay,value=("%8.3f,%8.3f" % (cent[0],cent[1])),style=wx.TE_READONLY) 344 centText.SetBackgroundColour(VERY_LIGHT_GREY) 342 345 dataSizer.Add(centText,0,wx.ALIGN_CENTER_VERTICAL) 343 346 … … 381 384 wx.ALIGN_CENTER_VERTICAL) 382 385 distSel = wx.TextCtrl(parent=self.dataDisplay,value=("%8.3f"%(data['distance'])),style=wx.TE_READONLY) 386 distSel.SetBackgroundColour(VERY_LIGHT_GREY) 383 387 dataSizer.Add(distSel,0,wx.ALIGN_CENTER_VERTICAL) 384 388 … … 397 401 wx.ALIGN_CENTER_VERTICAL) 398 402 tiltSel = wx.TextCtrl(parent=self.dataDisplay,value=("%9.3f"%(data['tilt'])),style=wx.TE_READONLY) 403 tiltSel.SetBackgroundColour(VERY_LIGHT_GREY) 399 404 dataSizer.Add(tiltSel,0,wx.ALIGN_CENTER_VERTICAL) 400 405 showLines = wx.CheckBox(parent=self.dataDisplay,label='Show integration limits?') … … 410 415 wx.ALIGN_CENTER_VERTICAL) 411 416 rotSel = wx.TextCtrl(parent=self.dataDisplay,value=("%9.3f"%(data['rotation'])),style=wx.TE_READONLY) 417 rotSel.SetBackgroundColour(VERY_LIGHT_GREY) 412 418 dataSizer.Add(rotSel,0,wx.ALIGN_CENTER_VERTICAL) 413 419 setDefault = wx.CheckBox(parent=self.dataDisplay,label='Use as default for all images?') … … 492 498 Obj = event.GetEventObject() 493 499 del(data['Arcs'][delArcId.index(Obj)]) 500 UpdateMasks(self,data) 501 G2plt.PlotExposedImage(self) 502 503 def OnDeletePoly(event): 504 Obj = event.GetEventObject() 505 del(data['Polygons'][delPolyId.index(Obj)]) 494 506 UpdateMasks(self,data) 495 507 G2plt.PlotExposedImage(self) … … 530 542 if not self.dataFrame.GetStatusBar(): 531 543 Status = self.dataFrame.CreateStatusBar() 532 Status.SetStatusText("To add mask: On 2D Powder Image, key a:arc, r:ring, s:spot ")544 Status.SetStatusText("To add mask: On 2D Powder Image, key a:arc, r:ring, s:spot, p:polygon") 533 545 self.dataDisplay = wx.Panel(self.dataFrame) 534 546 mainSizer = wx.BoxSizer(wx.VERTICAL) … … 544 556 littleSizer.Add(wx.StaticText(parent=self.dataDisplay,label=' Lower/Upper limits '),0, 545 557 wx.ALIGN_CENTER_VERTICAL) 546 littleSizer.Add(wx.TextCtrl(parent=self.dataDisplay, 547 value=("%8d" % (thresh[0][0])),style=wx.TE_READONLY),0,wx.ALIGN_CENTER_VERTICAL) 548 littleSizer.Add(wx.TextCtrl(parent=self.dataDisplay, 549 value=("%8d" % (thresh[0][1])),style=wx.wx.TE_READONLY),0,wx.ALIGN_CENTER_VERTICAL) 550 littleSizer.Add(wx.StaticText(parent=self.dataDisplay,label=' Lower/Upper thresholds '),0, 551 wx.ALIGN_CENTER_VERTICAL) 558 Text = wx.TextCtrl(self.dataDisplay,value=("%8d" % (thresh[0][0])),style=wx.TE_READONLY) 559 littleSizer.Add(Text,0,wx.ALIGN_CENTER_VERTICAL) 560 Text.SetBackgroundColour(VERY_LIGHT_GREY) 561 Text = wx.TextCtrl(self.dataDisplay,value=("%8d" % (thresh[0][1])),style=wx.TE_READONLY) 562 littleSizer.Add(Text,0,wx.ALIGN_CENTER_VERTICAL) 563 Text.SetBackgroundColour(VERY_LIGHT_GREY) 564 littleSizer.Add(wx.StaticText(parent=self.dataDisplay,label=' Lower/Upper thresholds '), 565 0,wx.ALIGN_CENTER_VERTICAL) 552 566 lowerThreshold = wx.TextCtrl(parent=self.dataDisplay, 553 567 value=("%8d" % (thresh[1][0])),style=wx.TE_PROCESS_ENTER) … … 575 589 spotText = wx.TextCtrl(parent=self.dataDisplay,value=("%.2f,%.2f" % (x,y)), 576 590 style=wx.TE_READONLY) 591 spotTextazmText 577 592 littleSizer.Add(spotText,0,wx.ALIGN_CENTER_VERTICAL) 578 593 spotText.Bind(wx.EVT_ENTER_WINDOW,OnTextMsg) … … 603 618 ringText = wx.TextCtrl(parent=self.dataDisplay,value=("%.3f" % (tth)), 604 619 style=wx.TE_READONLY) 620 ringText.SetBackgroundColour(VERY_LIGHT_GREY) 605 621 ringText.Bind(wx.EVT_ENTER_WINDOW,OnTextMsg) 606 622 littleSizer.Add(ringText,0,wx.ALIGN_CENTER_VERTICAL) … … 634 650 arcText = wx.TextCtrl(parent=self.dataDisplay,value=("%.3f" % (tth)), 635 651 style=wx.TE_READONLY) 652 arcText.SetBackgroundColour(VERY_LIGHT_GREY) 636 653 arcText.Bind(wx.EVT_ENTER_WINDOW,OnTextMsg) 637 654 littleSizer.Add(arcText,0,wx.ALIGN_CENTER_VERTICAL) 638 655 azmText = wx.TextCtrl(parent=self.dataDisplay,value=("%d,%d" % (azimuth[0],azimuth[1])), 639 656 style=wx.TE_READONLY) 657 azmText.SetBackgroundColour(VERY_LIGHT_GREY) 640 658 azmText.Bind(wx.EVT_ENTER_WINDOW,OnTextMsg) 641 659 littleSizer.Add(azmText,0,wx.ALIGN_CENTER_VERTICAL) … … 650 668 littleSizer.Add(arcDelete,0,wx.ALIGN_CENTER_VERTICAL) 651 669 mainSizer.Add(littleSizer,0,) 652 653 654 655 670 polyIds = [] 671 delPolyId = [] 672 if polygons: 673 littleSizer = wx.FlexGridSizer(len(polygons)+2,2,0,5) 674 littleSizer.Add(wx.StaticText(parent=self.dataDisplay,label=' Polygon masks:'),0, 675 wx.ALIGN_CENTER_VERTICAL) 676 littleSizer.Add((5,0),0) 677 for polygon in polygons: 678 if polygon: 679 polyList = [] 680 for x,y in polygon: 681 polyList.append("%.2f, %.2f"%(x,y)) 682 polyText = wx.ComboBox(self.dataDisplay,value=polyList[0],choices=polyList,style=wx.CB_READONLY) 683 littleSizer.Add(polyText,0,wx.ALIGN_CENTER_VERTICAL) 684 polyDelete = wx.CheckBox(parent=self.dataDisplay,label='delete?') 685 polyDelete.Bind(wx.EVT_CHECKBOX,OnDeletePoly) 686 delPolyId.append(polyDelete) 687 littleSizer.Add(polyDelete,0,wx.ALIGN_CENTER_VERTICAL) 688 mainSizer.Add(littleSizer,0,) 656 689 mainSizer.Layout() 657 690 self.dataDisplay.SetSizer(mainSizer) -
trunk/GSASIIphsGUI.py
r83 r94 12 12 import GSASIIplot as G2plt 13 13 import GSASIIgrid as G2gd 14 15 VERY_LIGHT_GREY = wx.Colour(235,235,235) 14 16 15 17 # trig functions in degrees -
trunk/GSASIIplot.py
r89 r94 561 561 562 562 def PlotImage(self,newPlot=False): 563 from matplotlib.patches import Ellipse,Arc,Circle 563 from matplotlib.patches import Ellipse,Arc,Circle,Polygon 564 564 import numpy.ma as ma 565 565 Dsp = lambda tth,wave: wave/(2.*sind(tth/2.)) … … 624 624 print 'arc mask @ ', Xpos,Ypos 625 625 Masks['Arcs'].append([tth,[azm-5,azm+5],0.1]) 626 elif event.key == 'p': 627 self.setPoly = True 628 Masks['Polygons'].append([]) 629 print 'Polygon mask active - pick points with mouse LB' 630 print ' use RB to close when > 2 points chosen' 631 print 'Vertices can be dragged with LB down after polygon closed' 626 632 G2imG.UpdateMasks(self,Masks) 627 633 PlotImage(self) … … 630 636 if self.PatternTree.GetItemText(self.PickId) not in ['Image Controls','Masks']: 631 637 return 632 if self.itemPicked is not None: return 633 pick = event.artist 634 self.itemPicked = pick 638 if self.setPoly: 639 Masks = self.PatternTree.GetItemPyData( 640 G2gd.GetPatternTreeItemId(self,self.Image, 'Masks')) 641 polygon = Masks['Polygons'][-1] 642 xpos,ypos = event.mouseevent.xdata,event.mouseevent.ydata 643 if xpos and ypos: #point inside image 644 if len(polygon) > 2 and event.mouseevent.button == 3: 645 x0,y0 = polygon[0] 646 polygon.append([x0,y0]) 647 self.setPoly = False 648 else: 649 polygon.append([xpos,ypos]) 650 G2imG.UpdateMasks(self,Masks) 651 else: 652 if self.itemPicked is not None: return 653 self.itemPicked = event.artist 654 self.mousePicked = event.mouseevent 635 655 636 656 def OnImRelease(event): … … 709 729 rings = Masks['Rings'] 710 730 arcs = Masks['Arcs'] 731 polygons = Masks['Polygons'] 711 732 for ring in self.ringList: 712 733 if Obj == ring[0]: … … 727 748 else: 728 749 arcs[aN][1][1] = int(G2img.GetAzm(xpos,ypos,Data)) 750 for poly in self.polyList: 751 if Obj == poly[0]: 752 ind = self.itemPicked.contains(self.mousePicked)[1]['ind'][0] 753 oldPos = np.array([self.mousePicked.xdata,self.mousePicked.ydata]) 754 pN = poly[1] 755 for i,xy in enumerate(polygons[pN]): 756 if np.allclose(np.array([xy]),oldPos,atol=1.0): 757 polygons[pN][i] = xpos,ypos 729 758 G2imG.UpdateMasks(self,Masks) 730 759 # else: #keep for future debugging … … 786 815 interpolation='nearest',vmin=0,vmax=2,extent=[0,Xmax,Xmax,0]) 787 816 Img = Plot.imshow(A,aspect='equal',cmap=acolor, 788 interpolation='nearest',vmin=Imin,vmax=Imax,extent=[0,Xmax,Xmax,0] )817 interpolation='nearest',vmin=Imin,vmax=Imax,extent=[0,Xmax,Xmax,0],picker=True) 789 818 790 819 Plot.plot(xcent,ycent,'x') … … 832 861 rings = Masks['Rings'] 833 862 arcs = Masks['Arcs'] 863 polygons = Masks['Polygons'] 834 864 for x,y,d in spots: 835 865 Plot.add_artist(Circle((x,y),radius=d/2,fc='none',ec='r',picker=3)) … … 850 880 self.arcList.append([Plot.plot([x1[0],x2[0]],[y1[0],y2[0]],'r',picker=3),iarc,'l']) 851 881 self.arcList.append([Plot.plot([x1[-1],x2[-1]],[y1[-1],y2[-1]],'r',picker=3),iarc,'u']) 882 self.polyList = [] 883 for ipoly,polygon in enumerate(polygons): 884 x,y = np.hsplit(np.array(polygon),2) 885 self.polyList.append([Plot.plot(x,y,'r',picker=3),ipoly]) 852 886 colorBar = Page.figure.colorbar(Img) 853 887 Plot.set_xlim(xlim) -
trunk/GSASIIpwdGUI.py
r92 r94 12 12 import GSASIIgrid as G2gd 13 13 14 VERY_LIGHT_GREY = wx.Colour(235,235,235) 15 14 16 # trig functions in degrees 15 17 sind = lambda x: math.sin(x*math.pi/180.) … … 20 22 def UpdatePeakGrid(self, data): 21 23 if self.dataDisplay: 22 self.data Display.Destroy()24 self.dataFrame.Clear() 23 25 24 26 def OnUnDo(event): … … 224 226 self.dataDisplay.SetMargins(0,0) 225 227 self.dataDisplay.AutoSizeColumns(False) 226 self.dataFrame.setSizePosLeft([5 50,350])228 self.dataFrame.setSizePosLeft([535,350]) 227 229 228 230 def UpdateBackgroundGrid(self,data): 231 if self.dataDisplay: 232 self.dataFrame.Clear() 229 233 BackId = G2gd.GetPatternTreeItemId(self,self.PatternId, 'Background') 230 234 … … 251 255 self.dataDisplay.ProcessTableMessage(msg) 252 256 self.PatternTree.SetItemPyData(BackId,data) 257 UpdateBackgroundGrid(self,data) 253 258 254 self.dataFrame.setSizePosLeft([700,150])255 259 maxTerm = 9 256 260 self.BackTable = [] … … 268 272 self.dataFrame.SetLabel('Background') 269 273 self.dataFrame.SetMenuBar(self.dataFrame.BlankMenu) 270 self.dataDisplay = G2gd.GSGrid(parent=self.dataFrame) 274 gridPanel = wx.Panel(self.dataFrame) 275 self.dataDisplay = G2gd.GSGrid(gridPanel) 271 276 self.dataDisplay.Bind(wg.EVT_GRID_CELL_CHANGE, RefreshBackgroundGrid) 272 277 self.dataDisplay.SetTable(self.BackTable, True) 273 278 self.dataDisplay.SetMargins(0,0) 274 279 self.dataDisplay.AutoSizeColumns(False) 280 mainSizer = wx.BoxSizer(wx.VERTICAL) 281 mainSizer.Add(self.dataDisplay,0) 282 mainSizer.Layout() 283 self.dataDisplay.SetSizer(mainSizer) 284 self.dataFrame.setSizePosLeft(mainSizer.Fit(self.dataFrame)) 275 285 276 286 def UpdateLimitsGrid(self, data): 277 287 if self.dataDisplay: 278 self.dataDisplay.Destroy() 279 self.dataFrame.setSizePosLeft([250,150]) 288 self.dataFrame.Clear() 280 289 LimitId = G2gd.GetPatternTreeItemId(self,self.PatternId, 'Limits') 281 290 def RefreshLimitsGrid(event): … … 295 304 self.dataFrame.SetLabel('Limits') 296 305 self.dataFrame.SetMenuBar(self.dataFrame.BlankMenu) 297 self.dataDisplay = G2gd.GSGrid(parent=self.dataFrame) 306 gridPanel = wx.Panel(self.dataFrame) 307 self.dataDisplay = G2gd.GSGrid(gridPanel) 298 308 self.dataDisplay.SetTable(self.LimitsTable, True) 299 309 self.dataDisplay.Bind(wg.EVT_GRID_CELL_CHANGE, RefreshLimitsGrid) 300 310 self.dataDisplay.SetMargins(0,0) 301 311 self.dataDisplay.AutoSizeColumns(False) 312 mainSizer = wx.BoxSizer(wx.VERTICAL) 313 mainSizer.Add(self.dataDisplay,0) 314 mainSizer.Layout() 315 self.dataDisplay.SetSizer(mainSizer) 316 self.dataFrame.setSizePosLeft(mainSizer.Fit(self.dataFrame)) 302 317 303 318 def UpdateInstrumentGrid(self, data): 304 319 if self.dataDisplay: 305 self.data Display.Destroy()320 self.dataFrame.Clear() 306 321 Ka2 = False 307 Xwid = 700308 322 if len(data[0]) == 13: 309 323 Ka2 = True 310 Xwid = 840311 self.dataFrame.setSizePosLeft([Xwid,170])312 324 self.dataFrame.SetMenuBar(self.dataFrame.BlankMenu) 313 325 InstId = G2gd.GetPatternTreeItemId(self,self.PatternId, 'Instrument Parameters') … … 354 366 self.InstrumentTable = G2gd.Table(data[:-1],rowLabels=rowLabels,colLabels=colLabels,types=Types) 355 367 self.dataFrame.SetLabel('Instrument Parameters') 356 self.dataDisplay = G2gd.GSGrid(parent=self.dataFrame) 368 gridPanel = wx.Panel(self.dataFrame) 369 self.dataDisplay = G2gd.GSGrid(gridPanel) 357 370 self.dataDisplay.SetTable(self.InstrumentTable, True) 358 371 self.dataDisplay.Bind(wg.EVT_GRID_CELL_CHANGE, RefreshInstrumentGrid) 359 372 self.dataDisplay.SetMargins(0,0) 360 373 self.dataDisplay.AutoSizeColumns(False) 374 print len(Types) 361 375 beg = 4 362 376 if Ka2: beg = 6 … … 375 389 self.InstrumentTable = Table(data[:-1],rowLabels=rowLabels,colLabels=colLabels,types=Types) 376 390 self.dataFrame.SetLabel('Instrument Parameters') 377 self.dataDisplay = G2gd.GSGrid(parent=self.dataFrame) 391 gridPanel = wx.Panel(self.dataFrame) 392 self.dataDisplay = G2gd.GSGrid(gridPanel) 378 393 self.dataDisplay.SetTable(self.InstrumentTable, True) 379 394 self.dataDisplay.Bind(wg.EVT_GRID_CELL_CHANGE, RefreshInstrumentGrid) 380 395 self.dataDisplay.SetMargins(0,0) 381 396 self.dataDisplay.AutoSizeColumns(False) 397 mainSizer = wx.BoxSizer(wx.VERTICAL) 398 mainSizer.Add(self.dataDisplay,0) 399 mainSizer.Layout() 400 self.dataDisplay.SetSizer(mainSizer) 401 self.dataFrame.setSizePosLeft(mainSizer.Fit(self.dataFrame)) 382 402 383 403 def UpdateIndexPeaksGrid(self, data): … … 418 438 419 439 if self.dataDisplay: 420 self.dataDisplay.Destroy() 421 self.dataFrame.setSizePosLeft([500,300]) 440 self.dataFrame.Clear() 422 441 self.dataFrame.SetMenuBar(self.dataFrame.IndPeaksMenu) 423 442 if not self.dataFrame.GetStatusBar(): … … 455 474 self.dataDisplay.SetMargins(0,0) 456 475 self.dataDisplay.AutoSizeColumns(False) 457 476 self.dataFrame.setSizePosLeft([490,300]) 477 458 478 def UpdateUnitCellsGrid(self, data): 459 479 UnitCellsId = G2gd.GetPatternTreeItemId(self,self.PatternId, 'Unit Cells List') … … 706 726 self.sp.SplitHorizontally(self.dataDisplay,self.bottom,0) 707 727 mainSizer = wx.BoxSizer(wx.VERTICAL) 708 mainSizer.Add(wx.StaticText(parent=self.dataDisplay,label=' Indexing controls '),0,wx.ALIGN_CENTER_VERTICAL) 728 mainSizer.Add(wx.StaticText(parent=self.dataDisplay,label=' Indexing controls: '),0,wx.ALIGN_CENTER_VERTICAL) 729 mainSizer.Add((5,5),0) 709 730 littleSizer = wx.FlexGridSizer(2,5,5,5) 710 731 littleSizer.Add(wx.StaticText(parent=self.dataDisplay,label=' Max Nc/Nobs '),0,wx.ALIGN_CENTER_VERTICAL) … … 719 740 littleSizer.Add(startVol,0,wx.ALIGN_CENTER_VERTICAL) 720 741 mainSizer.Add(littleSizer,0) 721 mainSizer.Add(wx.StaticText(self.dataDisplay,label=' Select Bravais Lattices for indexing '), 742 mainSizer.Add((5,5),0) 743 mainSizer.Add(wx.StaticText(self.dataDisplay,label=' Select Bravais Lattices for indexing: '), 722 744 0,wx.ALIGN_CENTER_VERTICAL) 745 mainSizer.Add((5,5),0) 723 746 littleSizer = wx.FlexGridSizer(2,7,5,5) 724 747 bravList = [] … … 731 754 littleSizer.Add(bravCk,0,wx.ALIGN_CENTER_VERTICAL) 732 755 mainSizer.Add(littleSizer,0) 756 mainSizer.Add((5,5),0) 733 757 littleSizer = wx.FlexGridSizer(1,3,5,5) 734 littleSizer.Add(wx.StaticText(self.dataDisplay,label=" Zero offset"),0,wx.ALIGN_CENTER_VERTICAL)758 littleSizer.Add(wx.StaticText(self.dataDisplay,label=" Zero offset"),0,wx.ALIGN_CENTER_VERTICAL) 735 759 zero = wx.TextCtrl(self.dataDisplay,value=str(controls[1]),style=wx.TE_PROCESS_ENTER) 736 760 zero.Bind(wx.EVT_TEXT_ENTER,OnZero) … … 741 765 littleSizer.Add(zeroVar,0,wx.ALIGN_CENTER_VERTICAL) 742 766 mainSizer.Add(littleSizer,0) 743 mainSizer.Add(wx.StaticText(parent=self.dataDisplay,label=' Cell Refinement '),0,wx.ALIGN_CENTER_VERTICAL) 767 mainSizer.Add((5,5),0) 768 mainSizer.Add(wx.StaticText(parent=self.dataDisplay,label=' Cell Refinement: '),0,wx.ALIGN_CENTER_VERTICAL) 769 mainSizer.Add((5,5),0) 744 770 littleSizer = wx.FlexGridSizer(1,2,5,5) 745 littleSizer.Add(wx.StaticText(self.dataDisplay,label=" Bravais lattice"),0,wx.ALIGN_CENTER_VERTICAL)771 littleSizer.Add(wx.StaticText(self.dataDisplay,label=" Bravais lattice"),0,wx.ALIGN_CENTER_VERTICAL) 746 772 bravSel = wx.Choice(self.dataDisplay,choices=bravaisSymb) 747 773 bravSel.SetSelection(bravaisSymb.index(controls[5])) … … 749 775 littleSizer.Add(bravSel,0,wx.ALIGN_CENTER_VERTICAL) 750 776 mainSizer.Add(littleSizer,0) 777 mainSizer.Add((5,5),0) 751 778 ibrav = SetLattice(controls) 752 779 for cellGUI in cellGUIlist: … … 764 791 else: #volume 765 792 volVal = wx.TextCtrl(self.dataDisplay,value=(fmt%(controls[12])),style=wx.TE_READONLY) 793 volVal.SetBackgroundColour(VERY_LIGHT_GREY) 766 794 littleSizer.Add(volVal,0,wx.ALIGN_CENTER_VERTICAL) 767 795 mainSizer.Add(littleSizer,0) … … 771 799 self.dataDisplay.SetSize(topSize) 772 800 if cells: 773 topSize[1] += 200 801 if ibrav == 13: 802 topSize[1] += 230 803 else: 804 topSize[1] += 200 774 805 self.dataFrame.setSizePosLeft(topSize) 775 806 807 776 808 if cells: 809 bottomSize = self.bottom.GetSize() 810 if ibrav == 13: 811 bottomSize[1] -= 240 812 else: 813 bottomSize[1] -= 210 777 814 wx.StaticText(parent=self.bottom,label=' Indexing Result ') 778 815 rowLabels = [] … … 808 845 else: 809 846 gridDisplay.SetReadOnly(r,c,isReadOnly=True) 847 gridDisplay.SetSize(bottomSize)
Note: See TracChangeset
for help on using the changeset viewer.