Getting the glyph and its font
- 
					
					
					
					
 Hi, 
 In a class derived from BaseEventTool, I useg = self.getGlyph() f = g.getParent()in order to obtain the font containing the glyph g. 
 However, when I have two opened fonts F1 and F2 and two GlyphWindows opened (one from each font : g1 from F1 and g2 from F2), and when I go from one glyph window to the other, the following code :print g.name, g.getParent.fileNamegives me : g1 F2 or g2 F1 
 and after some more clicking, I finally get correct values (g1 F1 or g2 F2)There seem to be only partially updated information when switching windows. 
 Regards,
 Samuel
 
- 
					
					
					
					
 Thank you for fixing this.! 
 I'll use your eventObserver example to get a better understanding of when each event is triggered.
 Regards,
 Samuel
 
- 
					
					
					
					
 Hi the mixed parents will be fixed in the next update, thanks for reporting one thing: a <code>tool.getGlyph()</code> method will always return a glyph from a glyph view, if you select a font window, it will send you a <code>currentGlyphChanged</code> notification, but the glyph will not actually change when using the <code>tool.getGlyph()</code>. To get the global current glyph use <code>CurrentGlyph()</code> the other weirdness: see https://github.com/typemytype/RoboFontExamples/blob/master/observers/eventObserver.py a tool can become active separately from a <code>currentGlyphChanged</code> or <code>viewDidChangeGlyph</code> 
 
- 
					
					
					
					
 [ With Version 1.6 (built 1410152315) ] 
 Using your example TestTool :- Open two fonts F1 and F2
- Open glyph g1 from font F1
 (now there are three windows opened, plus the output window)
- Bring the window for the font F2 to the front
- click on the glyphs grid, on a glyph g2 (with a name different from g1)
 Now you should observe "g1 <F2>" in the output window
 [Another weirdness: the callbacks "viewDidChangeGlyph" and "currentGlyphChanged" are called before "becomeActive"] 
 Best regards,
 Samuel
 
- 
					
					
					
					
 hi could you make an small example? I cannot reproduce this issue, with a quick test... thanks <pre> 
 from mojo.events import BaseEventTool, installToolclass TestTool(BaseEventTool): def currentGlyphChanged(self): g = self.getGlyph() f = g.getParent() print g.name, finstallTool(TestTool()) 
 </pre>