Changeset 1549 for trunk/GSASIIpwdGUI.py
- Timestamp:
- Oct 30, 2014 8:47:10 PM (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/GSASIIpwdGUI.py
r1548 r1549 2212 2212 modS = G2spc.splitSSsym(ssopt['ssSymb'])[0] 2213 2213 ssopt['ModVec'] = G2spc.SSGModCheck(Vec,modS)[0] 2214 OnHklShow(event) 2214 2215 wx.CallAfter(UpdateUnitCellsGrid,G2frame,data) 2215 2216 2216 2217 def OnModVal(event): 2217 pass 2218 Obj = event.GetEventObject() 2219 ObjId = Obj.GetId() 2220 Id = Indx[ObjId] 2221 try: 2222 value = min(1.0,max(0.,float(Obj.GetValue()))) 2223 except ValueError: 2224 value = ssopt['ModVec'][Id] 2225 Obj.SetValue('%.3f'%(value)) 2226 ssopt['ModVec'][Id] = value 2227 OnHklShow(event) 2218 2228 2219 2229 def OnMoveMod(event): 2220 2230 Obj = event.GetEventObject() 2221 ObjId = cellList.index(Obj.GetId())2222 valObj = valDict[Obj.GetId()]2231 ObjId = Obj.GetId() 2232 Id,valObj = Indx[ObjId] 2223 2233 move = Obj.GetValue()*0.01 2224 2234 Obj.SetValue(0) 2225 value = float(valObj.GetValue())+move 2226 # SetCellValue(valObj,ObjId,value) 2227 # OnHklShow(event) 2235 value = min(1.0,max(.0,float(valObj.GetValue())+move)) 2236 valObj.SetValue('%.3f'%(value)) 2237 ssopt['ModVec'][Id] = value 2238 OnHklShow(event) 2239 2240 def OnMaxMH(event): 2241 ssopt['maxH'] = int(maxMH.GetValue()) 2242 OnHklShow(event) 2228 2243 2229 2244 def OnBravSel(event): … … 2309 2324 spc = controls[13] 2310 2325 SGData = G2spc.SpcGroup(spc)[1] 2326 if ssopt['Use']: 2327 print ssopt 2328 SSGData = G2spc.SSpcGroup(SGData,ssopt['ssSymb']) 2329 Vec = ssopt['ModVec'] 2311 2330 if 'C' in Inst['Type'][0]: 2312 2331 dmin = G2lat.Pos2dsp(Inst,limits[1]) … … 2641 2660 littleSizer.Add(volVal,0,WACV) 2642 2661 mainSizer.Add(littleSizer,0) 2643 #ssopt = {'Use':False,'ModVec':[0,0,0.1],'maxH':1,'ssSymb':''}) 2644 if ssopt['Use']: 2662 if ssopt['Use']: #super lattice display 2645 2663 indChoice = ['1','2','3','4',] 2646 2664 SpSg = controls[13] … … 2654 2672 selMG.Bind(wx.EVT_COMBOBOX, OnSelMG) 2655 2673 ssSizer.Add(selMG,0,WACV) 2674 ssSizer.Add(wx.StaticText(G2frame.dataDisplay,label=' Mod. vector: '),0,WACV) 2656 2675 modS = G2spc.splitSSsym(ssopt['ssSymb'])[0] 2657 2676 Vec = ssopt['ModVec'] 2658 2677 Vec,ifShow = G2spc.SSGModCheck(Vec,modS) 2659 modList = [] 2660 modDict = {} 2661 for val,show in zip(Vec,ifShow): 2678 Indx = {} 2679 for i,[val,show] in enumerate(zip(Vec,ifShow)): 2662 2680 if show: 2663 2681 valSizer = wx.BoxSizer(wx.HORIZONTAL) 2664 modVal = wx.TextCtrl(G2frame.dataDisplay,value=('%.3f'%(val)),style=wx.TE_PROCESS_ENTER) 2682 modVal = wx.TextCtrl(G2frame.dataDisplay,value=('%.3f'%(val)), 2683 size=wx.Size(50,20),style=wx.TE_PROCESS_ENTER) 2665 2684 modVal.Bind(wx.EVT_TEXT_ENTER,OnModVal) 2666 2685 modVal.Bind(wx.EVT_KILL_FOCUS,OnModVal) … … 2672 2691 valSizer.Add(modSpin,0,WACV) 2673 2692 ssSizer.Add(valSizer,0,WACV) 2674 modList.append(modVal.GetId()) 2675 modList.append(modSpin.GetId()) 2676 modDict[modSpin.GetId()] = modVal 2693 Indx[modVal.GetId()] = i 2694 Indx[modSpin.GetId()] = [i,modVal] 2695 else: 2696 modVal = wx.TextCtrl(G2frame.dataDisplay,value=('%.3f'%(val)), 2697 size=wx.Size(50,20),style=wx.TE_READONLY) 2698 modVal.SetBackgroundColour(VERY_LIGHT_GREY) 2699 ssSizer.Add(modVal,0,WACV) 2700 ssSizer.Add(wx.StaticText(G2frame.dataDisplay,label=' Max. M: '),0,WACV) 2701 maxMH = wx.ComboBox(G2frame.dataDisplay,value=str(ssopt['maxH']), 2702 choices=indChoice,style=wx.CB_READONLY|wx.CB_DROPDOWN) 2703 maxMH.Bind(wx.EVT_COMBOBOX, OnMaxMH) 2704 ssSizer.Add(maxMH,0,WACV) 2705 mainSizer.Add(ssSizer,0) 2677 2706 2678 2679 2680 mainSizer.Add(ssSizer,0)2681 #if super lattice add super lattice choice based on space group & modulation values2682 #based on super lattice choice - do refl gen following these choices as above2683 #then make new phase will make modulated one with these choices2684 2685 2707 mainSizer.Layout() 2686 2708 G2frame.dataDisplay.SetSizer(mainSizer)
Note: See TracChangeset
for help on using the changeset viewer.