internal virtual void SetFillProperty() { if (_fillNode == null) { InitSpPr(eFillStyle.SolidFill); Style = eFillStyle.SolidFill; //This will create the _fillNode _solidFill = new ExcelDrawingSolidFill(NameSpaceManager, _fillTypeNode, "", SchemaNodeOrder); return; } _solidFill = null; _gradientFill = null; switch (_fillTypeNode.LocalName) { case "solidFill": _solidFill = new ExcelDrawingSolidFill(NameSpaceManager, _fillTypeNode, "", SchemaNodeOrder); break; case "gradFill": _gradientFill = new ExcelDrawingGradientFill(NameSpaceManager, _fillTypeNode, SchemaNodeOrder); break; default: if (this is ExcelDrawingFillBasic && _style != eFillStyle.NoFill) { throw new ArgumentException("Style", $"Style {Style} can not be applied to this object."); } break; } }
/// <summary> /// Loads the fill from xml /// </summary> internal protected virtual void LoadFill() { if (_fillTypeNode == null) { _fillTypeNode = _fillNode.SelectSingleNode("a:solidFill", NameSpaceManager); } if (_fillTypeNode == null) { _fillTypeNode = _fillNode.SelectSingleNode("a:gradFill", NameSpaceManager); } if (_fillTypeNode == null) { _fillTypeNode = _fillNode.SelectSingleNode("a:noFill", NameSpaceManager); } if (_fillTypeNode == null) { return; } switch (_fillTypeNode.LocalName) { case "solidFill": _style = eFillStyle.SolidFill; _solidFill = new ExcelDrawingSolidFill(NameSpaceManager, _fillTypeNode, "", SchemaNodeOrder); break; case "gradFill": _style = eFillStyle.GradientFill; _gradientFill = new ExcelDrawingGradientFill(NameSpaceManager, _fillTypeNode, SchemaNodeOrder); break; default: _style = eFillStyle.NoFill; break; } }
/// <summary> /// Disposes the object /// </summary> public void Dispose() { _fillNode = null; _solidFill = null; _gradientFill = null; }