예제 #1
0
        public override void PaintKeyTips(KeyTipsRendererEventArgs e)
        {
            Rectangle r = e.Bounds;
            r.Inflate(1, 1);

            Color textColor = ColorTable.KeyTips.KeyTipText;
            Color backColor = ColorTable.KeyTips.KeyTipBackground;

            if (e.ReferenceObject is BaseItem && !((BaseItem)e.ReferenceObject).Enabled)
            {
                int alpha = 128;
                backColor = Color.FromArgb(alpha, backColor);
                textColor = Color.FromArgb(alpha, textColor);
            }

            Graphics g = e.Graphics;
            string keyTip = e.KeyTip;
            Font font = e.Font;

            using (SolidBrush brush = new SolidBrush(backColor))
                DisplayHelp.FillRoundedRectangle(g, brush, r, 1);
            using (Pen pen = new Pen(textColor, 1))
                DisplayHelp.DrawRoundedRectangle(g, pen, r, 1);

            //DisplayHelp.FillRectangle(g, r, backColor);
            //using (Pen pen = new Pen(textColor, 1))
            //    DisplayHelp.DrawRoundedRectangle(g, pen, r, 2);
            TextDrawing.DrawString(g, keyTip, font, textColor, r, eTextFormat.HorizontalCenter | eTextFormat.VerticalCenter);
        }
예제 #2
0
        /// <summary>
        /// Draws KeyTip for an object. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you
        /// do not want default rendering to occur do not call the base implementation. You can call OnRenderKeyTips method so events can occur.
        /// </summary>
        /// <param name="e">Provides context information.</param>
        public override void DrawKeyTips(KeyTipsRendererEventArgs e)
        {
            KeyTipsPainter painter = PainterFactory.CreateKeyTipsPainter();
            if (painter is IOffice2007Painter)
                ((IOffice2007Painter)painter).ColorTable = m_ColorTable;

            painter.PaintKeyTips(e);

            base.DrawKeyTips(e);
        }
예제 #3
0
 /// <summary>
 /// Draws KeyTip for an object. If you need to provide custom rendering this is the method that you should override in your custom rendered. If you
 /// do not want default rendering to occur do not call the base implementation. You can call OnRenderKeyTips method so events can occur.
 /// </summary>
 /// <param name="e">Provides context information.</param>
 public virtual void DrawKeyTips(KeyTipsRendererEventArgs e)
 {
     OnRenderKeyTips(e);
 }
예제 #4
0
        protected override void PaintKeyTips(Graphics g)
        {
            if (!this.ShowKeyTips)
                return;

            KeyTipsRendererEventArgs e = new KeyTipsRendererEventArgs(g, Rectangle.Empty, "", GetKeyTipFont(), null);

            DevComponents.DotNetBar.Rendering.BaseRenderer renderer = GetRenderer();
            PaintContainerKeyTips(_StripContainer.RibbonStripContainer, renderer, e);
            if (_CaptionVisible)
                PaintContainerKeyTips(_StripContainer.CaptionContainer, renderer, e);
        }
예제 #5
0
 /// <summary>
 /// Raises RenderKeyTips event.
 /// </summary>
 /// <param name="e">Provides context information.</param>
 protected virtual void OnRenderKeyTips(KeyTipsRendererEventArgs e)
 {
     if (RenderKeyTips != null)
         RenderKeyTips(this, e);
 }