Beispiel #1
0
        private void PaintErrorInvalidLayerType(Graphics g, object obj)
        {
            string errorMsg = "FloatingScale:Error: Invalid layer type";
            var    font     = GdiFontManager.ToGdi(GdiFontManager.GetFontXGenericSansSerif(10, FontXStyle.Regular));
            var    size     = g.MeasureString(errorMsg, font);

            if (obj is HostLayer)
            {
                var destSizeX = 0.2 * ((HostLayer)obj).Size.X;
                var factor    = destSizeX / size.Width;
                font = GdiFontManager.ToGdi(GdiFontManager.GetFontXGenericSansSerif(font.Size * factor, FontXStyle.Regular));
            }

            g.DrawString(errorMsg, font, Brushes.Red, (PointF)Position);
            size = g.MeasureString(errorMsg, font);

            _cachedPath = new GraphicsPath();
            _cachedPath.AddRectangle(new RectangleF((PointF)Position, size));

            ((ItemLocationDirectAutoSize)_location).SetSizeInAutoSizeMode(size);
        }