Example #1
0
        internal HorizontalBorder ToHorizontalBorder()
        {
            HorizontalBorder border = new HorizontalBorder();

            if (HasColor)
            {
                border.Color = this.clrReal.ToSpreadsheetColor();
            }
            if (HasBorderStyle)
            {
                border.Style = this.BorderStyle;
            }

            return(border);
        }
Example #2
0
        public virtual char GetBorderSymbol(HorizontalBorder horizontalBorder, VerticalBorder verticalBorder)
        {
            if (horizontalBorder == HorizontalBorder.Left && verticalBorder == VerticalBorder.Top)
            {
                return(TopLeftCorner);
            }

            if (horizontalBorder == HorizontalBorder.Left && verticalBorder == VerticalBorder.Center)
            {
                return(LeftRowSeperator);
            }

            if (horizontalBorder == HorizontalBorder.Left && verticalBorder == VerticalBorder.Bottom)
            {
                return(BottomLeftCorner);
            }

            if (horizontalBorder == HorizontalBorder.Center && verticalBorder == VerticalBorder.Top)
            {
                return(TopColumnSeperator);
            }

            if (horizontalBorder == HorizontalBorder.Center && verticalBorder == VerticalBorder.Center)
            {
                return(TableFieldCorner);
            }

            if (horizontalBorder == HorizontalBorder.Center && verticalBorder == VerticalBorder.Bottom)
            {
                return(BottomColumnSeperator);
            }

            if (horizontalBorder == HorizontalBorder.Right && verticalBorder == VerticalBorder.Top)
            {
                return(TopRightCorner);
            }

            if (horizontalBorder == HorizontalBorder.Right && verticalBorder == VerticalBorder.Center)
            {
                return(RightRowSeperator);
            }

            return(BottomRightCorner);
        }
Example #3
0
        internal void FromBorderPropertiesType(HorizontalBorder border)
        {
            if (border.Color != null)
            {
                this.clrReal = new SLColor(this.listThemeColors, this.listIndexedColors);
                this.clrReal.FromSpreadsheetColor(border.Color);
                HasColor = !this.clrReal.IsEmpty();
            }
            else
            {
                RemoveColor();
            }

            if (border.Style != null)
            {
                this.BorderStyle = border.Style.Value;
            }
            else
            {
                RemoveBorderStyle();
            }
        }
        /// <summary>
        ///     Form a DocumentFormat.OpenXml.Spreadsheet.Border class from SLBorder.
        /// </summary>
        /// <returns>A DocumentFormat.OpenXml.Spreadsheet.Border with the properties of this SLBorder class.</returns>
        public Border ToBorder()
        {
            Sync();

            var border = new Border();

            // by "default" always have left, right, top, bottom and diagonal borders, even if empty?
            border.LeftBorder     = LeftBorder.ToLeftBorder();
            border.RightBorder    = RightBorder.ToRightBorder();
            border.TopBorder      = TopBorder.ToTopBorder();
            border.BottomBorder   = BottomBorder.ToBottomBorder();
            border.DiagonalBorder = DiagonalBorder.ToDiagonalBorder();
            if (HasVerticalBorder)
            {
                border.VerticalBorder = VerticalBorder.ToVerticalBorder();
            }
            if (HasHorizontalBorder)
            {
                border.HorizontalBorder = HorizontalBorder.ToHorizontalBorder();
            }
            if (DiagonalUp != null)
            {
                border.DiagonalUp = DiagonalUp.Value;
            }
            if (DiagonalDown != null)
            {
                border.DiagonalDown = DiagonalDown.Value;
            }
            // default is true. So set property only if false
            // This reduces tag attributes
            if ((Outline != null) && !Outline.Value)
            {
                border.Outline = false;
            }

            return(border);
        }
Example #5
0
        internal HorizontalBorder ToHorizontalBorder()
        {
            HorizontalBorder border = new HorizontalBorder();
            if (HasColor) border.Color = this.clrReal.ToSpreadsheetColor();
            if (HasBorderStyle) border.Style = this.BorderStyle;

            return border;
        }
Example #6
0
        internal void FromBorderPropertiesType(HorizontalBorder border)
        {
            if (border.Color != null)
            {
                this.clrReal = new SLColor(this.listThemeColors, this.listIndexedColors);
                this.clrReal.FromSpreadsheetColor(border.Color);
                HasColor = !this.clrReal.IsEmpty();
            }
            else
            {
                RemoveColor();
            }

            if (border.Style != null) this.BorderStyle = border.Style.Value;
            else RemoveBorderStyle();
        }
 /// <summary>
 ///     Set the horizontal border with a border style and a theme color, modifying the theme color with a tint value.
 /// </summary>
 /// <param name="BorderStyle">The border style. Default is none.</param>
 /// <param name="BorderColor">The theme color to be used.</param>
 /// <param name="Tint">
 ///     The tint applied to the theme color, ranging from -1.0 to 1.0. Negative tints darken the theme color
 ///     and positive tints lighten the theme color.
 /// </param>
 public void SetHorizontalBorder(BorderStyleValues BorderStyle, SLThemeColorIndexValues BorderColor, double Tint)
 {
     HorizontalBorder.BorderStyle = BorderStyle;
     HorizontalBorder.SetBorderThemeColor(BorderColor, Tint);
 }