Example #1
0
        } // LineHeight

        /// <summary>
        /// Find maximum width from items.
        /// </summary>
        private int LineWidth()
        {
            int maximumWidth = 0;
            int maximumRightSideWidth = 0;
            SkinFont font = SkinInformation.Layers["Control"].Text.Font;
            if (Items.Count > 0)
            {
                foreach (MenuItem item in Items)
                {
                    // Text maximum.
                    int itemWidth = (int)font.Font.MeasureString(item.Text).X + 16;
                    if (itemWidth > maximumWidth) 
                        maximumWidth = itemWidth;
                    // Right side text maximum.
                    int itemRightSideWidth;
                    if (string.IsNullOrEmpty(item.RightSideText))
                        itemRightSideWidth = 0;
                    else
                        itemRightSideWidth = (int)font.Font.MeasureString(item.RightSideText).X + 16;
                    if (itemRightSideWidth > maximumRightSideWidth) 
                        maximumRightSideWidth = itemRightSideWidth;
                }
            }
            maximumWidth += maximumRightSideWidth + 4 + LineHeight();
            return maximumWidth;
        } // LineWidth
Example #2
0
 public SkinFont(SkinFont source) : base(source)
 {
     if (source != null)
     {
         Font     = source.Font;
         Filename = source.Filename;
     }
 } // SkinFont
Example #3
0
        } // SkinText

        public SkinText(SkinText source) : base(source)
        {
            if (source != null)
            {
                Font      = new SkinFont(source.Font);
                OffsetX   = source.OffsetX;
                OffsetY   = source.OffsetY;
                Alignment = source.Alignment;
                Colors    = source.Colors;
            }
        } // SkinText
Example #4
0
        } // LoadLayerAttribute

        #endregion

        #endregion

        #region Load Fonts

        /// <summary>
        /// Load fonts information.
        /// </summary>
        private static void LoadFontsDescription()
        {
            if (skinDescription.Resource.Element("Skin").Element("Fonts") == null)
            {
                return;
            }

            foreach (var font in skinDescription.Resource.Element("Skin").Element("Fonts").Elements())
            {
                SkinFont skinFont = new SkinFont
                {
                    Name     = ReadAttribute(font, "Name", null, true),
                    Filename = ReadAttribute(font, "Asset", null, true)
                };
                Fonts.Add(skinFont);
            }
        } // LoadFonts