コード例 #1
0
        public override void paint(int cx, int cy, global::alphatab.platform.ICanvas canvas)
        {
            unchecked
            {
                global::alphatab.rendering.TabBarRenderer tabBarRenderer = ((global::alphatab.rendering.TabBarRenderer)(this.renderer));
                global::alphatab.model.Track track = this.renderer.stave.staveGroup.layout.renderer.track;
                global::alphatab.rendering.RenderingResources res = this.renderer.stave.staveGroup.layout.renderer.renderingResources;
                double startY     = ((cy + this.y) + ((10 * this.renderer.stave.staveGroup.layout.renderer.settings.scale) * 0.6));
                int    endY       = ((cy + this.y) + tabBarRenderer.getTabY(track.tuning.length, new global::haxe.lang.Null <int>(-2, true)));
                double fontScale  = ((double)(1));
                double correction = ((double)(0));
                {
                    int _g = track.tuning.length;
                    switch (_g)
                    {
                    case 4:
                    {
                        fontScale = 0.6;
                        break;
                    }


                    case 5:
                    {
                        fontScale = 0.8;
                        break;
                    }


                    case 6:
                    {
                        fontScale  = 1.1;
                        correction = ((double)(1));
                        break;
                    }


                    case 7:
                    {
                        fontScale = 1.15;
                        break;
                    }


                    case 8:
                    {
                        fontScale = 1.35;
                        break;
                    }
                    }
                }

                global::alphatab.platform.model.Font font = res.tabClefFont.clone();
                font.setSize((font.getSize() * fontScale));
                canvas.setColor(res.mainGlyphColor);
                canvas.setFont(font);
                canvas.setTextAlign(global::alphatab.platform.model.TextAlign.Center);
                canvas.fillText("T", ((double)(((cx + this.x) + (this.width / 2)))), startY);
                canvas.fillText("A", ((double)(((cx + this.x) + (this.width / 2)))), ((startY + font.getSize()) - ((int)((correction * this.renderer.stave.staveGroup.layout.renderer.settings.scale)))));
                canvas.fillText("B", ((double)(((cx + this.x) + (this.width / 2)))), (startY + (((font.getSize() - ((int)((correction * this.renderer.stave.staveGroup.layout.renderer.settings.scale))))) * 2)));
            }
        }