public override void doLayout() { unchecked { int w = 0; { int _g = 0; global::haxe.root.Array <object> _g1 = this._notes; while ((_g < _g1.length)) { global::alphatab.rendering.glyphs.NoteNumberGlyph g = ((global::alphatab.rendering.glyphs.NoteNumberGlyph)(_g1[_g])); ++_g; g.renderer = this.renderer; g.doLayout(); if ((g.width > w)) { w = g.width; } } } global::alphatab.rendering.TabBarRenderer tabRenderer = ((global::alphatab.rendering.TabBarRenderer)(this.renderer)); double tabHeight = this.renderer.stave.staveGroup.layout.renderer.renderingResources.tablatureFont.getSize(); int effectY = default(int); { double x = (this.getNoteY(this._minNote) + (tabHeight / 2)); effectY = ((int)(x)); } int effectSpacing = ((int)((7 * this.renderer.stave.staveGroup.layout.renderer.settings.scale))); { object __temp_iterator449 = this.beatEffects.iterator(); while (((bool)(global::haxe.lang.Runtime.callField(__temp_iterator449, "hasNext", 407283053, default(global::haxe.root.Array))))) { global::alphatab.rendering.Glyph g1 = ((global::alphatab.rendering.Glyph)(global::haxe.lang.Runtime.callField(__temp_iterator449, "next", 1224901875, default(global::haxe.root.Array)))); g1.y = effectY; g1.x = (this.width / 2); g1.renderer = this.renderer; effectY += effectSpacing; g1.doLayout(); } } this.width = w; } }