@@ -3194,10 +3194,14 @@ def __init__(self, parent):
31943194 print (traceback .format_exc ())
31953195 elif any ('SPYDER' in name for name in os .environ ):
31963196 self .OnFileReopen (None )
3197- # register the event logger
3197+ # register event logging
31983198 self .event_logger = []
3199- self .event_logger .append (G2EventLogger ())
3200- self .event_logger [- 1 ].logFrame (self )
3199+ #self.event_logger.append(G2EventLogger())
3200+ #self.event_logger[-1].logFrame(self)
3201+ print ('Queing doPlayBack' )
3202+ wx .CallAfter (self .doPlayBack )
3203+ # wx.CallLater(2000,self.doPlayBack)
3204+ # self.doPlayBack()
32013205
32023206 def GetTreeItemsList (self ,item ):
32033207 ''' returns a list of all GSAS-II tree items
@@ -3235,7 +3239,7 @@ def OnDataTreeSelChanged(self, event):
32353239 pltNum = self .G2plotNB .nb .GetSelection ()
32363240 if pltNum >= 0 : #to avoid the startup with no plot!
32373241 self .G2plotNB .nb .GetPage (pltNum )
3238- item = event .GetItem ()
3242+ item = event .GetItem () # this is the DataTree object
32393243 wx .CallAfter (SelectDataTreeItem ,self ,item ,self .oldFocus )
32403244 #if self.oldFocus: # now done via last parameter on SelectDataTreeItem
32413245 # wx.CallAfter(self.oldFocus.SetFocus)
@@ -6282,6 +6286,40 @@ def DoSequentialProjExport(self,event):
62826286 Controls = self .GPXtree .GetItemPyData (GetGPXtreeItemId (self ,self .root , 'Controls' ))
62836287 G2IO .ExportSequentialFullCIF (self ,data ,Controls )
62846288
6289+ def doPlayBack (self ):
6290+ '''Playback logging commands (eventually)
6291+ '''
6292+ # use with /Users/toby/Scratch/logging/Aminoffite__R100055-9__Powder__DIF_File__10335.gpx
6293+ cmdlist = [
6294+ ('Tree_selection:' ,['Controls' ]),
6295+ ('Tree_selection:' ,['Aminoffite' , 'Phases' ]),
6296+ ('Tree_selection:' ,['Controls' ]),
6297+ ('Tree_selection:' ,['Aminoffite_shifted' , 'Phases' ]),
6298+ ]
6299+
6300+ wx .GetApp ().Yield ()
6301+ print ('entering doPlayBack' )
6302+ for cmd in cmdlist :
6303+ if 'Tree_selection' in cmd [0 ]:
6304+ print ('\n *** selecting tree item' ,reversed (cmd [1 ]))
6305+ Id = GetGPXtreeItemId (self ,self .root , cmd [1 ][- 1 ])
6306+ if Id == 0 :
6307+ print ('Tree item not found' ,cmd [1 ][- 1 ])
6308+ return
6309+ if len (cmd [1 ]) == 2 :
6310+ Id = GetGPXtreeItemId (self ,Id , cmd [1 ][0 ])
6311+ if Id == 0 :
6312+ print ('Tree item not found' ,cmd [1 ][0 ])
6313+ return
6314+ print ('selecting' ,Id )
6315+ self .GPXtree .SelectItem (Id )
6316+ print ('before wait' )
6317+ for i in range (50 ):
6318+ wx .GetApp ().Yield ()
6319+ time .sleep (0.1 )
6320+ print ('after wait' )
6321+ print ('leaving doPlayBack' )
6322+
62856323#### Data window side of main GUI; menu definitions here #########################
62866324class G2DataWindow (wx .ScrolledWindow ): #wxscroll.ScrolledPanel):
62876325 '''Create the GSAS-II data window as well as sets up the menus for each
0 commit comments