Changeset 2907 for branch


Ignore:
Timestamp:
Jul 4, 2017 6:19:31 PM (4 years ago)
Author:
toby
Message:

tabbed phase panel done. More to go...

Location:
branch/2frame
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • branch/2frame/GSASIIIO.py

    r2905 r2907  
    12221222
    12231223    This class is subclassed in the various exports/G2export_*.py files. Those files
    1224     are imported in :meth:`GSASII.GSASII._init_Exports` which defines the
     1224    are imported in :meth:`GSASIIdataGUI.GSASII._init_Exports` which defines the
    12251225    appropriate menu items for each one and the .Exporter method is called
    12261226    directly from the menu item.
     
    21242124
    21252125if __name__ == '__main__':
    2126     import GSASII
    2127     application = GSASII.GSASIImain(0)
     2126    import GSASIIdataGUI
     2127    application = GSASIIdataGUI.GSASIImain(0)
    21282128    G2frame = application.main
    21292129    #app = wx.PySimpleApp()
  • branch/2frame/GSASIIctrlGUI.py

    r2905 r2907  
    5353    they were retrieved from.
    5454    '''
     55    #def SelectItem(self,event):
     56    #    print 'Select Item'
     57    #    import GSASIIobj as G2obj
     58    #    G2obj.HowDidIgetHere()
     59    #    wx.TreeCtrl.SelectItem(self,event)
     60       
    5561    def __init__(self,parent=None,*args,**kwargs):
    5662        super(self.__class__,self).__init__(parent=parent,*args,**kwargs)
  • branch/2frame/GSASIIdataGUI.py

    r2906 r2907  
    334334        self.EndModal(wx.ID_CANCEL)
    335335       
    336 # class GSASIIsplit(wx.SplitterWindow):
    337 #     def __init__(self,parent,ID):
    338 #         wx.SplitterWindow.__init__(self, parent, ID,style = wx.SP_BORDER|wx.SP_LIVE_UPDATE)
    339 #         self.Bind(wx.EVT_SPLITTER_SASH_POS_CHANGED, self.OnSashChanged)
    340 #         self.Bind(wx.EVT_SPLITTER_SASH_POS_CHANGING, self.OnSashChanging)
    341 
    342 #     def OnSashChanged(self, evt):
    343 #         evt.Skip()
    344 # #        print "sash changed to %s\n" % str(evt.GetSashPosition())
    345 
    346 #     def OnSashChanging(self, evt):
    347 #         evt.Skip()
    348 # #        print "sash changing to %s\n" % str(evt.GetSashPosition())
    349 
    350336def GUIpatches():
    351337    'Misc fixes that only needs to be done when running a GUI'
     
    29502936        self.FillMainMenu(self.GSASIIMenu)
    29512937        self.SetMenuBar(self.GSASIIMenu)
    2952         #self.Bind(wx.EVT_SIZE, self.OnSize)
    29532938        self.Status = self.CreateStatusBar()
    2954         #self.mainPanel = GSASIIsplit(self,-1)
    2955         self.mainPanel = wx.SplitterWindow(self, wx.ID_ANY, style=wx.SP_BORDER|wx.SP_LIVE_UPDATE)
     2939        # Bob: note different ways to display the SplitterWindow. I like the 3d effect on the Mac
     2940        # as it makes the splitter bar a bit easier to "grab" -- this might need to be platform selected.
     2941        #self.mainPanel = wx.SplitterWindow(self, wx.ID_ANY, style=wx.SP_BORDER|wx.SP_LIVE_UPDATE)
     2942        #self.mainPanel = wx.SplitterWindow(self, wx.ID_ANY, style=wx.SP_BORDER|wx.SP_LIVE_UPDATE|wx.SP_3DSASH)
     2943        self.mainPanel = wx.SplitterWindow(self, wx.ID_ANY, style=wx.SP_LIVE_UPDATE|wx.SP_3D)
    29562944        self.mainPanel.SetMinimumPaneSize(100)
    29572945        self.treePanel = wx.Panel(self.mainPanel, wx.ID_ANY,
    29582946            style = wx.TAB_TRAVERSAL|wx.SUNKEN_BORDER)
    2959         #self.dataPanel = wx.Panel(self.mainPanel, wx.ID_ANY,
    2960         #    style = wx.TAB_TRAVERSAL|wx.SUNKEN_BORDER)
    2961         #self.mainPanel.SplitVertically(self.treePanel, self.dataPanel, 200)
    29622947       
    29632948        self.dataWindow = G2DataWindow(self.mainPanel)
    2964         #self.dataWindow = wxscroll.ScrolledPanel(self.mainPanel,style=wx.BORDER_SUNKEN)
    29652949        dataSizer = wx.BoxSizer(wx.VERTICAL)
    29662950        self.dataWindow.SetSizer(dataSizer)
     
    29982982        #FillWindow(self.dataWindow)
    29992983       
    3000         #self.dataWindow = G2DataWindow(self.dataPanel)
    3001         #self.dataWindow.SetSize(self.dataPanel.GetClientSize())
    3002         #self.dataWindow.SetInitialSize()
    30032984        self.dataWindow.SetupScrolling()
    30042985        self.dataFrame = self.dataWindow        #kluge!!
    3005 #        self.SetDataSize()
    3006        
    30072986       
    30082987        plotFrame = wx.Frame(None,-1,'GSASII Plots',size=wx.Size(700,600), \
     
    31553134    def OnGPXtreeItemExpanded(self, event):
    31563135        'Called when a tree item is expanded'
    3157         self.OnDataTreeSelChanged(event)
     3136        #self.OnDataTreeSelChanged(event)  # removed -- why select & show a tree item when expanding it? BHT
    31583137        event.Skip()
    31593138       
     
    39103889            import traceback
    39113890            print traceback.format_exc()
    3912        
     3891
    39133892    def StartProject(self):
    39143893        '''Opens a GSAS-II project file & selects the 1st available data set to
     
    57475726        '''Initializes the contents of the dataWindow panel
    57485727        '''
    5749         self.SetBackgroundColour(wx.WHITE)
     5728        #self.SetBackgroundColour(wx.WHITE)  # BHT: I prefer a gray background. Makes TextCtrls stand out
     5729        self.SetBackgroundColour(wx.Colour(248,248,248))  # BHT: I prefer a gray background. Makes TextCtrls stand out, but
     5730        # a bit lighter than the splitter bar
     5731
    57505732        Sizer = self.GetSizer()
    57515733        if Sizer:
     
    57545736            print 'No sizer in dataWindow'
    57555737            if GSASIIpath.GetConfigValue('debug'): raise Exception
    5756         #self.SetSize(self.GetParent().GetSize())
    5757         #self.SetAutoLayout(True)
    5758         #self.SetupScrolling()
    57595738       
    57605739    def SetDataSize(self):
    57615740        '''Sizes the contents of the dataWindow panel
    57625741        '''
    5763         self.SetBackgroundColour(wx.WHITE)
    57645742        Sizer = self.GetSizer()
    5765         if Sizer:
    5766             Sizer.Fit(self)
    5767         else:
     5743        if GSASIIpath.GetConfigValue('debug') and not Sizer:
    57685744            print 'No sizer in dataWindow'
    5769             if GSASIIpath.GetConfigValue('debug'): raise Exception
     5745            raise Exception
    57705746        self.Layout()
    57715747        self.SendSizeEvent()
    5772         #self.SetSize(self.GetParent().GetSize())
    5773         #self.SetAutoLayout(True)
    5774         #self.SetupScrolling()
    5775        
    57765748       
    57775749#TODO - remove         
     
    58505822                   
    58515823    G2frame.SetLabel(G2frame.GetLabel().split('||')[0]+' || '+'Notebook')
    5852     G2frame.dataWindow.ClearData()
    5853     G2frame.dataWindow.SetupScrolling()
    5854     mainSizer = wx.BoxSizer()
    5855     text = wx.TextCtrl(parent=G2frame.dataWindow,size=G2frame.dataWindow.GetSize(),
    5856         style=wx.TE_MULTILINE|wx.TE_PROCESS_ENTER | wx.TE_DONTWRAP)
     5824    text = wx.TextCtrl(G2frame.dataWindow,wx.ID_ANY,
     5825            style=wx.TE_MULTILINE|wx.TE_PROCESS_ENTER | wx.TE_DONTWRAP)
    58575826    text.Bind(wx.EVT_TEXT_ENTER,OnNoteBook)
    58585827    text.Bind(wx.EVT_KILL_FOCUS,OnNoteBook)
     
    58605829        text.AppendText(line+"\n")
    58615830    text.AppendText('Notebook entry @ '+time.ctime()+"\n")
    5862     mainSizer.Add(text,1,wx.EXPAND)
    5863     G2frame.dataWindow.SetAutoLayout(True)
    5864     G2frame.dataWindow.Layout()
    5865     G2frame.dataWindow.SetSizer(mainSizer)
    5866    
    5867 #    G2frame.SetDataSize()
     5831    G2frame.dataWindow.GetSizer().Add(wx.StaticText(G2frame.dataWindow,-1,' Add notes on project here: '),0,WACV)
     5832    G2frame.dataWindow.GetSizer().Add(text,1,wx.ALL|wx.EXPAND)
    58685833           
    58695834################################################################################
     
    58745839
    58755840    G2frame.SetLabel(G2frame.GetLabel().split('||')[0]+' || '+'Comments')
    5876     G2frame.dataWindow.ClearData()
    5877 #    G2frame.dataWindow.SetupScrolling()
    5878     text = wx.TextCtrl(parent=G2frame.dataWindow,size=G2frame.dataWindow.GetSize(),
    5879         style=wx.TE_MULTILINE|wx.TE_READONLY|wx.TE_DONTWRAP)
     5841    lines = ""
    58805842    for line in data:
    5881         if '\n' not in line:
    5882             text.AppendText(line+'\n')
    5883         else:
    5884             text.AppendText(line)
    5885     mainSizer = wx.BoxSizer()
    5886     mainSizer.Add(text,1,wx.EXPAND)
    5887     G2frame.dataWindow.SetAutoLayout(True)
    5888     G2frame.dataWindow.Layout()
    5889     G2frame.dataWindow.SetSizer(mainSizer)
    5890 #    G2frame.SetDataSize()
     5843        lines += line.rstrip()+'\n'
     5844    text = wx.StaticText(G2frame.dataWindow,wx.ID_ANY,lines)
     5845    G2frame.dataWindow.GetSizer().Add(text,1,wx.ALL|wx.EXPAND)
     5846
    58915847           
    58925848################################################################################
     
    75887544   
    75897545    G2frame.dataWindow.ClearData()
    7590     mainSizer = wx.BoxSizer(wx.VERTICAL)
     7546    mainSizer = G2frame.dataWindow.GetSizer()
    75917547    mainSizer.Add((5,5),)
    75927548    wtSizer = wx.BoxSizer(wx.HORIZONTAL)
     
    76437599                        (data[0][pfx+'Rf^2'],data[0][pfx+'Rf'],data[0][value])))
    76447600                   
    7645     mainSizer.Add((5,5),)
    7646     mainSizer.Layout()   
    7647     G2frame.dataWindow.SetSizer(mainSizer)
    7648     mainSizer.Fit(G2frame.dataWindow)
    7649     G2frame.SetDataSize()
    7650    
    76517601    G2frame.GPXtree.SetItemPyData(item,data)
    76527602    G2frame.PatternId = item
     
    77227672
    77237673def SelectDataTreeItem(G2frame,item,oldFocus=None):
    7724     '''Called from :meth:`GSASII.GSASII.OnDataTreeSelChanged` when a item is selected on the tree.
     7674    '''Called from :meth:`GSASIIdataGUI.GSASII.OnDataTreeSelChanged` when a item is selected on the tree.
    77257675    Also called from GSASII.OnGPXtreeEndDrag, OnAddPhase -- might be better to select item, triggering
    77267676    the the bind to SelectDataTreeItem
     
    77717721        G2frame.helpKey = "Data tree"
    77727722        G2frame.dataWindow.GetSizer().Add(
    7773             wx.TextCtrl(G2frame.dataWindow,size=G2frame.GetClientSize(),
    7774                     value='Select an item from the tree to see/edit parameters')
    7775                     )
     7723            wx.StaticText(G2frame.dataWindow, wx.ID_ANY,
     7724                    'Select an item from the tree to see/edit parameters'))
    77767725        G2frame.dataWindow.SetDataSize()
    77777726        return
    77787727    else:
    7779         # what does this code do? Is it still needed?
    7780         try:    #don't know why here when opening new project  from inside phase data!
     7728        # Set up the help entry for the current selected tree item
     7729        try:    #don't know why we get here when opening new project
    77817730            parentID = G2frame.GPXtree.GetItemParent(item)
    77827731            # save name of calling tree item for help. N.B. may want to override this later
    7783             prfx = G2frame.GPXtree.GetItemText(item).split()[0]
     7732            prfx = G2frame.GPXtree.GetItemText(item).split()[0].upper()
    77847733            prfx1 = G2frame.GPXtree.GetItemText(parentID).split()[0]
    7785             if prfx in ('IMG','PKS','PWDR','SASD','HKLF','PDF','refd',):
     7734            if prfx in ('IMG','PKS','PWDR','SASD','HKLF','PDF','REFD',):
    77867735                G2frame.dataWindow.helpKey = prfx
     7736            elif prfx1 == 'Phases':
     7737                G2frame.dataWindow.helpKey = 'Phases'
    77877738            elif prfx1 in ('IMG','PKS','PWDR','SASD','HKLF','PDF','REFD',):
    77887739                suffix = G2frame.GPXtree.GetItemText(item)
     
    77937744                G2frame.dataWindow.helpKey = G2frame.GPXtree.GetItemText(item) # save name of calling tree item for help
    77947745        except IndexError:
    7795             print 'bug: why here?'
    7796             return
     7746            G2frame.dataWindow.helpKey = ''
     7747            if GSASIIpath.GetConfigValue('debug'):
     7748                print 'bug: why here?'
     7749                G2obj.HowDidIgetHere()
     7750       
    77977751    # clear out the old panel contents
    77987752    G2frame.dataWindow.ClearData()
     
    78227776                Nvars = len(data['varyList'])
    78237777                Rvals = data['Rvals']
    7824                 text = '\nFinal residuals: \nwR = %.3f%% \nchi**2 = %.1f \nGOF = %.2f ' \
    7825                     %(Rvals['Rwp'],Rvals['chisq'],Rvals['GOF'])
    7826                 text += '\nNobs = %d \nNvals = %d \nSVD zeros = %d'%(Rvals['Nobs'],Nvars,Rvals.get('SVD0',0.))
     7778                text = ('Residuals after last refinement:\n'+
     7779                        '\twR = {:.3f}\n\tchi**2 = {:.1f}\n\tGOF = {:.2f}').format(
     7780                        Rvals['Rwp'],Rvals['chisq'],Rvals['GOF'])
     7781                text += '\n\tNobs = {}\n\tNvals = {}\n\tSVD zeros = {}'.format(
     7782                    Rvals['Nobs'],Nvars,Rvals.get('SVD0',0.))
    78277783                if 'lamMax' in Rvals:
    7828                     text += '\nlog10 MaxLambda = %.1f'%(np.log10(Rvals['lamMax']))
    7829             G2frame.dataWindow.ClearData()
    7830             wx.TextCtrl(parent=G2frame.dataWindow,size=G2frame.dataWindow.GetSize(),
    7831                 value='See plot window for covariance display'+text,style=wx.TE_MULTILINE)
     7784                    text += '\n\tlog10 MaxLambda = {:.1f}'.format(np.log10(Rvals['lamMax']))
     7785                G2frame.dataWindow.GetSizer().Add(
     7786                    wx.StaticText(G2frame.dataWindow,wx.ID_ANY,text)
     7787                )
    78327788            G2plt.PlotCovariance(G2frame,data)
    78337789        elif G2frame.GPXtree.GetItemText(item) == 'Constraints':
  • branch/2frame/GSASIIobj.py

    r2905 r2907  
    469469diffraction data for that information are directly associated with
    470470that tree item and there are a series of children to that item. The
    471 routines :func:`GSASII.GSASII.GetUsedHistogramsAndPhasesfromTree`
     471routines :func:`GSASIIdataGUI.GSASII.GetUsedHistogramsAndPhasesfromTree`
    472472and :func:`GSASIIstrIO.GetUsedHistogramsAndPhases` will
    473473load this information into a dictionary where the child tree name is
     
    632632diffraction data for that information are directly associated with
    633633that tree item and there are a series of children to that item. The
    634 routines :func:`GSASII.GSASII.GetUsedHistogramsAndPhasesfromTree`
     634routines :func:`GSASIIdataGUI.GSASII.GetUsedHistogramsAndPhasesfromTree`
    635635and :func:`GSASIIstrIO.GetUsedHistogramsAndPhases` will
    636636load this information into a dictionary where the child tree name is
     
    719719with a top-level entry named beginning with the string "IMG ". The
    720720image data are directly associated with that tree item and there
    721 are a series of children to that item. The routines :func:`GSASII.GSASII.GetUsedHistogramsAndPhasesfromTree`
     721are a series of children to that item. The routines :func:`GSASIIdataGUI.GSASII.GetUsedHistogramsAndPhasesfromTree`
    722722and :func:`GSASIIstrIO.GetUsedHistogramsAndPhases` will
    723723load this information into a dictionary where the child tree name is
     
    845845The dictionary keys are the name of the parameter (<phase>:<hist>:<name>:<atom>).
    846846It is prepared in two ways. When loaded from the tree
    847 (in :meth:`GSASII.GSASII.MakeLSParmDict` and
     847(in :meth:`GSASIIdataGUI.GSASII.MakeLSParmDict` and
    848848:meth:`GSASIIIO.ExportBaseclass.loadParmDict`),
    849849the values are lists with two elements: ``[value, refine flag]``
     
    10931093    This is called in three places (only): :func:`GSASIIstrIO.GetUsedHistogramsAndPhases`
    10941094    (which loads the histograms and phases from a GPX file),
    1095     :meth:`~GSASII.GSASII.GetUsedHistogramsAndPhasesfromTree`
     1095    :meth:`~GSASIIdataGUI.GSASII.GetUsedHistogramsAndPhasesfromTree`
    10961096    (which loads the histograms and phases from the data tree.) and
    10971097    :meth:`GSASIIconstrGUI.UpdateConstraints`
     
    18871887
    18881888    Objects constructed that subclass this (in import/G2phase_*.py etc.) will be used
    1889     in :meth:`GSASII.GSASII.OnImportPhase`.
     1889    in :meth:`GSASIIdataGUI.GSASII.OnImportPhase`.
    18901890    See :ref:`Writing a Import Routine<Import_Routines>`
    18911891    for an explanation on how to use this class.
     
    19051905    of structure factors.
    19061906
    1907     Structure factors are read with a call to :meth:`GSASII.GSASII.OnImportSfact`
    1908     which in turn calls :meth:`GSASII.GSASII.OnImportGeneric`, which calls
     1907    Structure factors are read with a call to :meth:`GSASIIdataGUI.GSASII.OnImportSfact`
     1908    which in turn calls :meth:`GSASIIdataGUI.GSASII.OnImportGeneric`, which calls
    19091909    methods :meth:`ExtensionValidator`, :meth:`ContentsValidator` and
    19101910    :meth:`Reader`.
     
    19651965
    19661966    Objects constructed that subclass this (in import/G2pwd_*.py etc.) will be used
    1967     in :meth:`GSASII.GSASII.OnImportPowder`.
     1967    in :meth:`GSASIIdataGUI.GSASII.OnImportPowder`.
    19681968    See :ref:`Writing a Import Routine<Import_Routines>`
    19691969    for an explanation on how to use this class.
     
    21062106   
    21072107      * Initial reading is typically done from a menu item
    2108         with a call to :meth:`GSASII.GSASII.OnImportImage`
    2109         which in turn calls :meth:`GSASII.GSASII.OnImportGeneric`. That calls
     2108        with a call to :meth:`GSASIIdataGUI.GSASII.OnImportImage`
     2109        which in turn calls :meth:`GSASIIdataGUI.GSASII.OnImportGeneric`. That calls
    21102110        methods :meth:`ExtensionValidator`, :meth:`ContentsValidator` and
    21112111        :meth:`Reader`. This returns a list of reader objects for each read image.
  • branch/2frame/GSASIIphsGUI.py

    r2905 r2907  
    10661066    in the main (data tree) window.
    10671067    Called only from :meth:`GSASIIdataGUI.SelectDataTreeItem`,
    1068     which in turn is called from :meth:`GSASII.GSASII.OnDataTreeSelChanged`
     1068    which in turn is called from :meth:`GSASIIdataGUI.GSASII.OnDataTreeSelChanged`
    10691069    when a Phase tree item is selected. This creates all tabs on the page and fills
    10701070    their contents. Routine OnPageChanged is called each time a tab is pressed
     
    13021302                    pages = [G2frame.phaseDisplay.GetPageText(PageNum) for PageNum in range(G2frame.phaseDisplay.GetPageCount())]
    13031303                    if generalData['Type'] == 'faulted':
    1304                         G2frame.dataFrame.Bind(wx.EVT_MENU, OnLoadDIFFaX, id=G2gd.wxID_LOADDIFFAX)
    1305                         G2frame.dataFrame.Bind(wx.EVT_MENU, OnSimulate, id=G2gd.wxID_LAYERSIMULATE)
    1306                         G2frame.dataFrame.Bind(wx.EVT_MENU, OnSeqSimulate, id=G2gd.wxID_SEQUENCESIMULATE)
    1307                         G2frame.dataFrame.Bind(wx.EVT_MENU, OnFitLayers, id=G2gd.wxID_LAYERSFIT)                       
     1304                        G2frame.dataWindow.Bind(wx.EVT_MENU, OnLoadDIFFaX, id=G2gd.wxID_LOADDIFFAX)
     1305                        G2frame.dataWindow.Bind(wx.EVT_MENU, OnSimulate, id=G2gd.wxID_LAYERSIMULATE)
     1306                        G2frame.dataWindow.Bind(wx.EVT_MENU, OnSeqSimulate, id=G2gd.wxID_SEQUENCESIMULATE)
     1307                        G2frame.dataWindow.Bind(wx.EVT_MENU, OnFitLayers, id=G2gd.wxID_LAYERSFIT)                       
    13081308                        if 'Wave Data' in pages:
    13091309                            pass
     
    18991899            def OnRefList(event):
    19001900                if not refsList:
    1901                     G2G.G2MessageBox(G2frame.dataFrame,'No reflections')
     1901                    G2G.G2MessageBox(G2frame,'No reflections')
    19021902                    return
    19031903                dlg = G2G.G2MultiChoiceDialog(G2frame, 'Select reflection sets to use',
     
    23002300
    23012301        if generalData['Modulated']:
    2302             G2frame.dataFrame.GeneralCalc.Enable(G2gd.wxID_SINGLEMCSA,False)
    2303             G2frame.dataFrame.GeneralCalc.Enable(G2gd.wxID_MULTIMCSA,False)
    2304             G2frame.dataFrame.GeneralCalc.Enable(G2gd.wxID_4DCHARGEFLIP,True)
     2302            G2frame.dataWindow.GeneralCalc.Enable(G2gd.wxID_SINGLEMCSA,False)
     2303            G2frame.dataWindow.GeneralCalc.Enable(G2gd.wxID_MULTIMCSA,False)
     2304            G2frame.dataWindow.GeneralCalc.Enable(G2gd.wxID_4DCHARGEFLIP,True)
    23052305            mainSizer.Add(ModulatedSizer(generalData['Type']))
    23062306            G2G.HorizontalLine(mainSizer,General)
    23072307        else:
    2308             G2frame.dataFrame.GeneralCalc.Enable(G2gd.wxID_SINGLEMCSA,True)
    2309             G2frame.dataFrame.GeneralCalc.Enable(G2gd.wxID_MULTIMCSA,True)
    2310             G2frame.dataFrame.GeneralCalc.Enable(G2gd.wxID_4DCHARGEFLIP,False)
     2308            G2frame.dataWindow.GeneralCalc.Enable(G2gd.wxID_SINGLEMCSA,True)
     2309            G2frame.dataWindow.GeneralCalc.Enable(G2gd.wxID_MULTIMCSA,True)
     2310            G2frame.dataWindow.GeneralCalc.Enable(G2gd.wxID_4DCHARGEFLIP,False)
    23112311
    23122312        mainSizer.Add(PawleySizer())
     
    23212321            mainSizer.Add(MCSASizer())
    23222322        G2frame.GetStatusBar().SetStatusText('')
    2323         SetPhaseWindow(G2frame.dataFrame,General,mainSizer,Scroll=Scroll)
     2323        SetPhaseWindow(G2frame.dataWindow,General,mainSizer,Scroll=Scroll)
    23242324       
    23252325    def OnTransform(event):
     
    27582758                            Atoms.SetCellStyle(row,c,VERY_LIGHT_GREY,True)
    27592759            Atoms.AutoSizeColumns(False)
    2760             SetPhaseWindow(G2frame.dataFrame,Atoms,size=[700,300])
     2760            SetPhaseWindow(G2frame.dataWindow,Atoms,size=[700,300])
    27612761
    27622762        # FillAtomsGrid executable code starts here
     
    27852785        if atomData:
    27862786            for item in Items:   
    2787                 G2frame.dataFrame.AtomsMenu.Enable(item,True)
     2787                G2frame.dataWindow.AtomsMenu.Enable(item,True)
    27882788        else:
    27892789            for item in Items:
    2790                 G2frame.dataFrame.AtomsMenu.Enable(item,False)
     2790                G2frame.dataWindow.AtomsMenu.Enable(item,False)
    27912791        Items = [G2gd.wxID_ATOMVIEWINSERT, G2gd.wxID_ATOMSVIEWADD,G2gd.wxID_ATOMMOVE]
    27922792        if 'showABC' in data['Drawing']:
    27932793            for item in Items:
    2794                 G2frame.dataFrame.AtomsMenu.Enable(item,True)
     2794                G2frame.dataWindow.AtomsMenu.Enable(item,True)
    27952795        else:
    27962796            for item in Items:
    2797                 G2frame.dataFrame.AtomsMenu.Enable(item,False)
     2797                G2frame.dataWindow.AtomsMenu.Enable(item,False)
    27982798        parmChoice = ': ,X,XU,U,F,FX,FXU,FU'
    27992799        if generalData['Type'] == 'magnetic':
     
    29902990            SetupGeneral()
    29912991            data['General']['HydIds'].update(HydIds)
    2992             G2frame.dataFrame.AtomEdit.Enable(G2gd.wxID_UPDATEHATOM,True)
     2992            G2frame.dataWindow.AtomEdit.Enable(G2gd.wxID_UPDATEHATOM,True)
    29932993            data['Drawing']['Atoms'] = []
    29942994            UpdateDrawAtoms()
     
    30213021            del HydIds[HId]
    30223022        if not len(HydIds):
    3023             G2frame.dataFrame.AtomEdit.Enable(G2gd.wxID_UPDATEHATOM,False)
     3023            G2frame.dataWindow.AtomEdit.Enable(G2gd.wxID_UPDATEHATOM,False)
    30243024        data['Drawing']['Atoms'] = []
    30253025        UpdateDrawAtoms()
     
    31443144        SetupGeneral()
    31453145        if not len(HydIds):
    3146             G2frame.dataFrame.AtomEdit.Enable(G2gd.wxID_UPDATEHATOM,False)
     3146            G2frame.dataWindow.AtomEdit.Enable(G2gd.wxID_UPDATEHATOM,False)
    31473147        event.StopPropagation()
    31483148
     
    34383438        msg = 'Density of phase {:s} = {:.3f} g/cc'.format(data['General']['Name'],density)
    34393439        print(msg)
    3440         G2G.G2MessageBox(G2frame.dataFrame,msg,'Density')
     3440        G2G.G2MessageBox(G2frame,msg,'Density')
    34413441       
    34423442    def OnValidProtein(event):
     
    36803680        generalData = data['General']
    36813681        cx,ct,cs,cia = generalData['AtomPtrs']
    3682         reqrdr = G2frame.dataFrame.ReImportMenuId.get(event.GetId())
     3682        reqrdr = G2frame.dataWindow.ReImportMenuId.get(event.GetId())
    36833683        rdlist = G2frame.OnImportGeneric(reqrdr,
    36843684            G2frame.ImportPhaseReaderlist,'phase')
     
    43744374        bottomSizer.Add(StackSizer())
    43754375        mainSizer.Add(bottomSizer)
    4376         SetPhaseWindow(G2frame.dataFrame,G2frame.layerData,mainSizer,Scroll=Scroll)
     4376        SetPhaseWindow(G2frame.dataWindow,G2frame.layerData,mainSizer,Scroll=Scroll)
    43774377       
    43784378    def OnCopyPhase(event):
     
    46494649            mainSizer.Add(G2frame.bottomSizer)
    46504650            mainSizer.Layout()
    4651             G2frame.dataFrame.Refresh()
     4651            G2frame.dataWindow.Refresh()
    46524652            waveData.SetVirtualSize(mainSizer.GetMinSize())
    46534653            waveData.Scroll(0,Scroll)
    4654             G2frame.dataFrame.SendSizeEvent()
     4654            G2frame.dataWindow.SendSizeEvent()
    46554655           
    46564656        def ShowAtomInfo():
     
    48114811        G2frame.bottomSizer = ShowAtomInfo()
    48124812        mainSizer.Add(G2frame.bottomSizer)
    4813         SetPhaseWindow(G2frame.dataFrame,G2frame.waveData,mainSizer,Scroll=Scroll)
     4813        SetPhaseWindow(G2frame.dataWindow,G2frame.waveData,mainSizer,Scroll=Scroll)
    48144814   
    48154815    def OnWaveVary(event):
     
    51815181           if colLabels[c] not in ['Style','Label','Color']:
    51825182                drawAtoms.SetColAttr(c,attr)
    5183         SetPhaseWindow(G2frame.dataFrame,drawAtoms,size=[600,300])
     5183        SetPhaseWindow(G2frame.dataWindow,drawAtoms,size=[600,300])
    51845184
    51855185        FindBondsDraw(data)
     
    60926092        mainSizer.Add((5,5),0)
    60936093        mainSizer.Add(PlaneSizer(),0,)
    6094         SetPhaseWindow(G2frame.dataFrame,drawOptions,mainSizer)
     6094        SetPhaseWindow(G2frame.dataWindow,drawOptions,mainSizer)
    60956095
    60966096################################################################################
     
    64736473        mainSizer.Add(angSizer,0,WACV|wx.LEFT,5)
    64746474#        mainSizer.Add(SHPenalty(textureData['Penalty']),0,WACV|wx.LEFT,5)  for future
    6475         SetPhaseWindow(G2frame.dataFrame,Texture,mainSizer)
     6475        SetPhaseWindow(G2frame.dataWindow,Texture,mainSizer)
    64766476
    64776477################################################################################
     
    64926492            item, cookie = G2frame.GPXtree.GetNextChild(G2frame.root, cookie)                       
    64936493            if not TextList:
    6494                 G2G.G2MessageBox(G2frame.dataFrame,'No reflections')
     6494                G2G.G2MessageBox(G2frame,'No reflections')
    64956495                return
    64966496        dlg = G2G.G2MultiChoiceDialog(G2frame, 'Select reflection sets to use',
     
    65496549        hist = G2frame.hist
    65506550        if data['Histograms']:
    6551             dlg = G2G.G2MultiChoiceDialog(G2frame.dataFrame, 'Use histograms',
    6552                 'Use which histograms?',G2frame.dataFrame.HistsInPhase)
     6551            dlg = G2G.G2MultiChoiceDialog(G2frame, 'Use histograms',
     6552                'Use which histograms?',G2frame.dataWindow.HistsInPhase)
    65536553            try:
    65546554                if dlg.ShowModal() == wx.ID_OK:
    65556555                    sel = dlg.GetSelections()
    6556                     for id,item in enumerate(G2frame.dataFrame.HistsInPhase):
     6556                    for id,item in enumerate(G2frame.dataWindow.HistsInPhase):
    65576557                        if id in sel:
    65586558                            data['Histograms'][item]['Use'] = True
     
    65976597    def OnDataCopy(event):
    65986598        hist = G2frame.hist
    6599         keyList = G2frame.dataFrame.HistsInPhase[:]
     6599        keyList = G2frame.dataWindow.HistsInPhase[:]
    66006600        if hist in keyList: keyList.remove(hist)
    66016601        if not keyList:
    6602             G2G.G2MessageBox(G2frame.dataFrame,'No histograms to copy to')
     6602            G2G.G2MessageBox(G2frame,'No histograms to copy to')
    66036603            return
    66046604        sourceDict = data['Histograms'][hist]
     
    66106610        for name in copyNames:
    66116611            copyDict[name] = copy.deepcopy(sourceDict[name])        #force copy
    6612         dlg = G2G.G2MultiChoiceDialog(G2frame.dataFrame,
     6612        dlg = G2G.G2MultiChoiceDialog(G2frame,
    66136613                u'Copy phase/histogram parameters\nfrom '+hist[5:][:35],
    66146614                'Copy phase/hist parameters', keyList)
     
    66536653                for bab in babNames:
    66546654                    copyDict[name][bab] = sourceDict[name][bab][1]                       
    6655         keyList = G2frame.dataFrame.HistsInPhase[:]
     6655        keyList = G2frame.dataWindow.HistsInPhase[:]
    66566656        if hist in keyList: keyList.remove(hist)
    66576657        if not keyList:
    6658             G2G.G2MessageBox(G2frame.dataFrame,'No histograms to copy to')
     6658            G2G.G2MessageBox(G2frame,'No histograms to copy to')
    66596659            return
    6660         dlg = G2G.G2MultiChoiceDialog(G2frame.dataFrame,
     6660        dlg = G2G.G2MultiChoiceDialog(G2frame,
    66616661                u'Copy phase/histogram flags\nfrom '+hist[5:][:35],
    66626662                'Copy phase/hist flags', keyList)
     
    66996699        hist = G2frame.hist
    67006700        sourceDict = data['Histograms'][hist]
    6701         keyList = G2frame.dataFrame.HistsInPhase[:]
     6701        keyList = G2frame.dataWindow.HistsInPhase[:]
    67026702        if hist in keyList: keyList.remove(hist)
    67036703        if not keyList:
    6704             G2G.G2MessageBox(G2frame.dataFrame,'No histograms to copy to')
     6704            G2G.G2MessageBox(G2frame,'No histograms to copy to')
    67056705            return
    67066706        copyDict = {}
     
    67096709        else:  #PWDR 
    67106710            copyNames = ['Scale','Pref.Ori.','Size','Mustrain','HStrain','Extinction','Babinet','LeBail']
    6711         dlg = G2G.G2MultiChoiceDialog(G2frame.dataFrame,'Select which parameters to copy',
     6711        dlg = G2G.G2MultiChoiceDialog(G2frame,'Select which parameters to copy',
    67126712            'Select phase data parameters', copyNames)
    67136713        selectedItems = []
     
    67216721        for parm in selectedItems:
    67226722            copyDict[parm] = copy.deepcopy(sourceDict[parm])
    6723         dlg = G2G.G2MultiChoiceDialog(G2frame.dataFrame,
     6723        dlg = G2G.G2MultiChoiceDialog(G2frame,
    67246724                        u'Copy selected phase/histogram parameters\nfrom '+hist[5:][:35],
    67256725                        'Copy selected phase/hist parameters', keyList)
     
    67476747                item, cookie = G2frame.GPXtree.GetNextChild(G2frame.root, cookie)
    67486748            if not TextList:
    6749                 G2G.G2MessageBox(G2frame.dataFrame,'No histograms')
     6749                G2G.G2MessageBox(G2frame,'No histograms')
    67506750                return
    67516751            dlg = G2G.G2MultiChoiceDialog(G2frame, 'Select powder histograms to use',
     
    67746774               
    67756775    def OnDataDelete(event):
    6776         if G2frame.dataFrame.HistsInPhase:
     6776        if G2frame.dataWindow.HistsInPhase:
    67776777            DelList = []
    6778             dlg = G2G.G2MultiChoiceDialog(G2frame.dataFrame, 'Delete histogram',
    6779                 'Which histogram to delete from this phase?',G2frame.dataFrame.HistsInPhase)
     6778            dlg = G2G.G2MultiChoiceDialog(G2frame, 'Delete histogram',
     6779                'Which histogram to delete from this phase?',G2frame.dataWindow.HistsInPhase)
    67806780            try:
    67816781                if dlg.ShowModal() == wx.ID_OK:
    6782                     DelList = [G2frame.dataFrame.HistsInPhase[i] for i in dlg.GetSelections()]
     6782                    DelList = [G2frame.dataWindow.HistsInPhase[i] for i in dlg.GetSelections()]
    67836783                    for i in DelList:
    67846784                        del data['Histograms'][i]
     
    70877087            mainSizer.Add(G2frame.bottomSizer)
    70887088            mainSizer.Layout()
    7089             G2frame.dataFrame.Refresh()
     7089            G2frame.dataWindow.Refresh()
    70907090            RigidBodies.SetVirtualSize(mainSizer.GetMinSize())
    70917091            RigidBodies.Scroll(0,Scroll)
    7092             G2frame.dataFrame.SendSizeEvent()
     7092            G2frame.dataWindow.SendSizeEvent()
    70937093            G2plt.PlotStructure(G2frame,data)
    70947094            wx.CallAfter(oldFocus.SetFocus)
     
    71457145                mainSizer.Add(VecrbSizer(RBObj))
    71467146
    7147         SetPhaseWindow(G2frame.dataFrame,RigidBodies,mainSizer)
     7147        SetPhaseWindow(G2frame.dataWindow,RigidBodies,mainSizer)
    71487148
    71497149    def OnRBCopyParms(event):
     
    74757475            btnSizer.Add((20,20),1)
    74767476            mainSizer.Add(btnSizer,0,wx.EXPAND|wx.BOTTOM|wx.TOP, 10)
    7477             SetPhaseWindow(G2frame.dataFrame,RigidBodies,mainSizer)
     7477            SetPhaseWindow(G2frame.dataWindow,RigidBodies,mainSizer)
    74787478        wx.CallAfter(Draw)
    74797479       
     
    80428042            mainSizer.Add(ResultsSizer(Results))
    80438043           
    8044         SetPhaseWindow(G2frame.dataFrame,G2frame.MCSA,mainSizer)
     8044        SetPhaseWindow(G2frame.dataWindow,G2frame.MCSA,mainSizer)
    80458045       
    80468046    def SetSolution(result,Models):
     
    81768176            print '**** ERROR - no rigid bodies defined ****'
    81778177            return
    8178         dlg = wx.SingleChoiceDialog(G2frame.dataFrame,'Select','Rigid body',rbNames.keys())
     8178        dlg = wx.SingleChoiceDialog(G2frame,'Select','Rigid body',rbNames.keys())
    81798179        if dlg.ShowModal() == wx.ID_OK:
    81808180            sel = dlg.GetSelection()
     
    82758275            G2frame.PawleyRefl.SetMargins(0,0)
    82768276            G2frame.PawleyRefl.AutoSizeColumns(False)
    8277             SetPhaseWindow(G2frame.dataFrame,G2frame.PawleyRefl,size=[450,300])
     8277            SetPhaseWindow(G2frame.dataWindow,G2frame.PawleyRefl,size=[450,300])
    82788278                   
    82798279    def OnPawleySet(event):
     
    82878287        generalData = data['General']
    82888288        startDmin = generalData['Pawley dmin']
    8289         General = wx.Dialog(G2frame.dataFrame,wx.ID_ANY,'Set Pawley Parameters',
     8289        genDlg = wx.Dialog(G2frame,wx.ID_ANY,'Set Pawley Parameters',
    82908290                        style=wx.DEFAULT_DIALOG_STYLE)
    82918291        mainSizer = wx.BoxSizer(wx.VERTICAL)
    8292         mainSizer.Add(wx.StaticText(General,wx.ID_ANY,
     8292        mainSizer.Add(wx.StaticText(genDlg,wx.ID_ANY,
    82938293                                    'Set Pawley Extraction Parameters for phase '+
    82948294                                    generalData.get('Name','?')))
    82958295        mainSizer.Add([5,10])
    82968296        pawleySizer = wx.BoxSizer(wx.HORIZONTAL)
    8297         pawleySizer.Add(wx.StaticText(General,label=' Do Pawley refinement?: '),0,WACV)
    8298         pawlRef = G2G.G2CheckBox(General,'',generalData,'doPawley',
     8297        pawleySizer.Add(wx.StaticText(genDlg,label=' Do Pawley refinement?: '),0,WACV)
     8298        pawlRef = G2G.G2CheckBox(genDlg,'',generalData,'doPawley',
    82998299                             DisablePawleyOpts)
    83008300        pawleySizer.Add(pawlRef,0,WACV)
    83018301        mainSizer.Add(pawleySizer)
    83028302        pawleySizer = wx.BoxSizer(wx.HORIZONTAL)
    8303         pawleySizer.Add(wx.StaticText(General,label=' Pawley dmin: '),0,WACV)
     8303        pawleySizer.Add(wx.StaticText(genDlg,label=' Pawley dmin: '),0,WACV)
    83048304        def d2Q(*a,**kw):
    83058305            temp['Qmax'] = 2 * math.pi / generalData['Pawley dmin']
    83068306            pawlQVal.SetValue(temp['Qmax'])
    8307         pawlVal = G2G.ValidatedTxtCtrl(General,generalData,'Pawley dmin',
     8307        pawlVal = G2G.ValidatedTxtCtrl(genDlg,generalData,'Pawley dmin',
    83088308               min=0.25,max=20.,nDig=(10,5),typeHint=float,OnLeave=d2Q)
    83098309        pawleySizer.Add(pawlVal,0,WACV)
    8310         pawleySizer.Add(wx.StaticText(General,label='   Qmax: '),0,WACV)
     8310        pawleySizer.Add(wx.StaticText(genDlg,label='   Qmax: '),0,WACV)
    83118311        temp = {'Qmax':2 * math.pi / generalData['Pawley dmin']}
    83128312        def Q2D(*args,**kw):
    83138313            generalData['Pawley dmin'] = 2 * math.pi / temp['Qmax']
    83148314            pawlVal.SetValue(generalData['Pawley dmin'])       
    8315         pawlQVal = G2G.ValidatedTxtCtrl(General,temp,'Qmax',
     8315        pawlQVal = G2G.ValidatedTxtCtrl(genDlg,temp,'Qmax',
    83168316               min=0.314,max=25.,nDig=(10,5),typeHint=float,OnLeave=Q2D)
    83178317        pawleySizer.Add(pawlQVal,0,WACV)
    83188318        mainSizer.Add(pawleySizer)
    83198319        pawleySizer = wx.BoxSizer(wx.HORIZONTAL)
    8320         pawleySizer.Add(wx.StaticText(General,label=' Pawley neg. wt.: '),0,WACV)
    8321         pawlNegWt = G2G.ValidatedTxtCtrl(General,generalData,'Pawley neg wt',
     8320        pawleySizer.Add(wx.StaticText(genDlg,label=' Pawley neg. wt.: '),0,WACV)
     8321        pawlNegWt = G2G.ValidatedTxtCtrl(genDlg,generalData,'Pawley neg wt',
    83228322                    min=0.,max=1.,nDig=(10,4),typeHint=float)
    83238323        pawleySizer.Add(pawlNegWt,0,WACV)
     
    83258325
    83268326        # make OK button
    8327         def OnOK(event): General.EndModal(wx.ID_OK)
     8327        def OnOK(event): genDlg.EndModal(wx.ID_OK)
    83288328        mainSizer.Add([5,5])
    83298329        btnsizer = wx.StdDialogButtonSizer()
    8330         btn = wx.Button(General, wx.ID_OK)
     8330        btn = wx.Button(genDlg, wx.ID_OK)
    83318331        btn.Bind(wx.EVT_BUTTON, OnOK)
    83328332        btn.SetDefault()
    83338333        btnsizer.AddButton(btn)
    8334         btn = wx.Button(General, wx.ID_CANCEL)
     8334        btn = wx.Button(genDlg, wx.ID_CANCEL)
    83358335        btnsizer.AddButton(btn)
    83368336        btnsizer.Realize()
    83378337        mainSizer.Add(btnsizer, 0, wx.ALIGN_CENTER|wx.ALL, 5)
    83388338
    8339         General.SetSizer(mainSizer)
    8340         mainSizer.Fit(General)
    8341         General.CenterOnParent()
    8342         res = General.ShowModal()
    8343         General.Destroy()
     8339        genDlg.SetSizer(mainSizer)
     8340        mainSizer.Fit(genDlg)
     8341        genDlg.CenterOnParent()
     8342        res = genDlg.ShowModal()
     8343        genDlg.Destroy()
    83448344
    83458345        if generalData['doPawley'] and res == wx.ID_OK and startDmin != generalData['Pawley dmin']:
     
    85768576            MapPeaks.SetMargins(0,0)
    85778577            MapPeaks.AutoSizeColumns(False)
    8578             SetPhaseWindow(G2frame.dataFrame,MapPeaks,size=[440,300])
     8578            SetPhaseWindow(G2frame.dataWindow,MapPeaks,size=[440,300])
    85798579                   
    85808580    def OnPeaksMove(event):
     
    86258625        if generalData['Map'].get('Show bonds',False):
    86268626            generalData['Map']['Show bonds'] = False
    8627             G2frame.dataFrame.MapPeaksEdit.SetLabel(G2gd.wxID_SHOWBONDS,'Show bonds')
     8627            G2frame.dataWindow.MapPeaksEdit.SetLabel(G2gd.wxID_SHOWBONDS,'Show bonds')
    86288628        else:
    86298629            generalData['Map']['Show bonds'] = True
    8630             G2frame.dataFrame.MapPeaksEdit.SetLabel(G2gd.wxID_SHOWBONDS,'Hide bonds')
     8630            G2frame.dataWindow.MapPeaksEdit.SetLabel(G2gd.wxID_SHOWBONDS,'Hide bonds')
    86318631        FillMapPeaksGrid()
    86328632        G2plt.PlotStructure(G2frame,data)
     
    89658965        text = G2frame.phaseDisplay.GetPageText(page)
    89668966        G2frame.phaseDisplayPhaseText = text
    8967         G2frame.dataFrame.helpKey = text # use name of Phase tab for help lookup
     8967        G2frame.dataWindow.helpKey = text # use name of Phase tab for help lookup
    89688968        if text == 'General':
    89698969            G2gd.SetDataMenuBar(G2frame,G2frame.dataWindow.DataGeneral)
     
    90589058        G2frame.Bind(wx.EVT_MENU, OnIsoDistortCalc, id=G2gd.wxID_ISODISP)
    90599059        if 'HydIds' in data['General']:
    9060             G2frame.dataFrame.AtomEdit.Enable(G2gd.wxID_UPDATEHATOM,True)
     9060            G2frame.dataWindow.AtomEdit.Enable(G2gd.wxID_UPDATEHATOM,True)
    90619061        else:
    9062             G2frame.dataFrame.AtomEdit.Enable(G2gd.wxID_UPDATEHATOM,False)
    9063         for id in G2frame.dataFrame.ReImportMenuId:     #loop over submenu items
     9062            G2frame.dataWindow.AtomEdit.Enable(G2gd.wxID_UPDATEHATOM,False)
     9063        for id in G2frame.dataWindow.ReImportMenuId:     #loop over submenu items
    90649064            G2frame.Bind(wx.EVT_MENU, OnReImport, id=id)
    90659065        # Wave Data
     
    91599159    G2gd.SetDataMenuBar(G2frame)
    91609160    G2frame.SetLabel(G2frame.GetLabel().split('||')[0]+' || '+'Phase Data for '+PhaseName)
    9161     G2frame.dataWindow.ClearData()
    9162     if GSASIIpath.GetConfigValue('debug'):
    9163         G2frame.phaseDisplay = G2G.GSNoteBook(parent=G2frame.dataWindow,size=G2frame.dataWindow.GetClientSize(),
    9164             style=wx.aui.AUI_NB_TOP | wx.aui.AUI_NB_TAB_SPLIT | wx.aui.AUI_NB_TAB_MOVE)
    9165     else:
    9166         G2frame.phaseDisplay = G2G.GSNoteBook(parent=G2frame.dataWindow,size=G2frame.dataWindow.GetClientSize())
     9161    # Bob: why do this differently in debug mode? Is this code to test if tabs can be moved around?
     9162#    if GSASIIpath.GetConfigValue('debug'):
     9163#        G2frame.phaseDisplay = G2G.GSNoteBook(parent=G2frame.dataWindow,size=G2frame.dataWindow.GetClientSize(),
     9164#            style=wx.aui.AUI_NB_TOP | wx.aui.AUI_NB_TAB_SPLIT | wx.aui.AUI_NB_TAB_MOVE)
     9165#    else:
     9166#        G2frame.phaseDisplay = G2G.GSNoteBook(parent=G2frame.dataWindow,size=G2frame.dataWindow.GetClientSize())
     9167    G2frame.phaseDisplay = G2G.GSNoteBook(parent=G2frame.dataWindow)
     9168    G2frame.dataWindow.GetSizer().Add(G2frame.phaseDisplay,1,wx.ALL|wx.EXPAND,1)
    91679169    G2frame.phaseDisplay.gridList = [] # list of all grids in notebook
    91689170    Pages = []   
     
    92129214    G2frame.phaseDisplay.AddPage(G2frame.PawleyRefl,'Pawley reflections')
    92139215    Pages.append('Pawley reflections')
    9214     G2frame.dataFrame.AtomCompute.Enable(G2gd.wxID_ISODISP,'ISODISTORT' in data)
    9215     G2frame.dataFrame.AtomCompute.Enable(G2gd.wxID_VALIDPROTEIN,'macro' in data['General']['Type'])
     9216    G2frame.dataWindow.AtomCompute.Enable(G2gd.wxID_ISODISP,'ISODISTORT' in data)
     9217    G2frame.dataWindow.AtomCompute.Enable(G2gd.wxID_VALIDPROTEIN,'macro' in data['General']['Type'])
    92169218    G2frame.phaseDisplay.Bind(wx.aui.EVT_AUINOTEBOOK_PAGE_CHANGED, OnPageChanged)
    92179219    FillMenus()
    92189220    if oldPage is None or oldPage == 0:
    92199221        ChangePage(0)
    9220         wx.CallAfter(G2frame.phaseDisplay.SendSizeEvent)
     9222        #wx.CallAfter(G2frame.phaseDisplay.SendSizeEvent)
    92219223    elif oldPage:
    92229224        SetupGeneral()    # not sure why one might need this when moving from phase to phase; but does not hurt
  • branch/2frame/GSASIIplot.py

    r2905 r2907  
    212212    def RaiseLastPage(self,lastRaisedPlotTab,treeItemPlot):
    213213        '''Raises either the Last tab clicked on or what is drawn by the selected tree item
    214         This is called after a refinement is completed by :meth:`GSASII.GSASII.ResetPlots`
     214        This is called after a refinement is completed by :meth:`GSASIIdataGUI.GSASII.ResetPlots`
    215215        '''
    216216        plotNum = None
Note: See TracChangeset for help on using the changeset viewer.