| using System; |
| using System.Collections.Generic; |
| using System.Linq; |
| using System.Text; |
| using System.Drawing; |
| using System.Xml; |
| |
| namespace OfficeOpenXml.Style.Dxf |
| { |
| public class ExcelDxfFill : DxfStyleBase<ExcelDxfFill> |
| { |
| public ExcelDxfFill(ExcelStyles styles) |
| : base(styles) |
| { |
| PatternColor = new ExcelDxfColor(styles); |
| BackgroundColor = new ExcelDxfColor(styles); |
| } |
| public ExcelFillStyle? PatternType { get; set; } |
| /// <summary> |
| /// The color of the pattern |
| /// </summary> |
| public ExcelDxfColor PatternColor { get; internal set; } |
| /// <summary> |
| /// The background color |
| /// </summary> |
| public ExcelDxfColor BackgroundColor { get; internal set; } |
| |
| protected internal override string Id |
| { |
| get |
| { |
| return GetAsString(PatternType) + "|" + (PatternColor == null ? "" : PatternColor.Id) + "|" + (BackgroundColor == null ? "" : BackgroundColor.Id); |
| } |
| } |
| protected internal override void CreateNodes(XmlHelper helper, string path) |
| { |
| helper.CreateNode(path); |
| SetValueEnum(helper, path + "/d:patternFill/@patternType", PatternType); |
| SetValueColor(helper, path + "/d:patternFill/d:fgColor", PatternColor); |
| SetValueColor(helper, path + "/d:patternFill/d:bgColor", BackgroundColor); |
| } |
| |
| protected internal override bool HasValue |
| { |
| get |
| { |
| return PatternType != null || |
| PatternColor.HasValue || |
| BackgroundColor.HasValue; |
| } |
| } |
| protected internal override ExcelDxfFill Clone() |
| { |
| return new ExcelDxfFill(_styles) {PatternType=PatternType, PatternColor=PatternColor.Clone(), BackgroundColor=BackgroundColor.Clone()}; |
| } |
| } |
| } |