Bloom.Workspace.TabStripRenderer.OnRenderItemImage C# (CSharp) Method

OnRenderItemImage() protected method

protected OnRenderItemImage ( System.Windows.Forms.ToolStripItemImageRenderEventArgs e ) : void
e System.Windows.Forms.ToolStripItemImageRenderEventArgs
return void
        protected override void OnRenderItemImage(ToolStripItemImageRenderEventArgs e)
        {
            TabStripButton btn = e.Item as TabStripButton;

            var rect = e.ImageRectangle;

            if (btn != null)
            {
                // adjust the image position up for Linux
                if (SIL.PlatformUtilities.Platform.IsLinux)
                {
                    if (e.ToolStrip.Orientation == Orientation.Horizontal)
                        rect.Offset(0, -4);
                }
                else
                {
                    var delta = ((Mirrored) ? -1 : 1) * ((btn.Checked) ? 1 : selOffset);
                    if (e.ToolStrip.Orientation == Orientation.Horizontal)
                        rect.Offset((Mirrored) ? 2 : 1, delta + ((Mirrored) ? 1 : 0));
                    else
                        rect.Offset(delta + 2, 0);
                }
            }

            ToolStripItemImageRenderEventArgs x =
                new ToolStripItemImageRenderEventArgs(e.Graphics, e.Item, e.Image, rect);

            if (_currentRenderer != null)
                _currentRenderer.DrawItemImage(x);
            else
                base.OnRenderItemImage(x);
        }