Skip to content

Commit 6865739

Browse files
authored
Merge pull request #207 from AdvancedPhotonSource/split-G2phsGUI
modify getPawleydRange to count HKLF histograms as well as PWDR ones.
2 parents e1b0066 + 15166f1 commit 6865739

File tree

1 file changed

+19
-18
lines changed

1 file changed

+19
-18
lines changed

GSASII/GSASIIphsGUI.py

Lines changed: 19 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1111,7 +1111,10 @@ def getPawleydRange(G2frame,data):
11111111
dmaxAll = dminAll = None
11121112
Histograms,Phases = G2frame.GetUsedHistogramsAndPhasesfromTree()
11131113
nhist = 0
1114+
chist = 0
11141115
for item in data['Histograms']:
1116+
if 'HKLF' in item: #count single crystal histograms
1117+
chist += 1
11151118
if 'PWDR' not in item: continue
11161119
if not data['Histograms'][item]['Use']: continue
11171120
nhist += 1
@@ -1133,7 +1136,7 @@ def getPawleydRange(G2frame,data):
11331136
fmtd(dminAll),fmtd(dmaxAll),Angstr,nhist)
11341137
if dmaxAll is None: dmaxAll = 100.
11351138
if dminAll is None: dminAll = 0.25
1136-
return dminAll,dmaxAll,nhist,lbl
1139+
return dminAll,dmaxAll,nhist,lbl,chist
11371140

11381141
def getAtomSelections(AtmTbl,cn=0,action='action',includeView=False,ask=True):
11391142
'''get selected atoms from table or ask user if none are selected
@@ -2314,7 +2317,7 @@ def enablePawley(*args):
23142317
msg='Use Pawley Create in Operations menu of Pawley'+
23152318
' Reflections tab to complete the Pawley setup')
23162319

2317-
dmin,dmax,nhist,lbl = getPawleydRange(G2frame,data)
2320+
dmin,dmax,nhist,lbl,chist = getPawleydRange(G2frame,data)
23182321

23192322
pawleySizer = wx.BoxSizer(wx.HORIZONTAL)
23202323
pawleySizer.Add(wx.StaticText(General,label=' Pawley controls: '),0,WACV)
@@ -2862,7 +2865,7 @@ def OnSaveDist(event):
28622865
G2frame.dataWindow.GeneralCalc.Enable(G2G.wxID_MULTIMCSA,True)
28632866
G2frame.dataWindow.GeneralCalc.Enable(G2G.wxID_4DCHARGEFLIP,False)
28642867

2865-
dmin,dmax,nhist,lbl = getPawleydRange(G2frame,data)
2868+
dmin,dmax,nhist,lbl,chist = getPawleydRange(G2frame,data)
28662869
if nhist > 0:
28672870
mainSizer.Add(PawleySizer())
28682871
G2G.HorizontalLine(mainSizer,General)
@@ -11990,7 +11993,7 @@ def DisablePawleyOpts(*args):
1199011993
c.Enable(generalData['doPawley'])
1199111994

1199211995
PawleyCtrlsList = []
11993-
dmin,dmax,nhist,lbl = getPawleydRange(G2frame,data)
11996+
dmin,dmax,nhist,lbl,chist = getPawleydRange(G2frame,data)
1199411997
generalData = data['General']
1199511998
prevPawleySetting = generalData['doPawley']
1199611999
generalData['doPawley'] = True # make Pawley extraction the default if window is opened
@@ -13244,44 +13247,45 @@ def renamePhaseName(phaseItem,generalData,newName):
1324413247
G2frame.phaseDisplay.AddPage(G2frame.drawAtomsList,'Draw Atoms')
1324513248
Pages.append('Draw Atoms')
1324613249

13250+
dmin,dmax,nhist,lbl,chist = getPawleydRange(G2frame,data)
13251+
dataGeneral = data['General']
1324713252
if any('X' in item for item in G2frame.GetHistogramTypes()):
1324813253
G2frame.deformation = wx.ScrolledWindow(G2frame.phaseDisplay)
1324913254
G2frame.phaseDisplay.AddPage(G2frame.deformation,'Deformation')
13250-
1325113255
Pages.append('Deformation')
13252-
13253-
if data['General']['Type'] not in ['faulted',] and not data['General']['Modulated']:
13256+
13257+
if dataGeneral['Type'] not in ['faulted',] and not dataGeneral['Modulated']:
1325413258
RigidBodies = wx.ScrolledWindow(G2frame.phaseDisplay)
1325513259
G2frame.phaseDisplay.AddPage(RigidBodies,'RB Models')
1325613260
# note the bind is here so that it is only done once, but
1325713261
# TODO: might need to be on a different widget for Windows
1325813262
RigidBodies.Bind(wx.EVT_CHAR,rbKeyPress)
1325913263
Pages.append('RB Models')
1326013264

13261-
dmin,dmax,nhist,lbl = getPawleydRange(G2frame,data)
13262-
if nhist > 0:
13265+
if dataGeneral['Map']['MapType'] or 'Flip' in dataGeneral:
1326313266
MapPeakList = wx.Panel(G2frame.phaseDisplay)
1326413267
G2frame.phaseDisplay.AddPage(MapPeakList,'Map peaks')
1326513268
# create the grid once; N.B. need to reference at this scope
1326613269
G2frame.MapPeaks = G2G.GSGrid(MapPeakList)
1326713270
G2frame.phaseDisplay.gridList.append(G2frame.MapPeaks)
13271+
Pages.append('Map peaks')
1326813272

1326913273
if data['General']['doDysnomia']:
1327013274
G2frame.MEMData = wx.ScrolledWindow(G2frame.phaseDisplay)
1327113275
G2frame.phaseDisplay.AddPage(G2frame.MEMData,'Dysnomia')
1327213276
Pages.append('Dysnomia')
13273-
Pages.append('Map peaks')
1327413277

13275-
if data['General']['Type'] not in ['faulted',] and not data['General']['Modulated'] and nhist > 0:
13278+
if dataGeneral['Type'] not in ['faulted',] and not dataGeneral['Modulated']:
1327613279
G2frame.MCSA = wx.ScrolledWindow(G2frame.phaseDisplay)
1327713280
G2frame.phaseDisplay.AddPage(G2frame.MCSA,'MC/SA')
1327813281
Pages.append('MC/SA')
1327913282

13280-
G2frame.FRMC = wx.ScrolledWindow(G2frame.phaseDisplay)
13281-
G2frame.phaseDisplay.AddPage(G2frame.FRMC,'RMC')
13282-
Pages.append('RMC')
13283+
if nhist:
13284+
G2frame.FRMC = wx.ScrolledWindow(G2frame.phaseDisplay)
13285+
G2frame.phaseDisplay.AddPage(G2frame.FRMC,'RMC')
13286+
Pages.append('RMC')
1328313287

13284-
if data['General']['Type'] == 'nuclear':
13288+
if dataGeneral['Type'] == 'nuclear':
1328513289
G2frame.ISODIST = wx.ScrolledWindow(G2frame.phaseDisplay)
1328613290
G2frame.phaseDisplay.AddPage(G2frame.ISODIST,'ISODISTORT')
1328713291
Pages.append('ISODISTORT')
@@ -13292,9 +13296,6 @@ def renamePhaseName(phaseItem,generalData,newName):
1329213296
Pages.append('Texture')
1329313297
PawleyRefList = wx.Panel(G2frame.phaseDisplay)
1329413298
G2frame.PawleyRefl = None # grid now created when needed
13295-
# G2frame.PawleyRefl = G2G.GSGrid(PawleyRefList)
13296-
# G2frame.PawleyRefl.SetScrollRate(0,0)
13297-
# G2frame.phaseDisplay.gridList.append(G2frame.PawleyRefl)
1329813299
G2frame.phaseDisplay.AddPage(PawleyRefList,'Pawley reflections')
1329913300
Pages.append('Pawley reflections')
1330013301
G2frame.dataWindow.AtomCompute.Enable(G2G.wxID_ISODISP,'ISODISTORT' in data)

0 commit comments

Comments
 (0)