Changeset 2906 for branch/2frame/GSASIIdataGUI.py
- Timestamp:
- Jul 4, 2017 2:14:54 PM (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branch/2frame/GSASIIdataGUI.py
r2905 r2906 158 158 Define_wxId('wxID_MCRON', 'wxID_MCRLIST', 'wxID_MCRSAVE', 'wxID_MCRPLAY',) 159 159 160 # these data definitions probably should be moved 160 # these data definitions probably should be moved -- to lattice? 161 161 commonTrans = {'abc':np.eye(3),'a-cb':np.array([[1.,0.,0.],[0.,0.,-1.],[0.,1.,0.]]), 162 162 'ba-c':np.array([[0.,1.,0.],[1.,0.,0.],[0.,0.,-1.]]),'-cba':np.array([[0.,0.,-1.],[0.,1.,0.],[1.,0.,0.]]), … … 2945 2945 # 2946 2946 self.GSASIIMenu = wx.MenuBar() 2947 # create a list of all dataframemenus (appended in PrefillDataMenu)2947 # create a list of all menus (appended in PrefillDataMenu) 2948 2948 self.dataMenuBars = [self.GSASIIMenu] 2949 2949 self.MacroStatusList = [] … … 2961 2961 #self.mainPanel.SplitVertically(self.treePanel, self.dataPanel, 200) 2962 2962 2963 self.dataWindow = DataWindow(self.mainPanel)2963 self.dataWindow = G2DataWindow(self.mainPanel) 2964 2964 #self.dataWindow = wxscroll.ScrolledPanel(self.mainPanel,style=wx.BORDER_SUNKEN) 2965 dataSizer = wx.BoxSizer(wx.VERTICAL) 2966 self.dataWindow.SetSizer(dataSizer) 2965 2967 self.mainPanel.SplitVertically(self.treePanel, self.dataWindow, 200) 2966 2968 … … 2986 2988 self.OnGPXtreeEndDrag, id=wxID_PATTERNTREE) 2987 2989 self.root = self.GPXtree.root 2988 2989 # def FillWindow(panel,sizer,size=1.): 2990 # sizer.Add(wx.StaticText(panel, wx.ID_ANY, "Panel Two: long line "+int(size*40)*'*', (5,5))) 2991 # for i in range(int(size*15)): sizer.Add(wx.StaticText(panel, wx.ID_ANY, "Line "+str(2+i), (5,5))) 2992 2993 # dataSizer = wx.BoxSizer(wx.VERTICAL) 2994 # FillWindow(self.dataWindow,dataSizer) 2995 # self.dataWindow.SetSizer(dataSizer) 2996 #self.dataWindow = DataWindow(self.dataPanel) 2990 2991 # debug code to fill initial window and check scroll bar works 2992 #def FillWindow(panel,size=1.): 2993 # sizer = panel.GetSizer() 2994 # sizer.Add(wx.StaticText(panel, wx.ID_ANY, "Panel Two: long line "+int(size*40)*'*', (5,5))) 2995 # for i in range(int(size*15)): sizer.Add(wx.StaticText(panel, wx.ID_ANY, "Line "+str(2+i), (5,5))) 2996 # panel.Layout() 2997 # panel.SendSizeEvent() 2998 #FillWindow(self.dataWindow) 2999 3000 #self.dataWindow = G2DataWindow(self.dataPanel) 2997 3001 #self.dataWindow.SetSize(self.dataPanel.GetClientSize()) 2998 3002 #self.dataWindow.SetInitialSize() … … 3124 3128 3125 3129 def SetDataSize(self): 3126 self.dataWindow.Layout() 3127 self.dataWindow.SendSizeEvent() 3128 # print 'SetDataSize' 3129 # Size = self.GetSize() 3130 # self.SetSize(Size) 3131 # Size[1] += 1 #kluge to ensure scrollbar settings & window properly displayed 3132 # self.SetSize(Size) 3130 '''this routine is a placeholder until all G2frame.SetDataSize calls are replaced 3131 by G2frame.dataWindow.SetDataSize 3132 ''' 3133 self.dataWindow.SetDataSize() 3133 3134 3134 3135 def OnDataTreeSelChanged(self, event): … … 3705 3706 'Delete a phase from the tree. Called by Data/Delete Phase menu' 3706 3707 #Hmm, also need to delete this phase from Reflection Lists for each PWDR histogram 3707 if self.data Frame:3708 self.data Frame.Clear()3708 if self.dataWindow: 3709 self.dataWindow.ClearData() 3709 3710 TextList = [] 3710 3711 DelList = [] … … 3866 3867 self.EnablePlot = False 3867 3868 if self.GPXtree.GetChildrenCount(self.root,False): 3868 if self.data Frame:3869 self.data Frame.ClearData()3869 if self.dataWindow: 3870 self.dataWindow.ClearData() 3870 3871 dlg = wx.MessageDialog( 3871 3872 self, … … 4059 4060 if self.G2plotNB: 4060 4061 self.G2plotNB.Destroy() 4061 if self.dataFrame:4062 self.dataFrame.Destroy()4063 4062 if self.undofile: 4064 4063 os.remove(self.undofile) … … 4069 4068 if self.G2plotNB: 4070 4069 self.G2plotNB.Destroy() 4071 if self.dataFrame:4072 self.dataFrame.Destroy()4073 4070 self.Close() 4074 4071 … … 4740 4737 # Data window side of main GUI 4741 4738 ################################################################################ 4742 class DataWindow(wxscroll.ScrolledPanel):4739 class G2DataWindow(wxscroll.ScrolledPanel): 4743 4740 '''Create the data item window entries in menus used in 4744 4741 that window. The menu entries are created for all … … 4771 4768 ## wx.Window.Bind(self,eventtype,self.MenuBinding,*args,**kwargs) 4772 4769 ## return 4773 # self.Bind(self,eventtype,handler,*args,**kwargs) 4770 # self.Bind(self,eventtype,handler,*args,**kwargs) 4771 4772 def DestroyChildren(self): 4773 print 'Fix this: DestroyChildren called' 4774 G2obj.HowDidIgetHere() 4774 4775 4775 4776 def PrefillDataMenu(self,menu,empty=False): … … 5744 5745 5745 5746 def ClearData(self): 5746 # if self.GetSizer(): 5747 # self.GetSizer().Destroy() 5747 '''Initializes the contents of the dataWindow panel 5748 ''' 5748 5749 self.SetBackgroundColour(wx.WHITE) 5749 self.DestroyChildren() 5750 self.SetSize(self.GetParent().GetSize()) 5751 self.SetAutoLayout(True) 5752 self.SetupScrolling() 5750 Sizer = self.GetSizer() 5751 if Sizer: 5752 Sizer.Clear(True) 5753 else: 5754 print 'No sizer in dataWindow' 5755 if GSASIIpath.GetConfigValue('debug'): raise Exception 5756 #self.SetSize(self.GetParent().GetSize()) 5757 #self.SetAutoLayout(True) 5758 #self.SetupScrolling() 5759 5760 def SetDataSize(self): 5761 '''Sizes the contents of the dataWindow panel 5762 ''' 5763 self.SetBackgroundColour(wx.WHITE) 5764 Sizer = self.GetSizer() 5765 if Sizer: 5766 Sizer.Fit(self) 5767 else: 5768 print 'No sizer in dataWindow' 5769 if GSASIIpath.GetConfigValue('debug'): raise Exception 5770 self.Layout() 5771 self.SendSizeEvent() 5772 #self.SetSize(self.GetParent().GetSize()) 5773 #self.SetAutoLayout(True) 5774 #self.SetupScrolling() 5775 5753 5776 5754 5777 #TODO - remove … … 5922 5945 except ValueError: #data changed somehow - start fresh 5923 5946 sel = [] 5924 dlg = G2G.G2MultiChoiceDialog(G2frame .dataFrame, 'Sequential refinement',5947 dlg = G2G.G2MultiChoiceDialog(G2frame, 'Sequential refinement', 5925 5948 'Select dataset to include',choices) 5926 5949 dlg.SetSelections(sel) … … 6398 6421 choices = data['SeqPseudoVars'].keys() 6399 6422 selected = G2G.ItemSelector( 6400 choices,G2frame .dataFrame,6423 choices,G2frame, 6401 6424 multiple=True, 6402 6425 title='Select expressions to remove', … … 6415 6438 else: 6416 6439 selected = G2G.ItemSelector( 6417 choices,G2frame .dataFrame,6440 choices,G2frame, 6418 6441 multiple=False, 6419 6442 title='Select an expression to edit', … … 6635 6658 else: 6636 6659 val = False 6637 G2frame.data Frame.SequentialPfit.Enable(wxDELPARFIT,val)6638 G2frame.data Frame.SequentialPfit.Enable(wxEDITPARFIT,val)6639 G2frame.data Frame.SequentialPfit.Enable(wxDOPARFIT,val)6660 G2frame.dataWindow.SequentialPfit.Enable(wxDELPARFIT,val) 6661 G2frame.dataWindow.SequentialPfit.Enable(wxEDITPARFIT,val) 6662 G2frame.dataWindow.SequentialPfit.Enable(wxDOPARFIT,val) 6640 6663 6641 6664 def ParEqEval(Values,calcObjList,varyList): … … 6745 6768 txtlst = [obj.GetDepVar()+' = '+obj.expression for obj in data['SeqParFitEqList']] 6746 6769 selected = G2G.ItemSelector( 6747 txtlst,G2frame .dataFrame,6770 txtlst,G2frame, 6748 6771 multiple=True, 6749 6772 title='Select a parametric equation(s) to remove', … … 6761 6784 else: 6762 6785 selected = G2G.ItemSelector( 6763 txtlst,G2frame .dataFrame,6786 txtlst,G2frame, 6764 6787 multiple=False, 6765 6788 title='Select a parametric equation to edit', … … 6807 6830 else: 6808 6831 selected = G2G.ItemSelector( 6809 txtlst,G2frame .dataFrame,6832 txtlst,G2frame, 6810 6833 multiple=False, 6811 6834 title='Select a parametric equation to copy', … … 6852 6875 var = colLabels[col] 6853 6876 lbl = variableLabels.get(var,G2obj.fmtVarDescr(var)) 6854 dlg = G2G.SingleStringDialog(G2frame .dataFrame,'Set variable label',6877 dlg = G2G.SingleStringDialog(G2frame,'Set variable label', 6855 6878 'Set a new name for variable '+var,lbl,size=(400,-1)) 6856 6879 if dlg.Show(): … … 6861 6884 '''Event handler for all Sequential Export menu items 6862 6885 ''' 6863 vals = G2frame.data Frame.SeqExportLookup.get(event.GetId())6886 vals = G2frame.dataWindow.SeqExportLookup.get(event.GetId()) 6864 6887 if vals is None: 6865 6888 print('Error: Id not found. This should not happen!') … … 6868 6891 def onSelectSeqVars(event): 6869 6892 '''Select which variables will be shown in table''' 6870 dlg = G2G.G2MultiChoiceDialog(G2frame .dataFrame, 'Select columns to hide',6893 dlg = G2G.G2MultiChoiceDialog(G2frame, 'Select columns to hide', 6871 6894 'Hide columns',colLabels[1:]) 6872 6895 if dlg.ShowModal() == wx.ID_OK: … … 6965 6988 6966 6989 SetDataMenuBar(G2frame,G2frame.dataWindow.SequentialMenu) 6967 G2frame.data Frame.SetLabel(G2frame.GetLabel().split('||')[0]+' || '+'Sequential refinement results')6990 G2frame.dataWindow.SetLabel(G2frame.GetLabel().split('||')[0]+' || '+'Sequential refinement results') 6968 6991 G2frame.GetStatusBar().SetStatusText('') 6969 G2frame.data Frame.Bind(wx.EVT_MENU, OnRenameSelSeq, id=wxID_RENAMESEQSEL)6970 G2frame.data Frame.Bind(wx.EVT_MENU, OnSaveSelSeq, id=wxID_SAVESEQSEL)6971 G2frame.data Frame.Bind(wx.EVT_MENU, OnSaveSelSeqCSV, id=wxID_SAVESEQSELCSV)6972 G2frame.data Frame.Bind(wx.EVT_MENU, OnSaveSeqCSV, id=wxID_SAVESEQCSV)6973 G2frame.data Frame.Bind(wx.EVT_MENU, OnPlotSelSeq, id=wxID_PLOTSEQSEL)6974 G2frame.data Frame.Bind(wx.EVT_MENU, OnAveSelSeq, id=wxID_AVESEQSEL)6975 #G2frame.data Frame.Bind(wx.EVT_MENU, OnReOrgSelSeq, id=wxID_ORGSEQSEL)6976 G2frame.data Frame.Bind(wx.EVT_MENU, onSelectSeqVars, id=wxID_ORGSEQINC)6977 G2frame.data Frame.Bind(wx.EVT_MENU, AddNewPseudoVar, id=wxADDSEQVAR)6978 G2frame.data Frame.Bind(wx.EVT_MENU, AddNewDistPseudoVar, id=wxADDSEQDIST)6979 G2frame.data Frame.Bind(wx.EVT_MENU, AddNewAnglePseudoVar, id=wxADDSEQANGLE)6980 G2frame.data Frame.Bind(wx.EVT_MENU, DelPseudoVar, id=wxDELSEQVAR)6981 G2frame.data Frame.Bind(wx.EVT_MENU, EditPseudoVar, id=wxEDITSEQVAR)6982 G2frame.data Frame.Bind(wx.EVT_MENU, AddNewParFitEq, id=wxADDPARFIT)6983 G2frame.data Frame.Bind(wx.EVT_MENU, CopyParFitEq, id=wxCOPYPARFIT)6984 G2frame.data Frame.Bind(wx.EVT_MENU, DelParFitEq, id=wxDELPARFIT)6985 G2frame.data Frame.Bind(wx.EVT_MENU, EditParFitEq, id=wxEDITPARFIT)6986 G2frame.data Frame.Bind(wx.EVT_MENU, DoParEqFit, id=wxDOPARFIT)6987 6988 for id in G2frame.data Frame.SeqExportLookup:6989 G2frame.data Frame.Bind(wx.EVT_MENU, DoSequentialExport, id=id)6992 G2frame.dataWindow.Bind(wx.EVT_MENU, OnRenameSelSeq, id=wxID_RENAMESEQSEL) 6993 G2frame.dataWindow.Bind(wx.EVT_MENU, OnSaveSelSeq, id=wxID_SAVESEQSEL) 6994 G2frame.dataWindow.Bind(wx.EVT_MENU, OnSaveSelSeqCSV, id=wxID_SAVESEQSELCSV) 6995 G2frame.dataWindow.Bind(wx.EVT_MENU, OnSaveSeqCSV, id=wxID_SAVESEQCSV) 6996 G2frame.dataWindow.Bind(wx.EVT_MENU, OnPlotSelSeq, id=wxID_PLOTSEQSEL) 6997 G2frame.dataWindow.Bind(wx.EVT_MENU, OnAveSelSeq, id=wxID_AVESEQSEL) 6998 #G2frame.dataWindow.Bind(wx.EVT_MENU, OnReOrgSelSeq, id=wxID_ORGSEQSEL) 6999 G2frame.dataWindow.Bind(wx.EVT_MENU, onSelectSeqVars, id=wxID_ORGSEQINC) 7000 G2frame.dataWindow.Bind(wx.EVT_MENU, AddNewPseudoVar, id=wxADDSEQVAR) 7001 G2frame.dataWindow.Bind(wx.EVT_MENU, AddNewDistPseudoVar, id=wxADDSEQDIST) 7002 G2frame.dataWindow.Bind(wx.EVT_MENU, AddNewAnglePseudoVar, id=wxADDSEQANGLE) 7003 G2frame.dataWindow.Bind(wx.EVT_MENU, DelPseudoVar, id=wxDELSEQVAR) 7004 G2frame.dataWindow.Bind(wx.EVT_MENU, EditPseudoVar, id=wxEDITSEQVAR) 7005 G2frame.dataWindow.Bind(wx.EVT_MENU, AddNewParFitEq, id=wxADDPARFIT) 7006 G2frame.dataWindow.Bind(wx.EVT_MENU, CopyParFitEq, id=wxCOPYPARFIT) 7007 G2frame.dataWindow.Bind(wx.EVT_MENU, DelParFitEq, id=wxDELPARFIT) 7008 G2frame.dataWindow.Bind(wx.EVT_MENU, EditParFitEq, id=wxEDITPARFIT) 7009 G2frame.dataWindow.Bind(wx.EVT_MENU, DoParEqFit, id=wxDOPARFIT) 7010 7011 for id in G2frame.dataWindow.SeqExportLookup: 7012 G2frame.dataWindow.Bind(wx.EVT_MENU, DoSequentialExport, id=id) 6990 7013 6991 7014 EnablePseudoVarMenus() … … 7034 7057 print ' Warning: Total of %d data sets missing from sequential results'%(missing) 7035 7058 #if len(VaryListChanges) > 1: 7036 # G2frame.data Frame.SequentialFile.Enable(wxID_ORGSEQSEL,True)7059 # G2frame.dataWindow.SequentialFile.Enable(wxID_ORGSEQSEL,True) 7037 7060 #else: 7038 # G2frame.data Frame.SequentialFile.Enable(wxID_ORGSEQSEL,False)7061 # G2frame.dataWindow.SequentialFile.Enable(wxID_ORGSEQSEL,False) 7039 7062 #----------------------------------------------------------------------------------- 7040 7063 # build up the data table by columns ----------------------------------------------- … … 7306 7329 7307 7330 G2frame.dataWindow.ClearData() 7308 G2frame.data Frame.currentGrids = []7331 G2frame.dataWindow.currentGrids = [] 7309 7332 G2frame.dataDisplay = G2G.GSGrid(parent=G2frame.dataWindow) 7310 7333 G2frame.dataDisplay.SetSize(G2frame.dataWindow.GetSize()) … … 7708 7731 return 7709 7732 oldPage = None # will be set later if already on a Phase item 7710 if G2frame.dataFrame: 7711 7712 for grid in G2frame.dataFrame.currentGrids: # complete any open wx.Grid edits7713 7714 7715 7716 7717 7718 7719 7720 7721 if G2frame.dataFrame.GetLabel() == 'Comments': # save any recently entered comments7722 7723 7724 G2frame.dataDisplay.Clear()7725 7726 7727 7728 7729 elif G2frame.dataFrame.GetLabel() == 'Notebook': # save any recent notebook entries7730 7731 7732 G2frame.dataDisplay.Clear()7733 7734 7735 7736 7737 elif 'Phase Data for' in G2frame.dataFrame.GetLabel():7738 7739 7740 7733 7734 # save or finish processing of outstanding events 7735 for grid in G2frame.dataWindow.currentGrids: # complete any open wx.Grid edits 7736 #if GSASIIpath.GetConfigValue('debug'): print 'Testing grid edit in',grid 7737 try: 7738 if grid.IsCellEditControlEnabled(): # complete any grid edits in progress 7739 if GSASIIpath.GetConfigValue('debug'): print 'Completing grid edit in',grid 7740 grid.HideCellEditControl() 7741 grid.DisableCellEditControl() 7742 except: 7743 pass 7744 if G2frame.dataWindow.GetLabel() == 'Comments': # save any recently entered comments 7745 try: 7746 data = [G2frame.dataDisplay.GetValue()] 7747 G2frame.dataDisplay.ClearData() 7748 Id = GetGPXtreeItemId(G2frame,G2frame.root, 'Comments') 7749 if Id: G2frame.GPXtree.SetItemPyData(Id,data) 7750 except: #clumsy but avoids dead window problem when opening another project 7751 pass 7752 elif G2frame.dataWindow.GetLabel() == 'Notebook': # save any recent notebook entries 7753 try: 7754 data = [G2frame.dataDisplay.GetValue()] 7755 G2frame.dataDisplay.ClearData() 7756 Id = GetGPXtreeItemId(G2frame,G2frame.root, 'Notebook') 7757 if Id: G2frame.GPXtree.SetItemPyData(Id,data) 7758 except: #clumsy but avoids dead window problem when opening another project 7759 pass 7760 elif 'Phase Data for' in G2frame.dataWindow.GetLabel(): 7761 if G2frame.dataDisplay: 7762 oldPage = G2frame.dataDisplay.GetSelection() 7763 G2frame.SetLabel(G2frame.GetLabel().split('||')[0]+' || '+'') 7741 7764 7742 7765 SetDataMenuBar(G2frame) … … 7745 7768 parentID = G2frame.root 7746 7769 if item == G2frame.root: 7770 G2frame.dataWindow.ClearData() 7747 7771 G2frame.helpKey = "Data tree" 7748 wx.TextCtrl(parent=G2frame.dataFrame,size=G2frame.GetClientSize(), 7749 value='Select an item from the tree to see/edit parameters') 7772 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 ) 7776 G2frame.dataWindow.SetDataSize() 7750 7777 return 7751 7778 else: 7779 # what does this code do? Is it still needed? 7752 7780 try: #don't know why here when opening new project from inside phase data! 7753 7781 parentID = G2frame.GPXtree.GetItemParent(item) … … 7756 7784 prfx1 = G2frame.GPXtree.GetItemText(parentID).split()[0] 7757 7785 if prfx in ('IMG','PKS','PWDR','SASD','HKLF','PDF','refd',): 7758 G2frame.data Frame.helpKey = prfx7786 G2frame.dataWindow.helpKey = prfx 7759 7787 elif prfx1 in ('IMG','PKS','PWDR','SASD','HKLF','PDF','REFD',): 7760 7788 suffix = G2frame.GPXtree.GetItemText(item) 7761 7789 suffix1 = suffix.split()[0] 7762 7790 if '(Q)' in suffix1 or '(R)' in suffix1: suffix = suffix1 7763 G2frame.data Frame.helpKey = prfx1 + '_' + suffix7791 G2frame.dataWindow.helpKey = prfx1 + '_' + suffix 7764 7792 else: 7765 G2frame.data Frame.helpKey = G2frame.GPXtree.GetItemText(item) # save name of calling tree item for help7793 G2frame.dataWindow.helpKey = G2frame.GPXtree.GetItemText(item) # save name of calling tree item for help 7766 7794 except IndexError: 7767 7795 print 'bug: why here?' 7768 7796 return 7797 # clear out the old panel contents 7798 G2frame.dataWindow.ClearData() 7799 # process first-level entries in tree 7769 7800 if G2frame.GPXtree.GetItemParent(item) == G2frame.root: 7770 7801 G2frame.PatternId = 0 … … 7782 7813 UpdateControls(G2frame,data) 7783 7814 elif G2frame.GPXtree.GetItemText(item).startswith('Sequential '): 7784 G2frame.data Frame.helpKey = 'Sequential' # for now all sequential refinements are documented in one place7815 G2frame.dataWindow.helpKey = 'Sequential' # for now all sequential refinements are documented in one place 7785 7816 data = G2frame.GPXtree.GetItemPyData(item) 7786 7817 UpdateSeqResults(G2frame,data) … … 7848 7879 G2plt.PlotISFG(G2frame,data,plotType='G(R)') 7849 7880 elif G2frame.GPXtree.GetItemText(item) == 'Phases': 7850 wx.TextCtrl(parent=G2frame.dataFrame,size=G2frame.dataFrame.GetClientSize(), 7851 value='Select one phase to see its parameters') 7881 G2frame.dataWindow.GetSizer().Add( 7882 wx.TextCtrl(G2frame.dataWindow,size=G2frame.dataWindow.GetClientSize(), 7883 value='Select one phase to see its parameters') 7884 ) 7885 ############################################################################ 7886 # process second-level entries in tree 7852 7887 elif G2frame.GPXtree.GetItemText(item) == 'PDF Peaks': 7853 7888 G2frame.PatternId = G2frame.GPXtree.GetItemParent(item) … … 7859 7894 elif G2frame.GPXtree.GetItemText(item) == 'PDF Controls': 7860 7895 for i in G2frame.ExportPDF: i.Enable(True) # this should be done on .gpx load; is done on OnMakePDFs (GSASII.py) 7861 G2frame.data Frame.helpKey = G2frame.GPXtree.GetItemText(item) # special treatment to avoid PDF_PDF Controls7896 G2frame.dataWindow.helpKey = G2frame.GPXtree.GetItemText(item) # special treatment to avoid PDF_PDF Controls 7862 7897 G2frame.PatternId = G2frame.GPXtree.GetItemParent(item) 7863 7898 data = G2frame.GPXtree.GetItemPyData(item) … … 8010 8045 if G2frame.PickId: 8011 8046 G2frame.PickIdText = G2frame.GetTreeItemsList(G2frame.PickId) 8047 # window has been filled, now resize scroll bars 8048 G2frame.dataWindow.SetDataSize() 8049 8012 8050 G2frame.Raise() 8013 8051 if oldFocus: 8014 8052 oldFocus.GetTopLevelParent().Raise() 8015 8053 oldFocus.SetFocus() 8054 #debug code 8055 # print 'Got here!' 8056 # def FillWindow(panel,size=1.): 8057 # sizer = panel.GetSizer() 8058 # sizer.Add(wx.StaticText(panel, wx.ID_ANY, "Panel Two: long line "+int(size*40)*'*', (5,5))) 8059 # for i in range(int(size*15)): sizer.Add(wx.StaticText(panel, wx.ID_ANY, "Line "+str(2+i), (5,5))) 8060 # panel.Layout() 8061 # panel.SendSizeEvent() 8062 # G2frame.dataWindow.ClearData() 8063 # FillWindow(G2frame.dataWindow) 8016 8064 8017 8065 def SetDataMenuBar(G2frame,menu=None):
Note: See TracChangeset
for help on using the changeset viewer.