Changeset 3376


Ignore:
Timestamp:
May 8, 2018 12:47:52 PM (3 years ago)
Author:
toby
Message:

merge refine and seq. refine menu items, relabeling as needed

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/GSASIIdataGUI.py

    r3375 r3376  
    524524        self.Bind(wx.EVT_MENU, self.OnRefine, id=item.GetId())
    525525
    526         #===============================================================================
    527         # TODO: remove this, also EnableSeqRefineMenu and self.SeqRefine
    528         # do when tutorials are updated so that references to menu item are gone
    529         item = parent.Append(wx.ID_ANY,'Sequential refine','')
    530         self.Bind(wx.EVT_MENU, self.OnSeqRefine, id=item.GetId())
    531         if len(self.SeqRefine): # extend state for new menus to match main (on mac)
    532             state = self.SeqRefine[0].IsEnabled()
    533         else:
    534             state = False
    535         item.Enable(state)
    536         self.SeqRefine.append(item) # save menu obj for use in self.EnableSeqRefineMenu
    537         #================================================================================
    538526#        if GSASIIpath.GetConfigValue('debug'): # allow exceptions for debugging
    539527#            item = parent.Append(help='', id=wx.ID_ANY, kind=wx.ITEM_NORMAL,
     
    562550        if cId:
    563551            controls = self.GPXtree.GetItemPyData(cId)
    564             return controls.get('Seq Data',[])
     552            seqSetting = controls.get('Seq Data',[])
     553            if seqSetting:
     554                for item in self.Refine:
     555                    item.SetText('Se&quential refine')
     556            else:
     557                for item in self.Refine:
     558                    item.SetText('&Refine')
     559            return seqSetting
    565560        else:
     561            for item in self.Refine:
     562                item.SetText('&Refine')
    566563            return None
    567564       
    568     def EnableSeqRefineMenu(self):
    569         '''Enable or disable the sequential refinement menu items based on the
    570         contents of the Controls 'Seq Data' item (if present)
    571         '''
    572         if self.testSeqRefineMode():
    573             for i in self.SeqRefine: i.Enable(True)
    574         else:
    575             for i in self.SeqRefine: i.Enable(False)
    576 
    577565    def PreviewFile(self,filename):
    578566        'confirm we have the right file'
     
    15521540        # check for phases connected to histograms
    15531541        sub = GetGPXtreeItemId(self,self.root,'Phases')
    1554         if not sub: return
    1555         item, cookie = self.GPXtree.GetFirstChild(sub)
    1556         while item: # loop over phases
    1557             data = self.GPXtree.GetItemPyData(item)
    1558             item, cookie = self.GPXtree.GetNextChild(sub, cookie)
    1559             UseList = data['Histograms']
    1560             if UseList: haveData = True
    1561         if haveData:
    1562             self.dataWindow.DataMenu.Enable(G2G.wxID_DATADELETE,True)
    1563             for item in self.Refine: item.Enable(True)
     1542        if sub:
     1543            item, cookie = self.GPXtree.GetFirstChild(sub)
     1544            while item: # loop over phases
     1545                data = self.GPXtree.GetItemPyData(item)
     1546                item, cookie = self.GPXtree.GetNextChild(sub, cookie)
     1547                UseList = data['Histograms']
     1548                if UseList: haveData = True
     1549            if haveData:
     1550                self.dataWindow.DataMenu.Enable(G2G.wxID_DATADELETE,True)
     1551                for item in self.Refine: item.Enable(True)
    15641552        else:
    15651553            self.dataWindow.DataMenu.Enable(G2G.wxID_DATADELETE,False)
     
    25872575        self.MakePDF = []
    25882576        self.Refine = []
    2589         self.SeqRefine = [] # pointer(s) to Sequential Refinement menu objects
    25902577        #self.ExportPattern = []
    25912578        self.ExportPeakList = []
     
    36833670                if data:
    36843671                    for item in self.Refine: item.Enable(True)
    3685                     self.EnableSeqRefineMenu()
    36863672            item, cookie = self.GPXtree.GetNextChild(self.root, cookie)
    36873673        if phaseId: # show all phases
     
    37173703                if self.G2plotNB.plotList:
    37183704                    self.G2plotNB.clear()
     3705                self.SetTitleByGPX()
     3706                self.EnableRefineCommand()
    37193707        finally:
    37203708            dlg.Destroy()
     
    37353723        '''Set the title for the two window frames
    37363724        '''
     3725        projName = os.path.split(self.GSASprojectfile)[1]
     3726        if not projName: projName = "<unnamed project>"
    37373727        if self.testSeqRefineMode():
    37383728            s = u' (sequential refinement)'
    37393729        else:
    37403730            s = u''
    3741         self.SetTitle("GSAS-II project: "+os.path.split(self.GSASprojectfile)[1]+s)
    3742         self.plotFrame.SetTitle("GSAS-II plots: "+os.path.split(self.GSASprojectfile)[1])
     3731        self.SetTitle("GSAS-II project: "+projName + s)
     3732        self.plotFrame.SetTitle("GSAS-II plots: "+projName)
    37433733
    37443734    def OnFileSaveas(self, event):
     
    55285518                    names.append(choices[sel])
    55295519                data['Seq Data'] = names               
    5530                 G2frame.EnableSeqRefineMenu()
    55315520            dlg.Destroy()
    55325521            G2frame.SetTitleByGPX()
     
    76317620                G2frame.GPXtree.SetItemPyData(item,data)                             
    76327621            for i in G2frame.Refine: i.Enable(True)
    7633             G2frame.EnableSeqRefineMenu()
    76347622            UpdateControls(G2frame,data)
    76357623        elif G2frame.GPXtree.GetItemText(item).startswith('Sequential '):
Note: See TracChangeset for help on using the changeset viewer.