Пример #1
0
 internal ExcelColor(ExcelStyles styles, OfficeOpenXml.XmlHelper.ChangedEventHandler ChangedEvent, int worksheetID, string address, eStyleClass cls, StyleBase parent) : 
     base(styles, ChangedEvent, worksheetID, address)
     
 {
     _parent = parent;
     _cls = cls;
 }
Пример #2
0
 internal ExcelNamedStyleXml(XmlNamespaceManager NameSpaceManager, XmlNode topNode, ExcelStyles styles)
     : base(NameSpaceManager, topNode)
 {
     StyleXfId = GetXmlNodeInt(idPath);
     Name = GetXmlNode(namePath);
     BuildInId = GetXmlNodeInt(buildInIdPath);
     _styles = styles;
     _style = new ExcelStyle(styles, styles.NamedStylePropertyChange, -1, Name, _styleXfId);
 }
Пример #3
0
 internal ExcelStyle(ExcelStyles styles, OfficeOpenXml.XmlHelper.ChangedEventHandler ChangedEvent, int PositionID, string Address, int xfsId)
     : base(styles, ChangedEvent, PositionID, Address)
 {
     Index = xfsId;
     ExcelXfs xfs = _styles.CellXfs[xfsId];
     Numberformat = new ExcelNumberFormat(styles, ChangedEvent, PositionID, Address, xfs.NumberFormatId);
     Font = new ExcelFont(styles, ChangedEvent, PositionID, Address, xfs.FontId);
     Fill = new ExcelFill(styles, ChangedEvent, PositionID, Address, xfs.FillId);
     Border = new Border(styles, ChangedEvent, PositionID, Address, xfs.BorderId);
 }
Пример #4
0
 internal ExcelXfs(XmlNamespaceManager nsm, XmlNode topNode, ExcelStyles styles)
     : base(nsm, topNode)
 {
     _styles = styles;
     _xfID = GetXmlNodeInt("@xfid");
     if (_xfID == 0) isBuildIn = true; //Normal taggen
     _numFmtId = GetXmlNodeInt("@numFmtId");
     _fontId = GetXmlNodeInt("@fontId");
     _fillId = GetXmlNodeInt("@fillId");
     _borderId = GetXmlNodeInt("@borderId");
     _readingOrder = GetXmlNode(readingOrderPath) == "1" ? true : false;
     _verticalAlignment = GetVerticalAlign(GetXmlNode(verticalAlignPath));
     _horizontalAlignment = GetHorizontalAlign(GetXmlNode(horizontalAlignPath));
     _wrapText = GetXmlNode(wrapTextPath) == "1" ? true : false;
     _textRotation = GetXmlNodeInt(textRotationPath);
     _hidden = GetXmlNodeBool(hiddenPath);
     _locked = GetXmlNodeBool(lockedPath,true);
 }
Пример #5
0
 internal ExcelStyle(ExcelStyles styles, Zephyr.Utils.EPPlus.XmlHelper.ChangedEventHandler ChangedEvent, int positionID, string Address, int xfsId) :
     base(styles, ChangedEvent, positionID, Address)
 {
     Index = xfsId;
     ExcelXfs xfs;
     if (positionID > -1)
     {
         xfs = _styles.CellXfs[xfsId];
     }
     else
     {
         xfs = _styles.CellStyleXfs[xfsId];
     }
     Styles = styles;
     PositionID = positionID;
     Numberformat = new ExcelNumberFormat(styles, ChangedEvent, PositionID, Address, xfs.NumberFormatId);
     Font = new ExcelFont(styles, ChangedEvent, PositionID, Address, xfs.FontId);
     Fill = new ExcelFill(styles, ChangedEvent, PositionID, Address, xfs.FillId);
     Border = new Border(styles, ChangedEvent, PositionID, Address, xfs.BorderId); 
 }
Пример #6
0
 internal ExcelXfs(XmlNamespaceManager nsm, XmlNode topNode, ExcelStyles styles)
     : base(nsm, topNode)
 {
     _styles = styles;
     _xfID = GetXmlNodeInt("@xfid");
     if (_xfID == 0) isBuildIn = true; //Normal taggen
     _numFmtId = GetXmlNodeInt("@numFmtId");
     _fontId = GetXmlNodeInt("@fontId");
     _fillId = GetXmlNodeInt("@fillId");
     _borderId = GetXmlNodeInt("@borderId");
     _readingOrder = GetXmlNode(readingOrderPath) == "1" ? true : false;
     _verticalAlignment = GetVerticalAlign(GetXmlNode(verticalAlignPath));
     _horizontalAlignment = GetHorizontalAlign(GetXmlNode(horizontalAlignPath));
     _wrapText = GetXmlNode(wrapTextPath) == "1" ? true : false;
     //ApplyFont = GetXmlNode("@applyFont") == "1" ? true : false;
     //ApplyFill = GetXmlNode("@applyFill") == "1" ? true : false;
     //ApplyBorder = GetXmlNode("@applyBorder") == "1" ? true : false;
     //ApplyNumberFormat = GetXmlNode("@applyNumberFormat") == "1" ? true : false;
     //ApplyFill = GetXmlNode("@applyFont") == "1" ? true : false;
     //ApplyProtection = GetXmlNode("@applyProtection") == "1" ? true : false;
     //ApplyAlignment = GetXmlNode("@applyAlitgnment") == "1" ? true : false;
 }
Пример #7
0
 internal ExcelDxfBorderItem(ExcelStyles styles) :
     base(styles)
 {
     Color = new ExcelDxfColor(styles);
 }
Пример #8
0
 internal ExcelDxfFontBase(ExcelStyles styles)
     : base(styles)
 {
     Color = new ExcelDxfColor(styles);
 }
Пример #9
0
 internal ExcelXfs(XmlNamespaceManager nameSpaceManager, ExcelStyles styles) : base(nameSpaceManager)
 {
     _styles   = styles;
     isBuildIn = false;
 }
Пример #10
0
 internal ExcelNumberFormat(ExcelStyles styles, OfficeOpenXml.XmlHelper.ChangedEventHandler ChangedEvent, int PositionID, string Address, int index) :
     base(styles, ChangedEvent, PositionID, Address)
 {
     Index = index;
 }
Пример #11
0
 internal DxfStyleBase(ExcelStyles styles)
 {
     _styles     = styles;
     AllowChange = false; //Don't touch this value in the styles.xml by default.
 }
Пример #12
0
 internal ExcelDxfNumberFormat(ExcelStyles styles) : base(styles)
 {
 }
Пример #13
0
 internal ExcelNamedStyleXml(XmlNamespaceManager nameSpaceManager, ExcelStyles styles)
     : base(nameSpaceManager)
 {
     _styles = styles;
     BuildInId = int.MinValue;
 }
Пример #14
0
        private static List <CopiedCell> GetCopiedValues(ExcelRangeBase sourceRange, ExcelRangeBase Destination, ExcelRangeCopyOptionFlags?excelRangeCopyOptionFlags)
        {
            var worksheet = sourceRange._worksheet;
            var toRow     = sourceRange._toRow;
            var toCol     = sourceRange._toCol;
            var fromRow   = sourceRange._fromRow;
            var fromCol   = sourceRange._fromCol;

            int    i    = 0;
            object o    = null;
            byte   flag = 0;
            Uri    hl   = null;

            var excludeFormulas = (excelRangeCopyOptionFlags ?? 0 & ExcelRangeCopyOptionFlags.ExcludeFormulas) == ExcelRangeCopyOptionFlags.ExcludeFormulas;

            var                   copiedValue = new List <CopiedCell>();
            ExcelStyles           sourceStyles = worksheet.Workbook.Styles, styles = Destination._worksheet.Workbook.Styles;
            Dictionary <int, int> styleCashe   = new Dictionary <int, int>();
            bool                  sameWorkbook = Destination._worksheet.Workbook == sourceRange._worksheet.Workbook;

            var cse = new CellStoreEnumerator <ExcelValue>(worksheet._values, fromRow, fromCol, toRow, toCol);

            while (cse.Next())
            {
                var row  = cse.Row;
                var col  = cse.Column;      //Issue 15070
                var cell = new CopiedCell
                {
                    Row    = Destination._fromRow + (row - fromRow),
                    Column = Destination._fromCol + (col - fromCol),
                    Value  = cse.Value._value
                };

                if (!excludeFormulas && worksheet._formulas.Exists(row, col, ref o))
                {
                    if (o is int)
                    {
                        cell.Formula = worksheet.GetFormula(cse.Row, cse.Column);
                        if (worksheet._flags.GetFlagValue(cse.Row, cse.Column, CellFlags.ArrayFormula))
                        {
                            Destination._worksheet._flags.SetFlagValue(cse.Row, cse.Column, true, CellFlags.ArrayFormula);
                        }
                    }
                    else
                    {
                        cell.Formula = o;
                    }
                }
                if (worksheet.ExistsStyleInner(row, col, ref i))
                {
                    if (sameWorkbook)
                    {
                        cell.StyleID = i;
                    }
                    else
                    {
                        if (styleCashe.ContainsKey(i))
                        {
                            i = styleCashe[i];
                        }
                        else
                        {
                            var oldStyleID = i;
                            i = styles.CloneStyle(sourceStyles, i);
                            styleCashe.Add(oldStyleID, i);
                        }
                        cell.StyleID = i;
                    }
                }

                if (worksheet._hyperLinks.Exists(row, col, ref hl))
                {
                    cell.HyperLink = hl;
                }

                // Will just be null if no comment exists.
                cell.Comment         = worksheet.Cells[cse.Row, cse.Column].Comment;
                cell.ThreadedComment = worksheet.Cells[cse.Row, cse.Column].ThreadedComment;
                if (worksheet._flags.Exists(row, col, ref flag))
                {
                    cell.Flag = flag;
                }
                copiedValue.Add(cell);
            }

            //Copy styles with no cell value
            var cses = new CellStoreEnumerator <ExcelValue>(worksheet._values, fromRow, fromCol, toRow, toCol);

            while (cses.Next())
            {
                if (!worksheet.ExistsValueInner(cses.Row, cses.Column))
                {
                    var row  = Destination._fromRow + (cses.Row - fromRow);
                    var col  = Destination._fromCol + (cses.Column - fromCol);
                    var cell = new CopiedCell
                    {
                        Row    = row,
                        Column = col,
                        Value  = null
                    };

                    i = cses.Value._styleId;
                    if (sameWorkbook)
                    {
                        cell.StyleID = i;
                    }
                    else
                    {
                        if (styleCashe.ContainsKey(i))
                        {
                            i = styleCashe[i];
                        }
                        else
                        {
                            var oldStyleID = i;
                            i = styles.CloneStyle(sourceStyles, i);
                            styleCashe.Add(oldStyleID, i);
                        }
                        cell.StyleID = i;
                    }
                    copiedValue.Add(cell);
                }
            }

            return(copiedValue);
        }
Пример #15
0
 internal DxfStyleBase(ExcelStyles styles)
 {
     _styles     = styles;
     AllowChange = false; //Don't touch this value in the styles.xml (by default). When Dxfs is fully implemented this can be removed.
 }
Пример #16
0
 public ExcelDxfNumberFormat(ExcelStyles styles) : base(styles)
 {
 }
Пример #17
0
 internal ExcelNumberFormat(ExcelStyles styles, OfficeOpenXml.XmlHelper.ChangedEventHandler ChangedEvent, int PositionID, string Address, int index) :
     base(styles, ChangedEvent, PositionID, Address)
 {
     Index = index;
 }
        internal ExcelFill(ExcelStyles styles, OfficeOpenXml.XmlHelper.ChangedEventHandler ChangedEvent, int PositionID, string address, int index) :
            base(styles, ChangedEvent, PositionID, address)

        {
            Index = index;
        }
Пример #19
0
 internal ExcelNumberFormat(ExcelStyles styles, Frame.Utils.EPPlus.XmlHelper.ChangedEventHandler ChangedEvent, int PositionID, string Address, int index) :
     base(styles, ChangedEvent, PositionID, Address)
 {
     Index = index;
 }
Пример #20
0
        /// <summary>
        /// Calculates and writes the value for a cell into a worksheet.
        /// </summary>
        /// <param name="cell">The cell to write a value into.</param>
        /// <param name="dataField">The data field that the value is under.</param>
        /// <param name="backingData">The data used to calculated the cell's value.</param>
        /// <param name="styles">The style to apply to the cell.</param>
        public void WriteCellTotal(ExcelRange cell, ExcelPivotTableDataField dataField, PivotCellBackingData backingData, ExcelStyles styles)
        {
            if (backingData == null)
            {
                return;
            }

            if (string.IsNullOrEmpty(backingData.Formula))
            {
                cell.Value = this.Calculate(dataField.Function, backingData.GetBackingValues());
            }
            else
            {
                cell.Value = this.EvaluateCalculatedFieldFormula(backingData.GetCalculatedCellBackingValues(), backingData.Formula);
            }
            var style = styles.NumberFormats.FirstOrDefault(n => n.NumFmtId == dataField.NumFmtId);

            if (style != null)
            {
                cell.Style.Numberformat.Format = style.Format;
            }
        }
Пример #21
0
 public ExcelDxfFill(ExcelStyles styles)
     : base(styles)
 {
     PatternColor    = new ExcelDxfColor(styles);
     BackgroundColor = new ExcelDxfColor(styles);
 }
Пример #22
0
        internal ExcelFill(ExcelStyles styles, Zephyr.Utils.EPPlus.XmlHelper.ChangedEventHandler ChangedEvent, int PositionID, string address, int index) :
            base(styles, ChangedEvent, PositionID, address)

        {
            Index = index;
        }
Пример #23
0
        internal ExcelFont(ExcelStyles styles, Chama.Utils.EPPlus.XmlHelper.ChangedEventHandler ChangedEvent, int PositionID, string address, int index) :
            base(styles, ChangedEvent, PositionID, address)

        {
            Index = index;
        }
Пример #24
0
 public ExcelDxfFontBase(ExcelStyles styles)
     : base(styles)
 {
     Color = new ExcelDxfColor(styles);
 }
Пример #25
0
        internal ExcelDxfStyleConditionalFormatting(XmlNamespaceManager nameSpaceManager, XmlNode topNode, ExcelStyles styles) : base(styles)
        {
            NumberFormat = new ExcelDxfNumberFormat(_styles);
            Font         = new ExcelDxfFontBase(_styles);
            Border       = new ExcelDxfBorderBase(_styles);
            Fill         = new ExcelDxfFill(_styles);
            if (topNode != null)
            {
                _helper = new XmlHelperInstance(nameSpaceManager, topNode);
                NumberFormat.NumFmtID = _helper.GetXmlNodeInt("d:numFmt/@numFmtId");
                NumberFormat.Format   = _helper.GetXmlNodeString("d:numFmt/@formatCode");
                if (NumberFormat.NumFmtID < 164 && string.IsNullOrEmpty(NumberFormat.Format))
                {
                    NumberFormat.Format = ExcelNumberFormat.GetFromBuildInFromID(NumberFormat.NumFmtID);
                }

                Font.Bold      = _helper.GetXmlNodeBoolNullable("d:font/d:b/@val");
                Font.Italic    = _helper.GetXmlNodeBoolNullable("d:font/d:i/@val");
                Font.Strike    = _helper.GetXmlNodeBoolNullable("d:font/d:strike");
                Font.Underline = GetUnderLineEnum(_helper.GetXmlNodeString("d:font/d:u/@val"));
                Font.Color     = GetColor(_helper, "d:font/d:color");

                Border.Left   = GetBorderItem(_helper, "d:border/d:left");
                Border.Right  = GetBorderItem(_helper, "d:border/d:right");
                Border.Bottom = GetBorderItem(_helper, "d:border/d:bottom");
                Border.Top    = GetBorderItem(_helper, "d:border/d:top");

                Fill.PatternType     = GetPatternTypeEnum(_helper.GetXmlNodeString("d:fill/d:patternFill/@patternType"));
                Fill.BackgroundColor = GetColor(_helper, "d:fill/d:patternFill/d:bgColor/");
                Fill.PatternColor    = GetColor(_helper, "d:fill/d:patternFill/d:fgColor/");
            }
            else
            {
                _helper = new XmlHelperInstance(nameSpaceManager);
            }
            _helper.SchemaNodeOrder = new string[] { "font", "numFmt", "fill", "border" };
        }
Пример #26
0
 internal StyleBase(ExcelStyles styles, LF.Utils.EPPlus.XmlHelper.ChangedEventHandler ChangedEvent, int PositionID, string Address)
 {
     _styles = styles;
     _ChangedEvent = ChangedEvent;
     _address = Address;
     _positionID = PositionID;
 }
Пример #27
0
        internal ExcelBorderItem (ExcelStyles styles, Zephyr.Utils.EPPlus.XmlHelper.ChangedEventHandler ChangedEvent, int worksheetID, string address, eStyleClass cls, StyleBase parent) : 
            base(styles, ChangedEvent, worksheetID, address)
	    {
            _cls=cls;
            _parent = parent;
	    }
Пример #28
0
 internal StyleBase(ExcelStyles styles, OfficeOpenXml.XmlHelper.ChangedEventHandler ChangedEvent, int PositionID, string Address)
 {
     _styles = styles;
     _ChangedEvent = ChangedEvent;
     _address = Address;
     _positionID = PositionID;
 }
Пример #29
0
 internal ExcelNamedStyleXml(XmlNamespaceManager nameSpaceManager, ExcelStyles styles)
     : base(nameSpaceManager)
 {
     _styles   = styles;
     BuildInId = int.MinValue;
 }
Пример #30
0
        internal Border(ExcelStyles styles, OfficeOpenXml.XmlHelper.ChangedEventHandler ChangedEvent, int PositionID, string address, int index) :
            base(styles, ChangedEvent, PositionID, address)
	    {
            Index = index;
        }
Пример #31
0
        internal ExcelGradientFill(ExcelStyles styles, Zephyr.Utils.EPPlus.XmlHelper.ChangedEventHandler ChangedEvent, int PositionID, string address, int index) :
            base(styles, ChangedEvent, PositionID, address)

        {
            Index = index;
        }
Пример #32
0
 internal ExcelXfs Copy(ExcelStyles styles)
 {
     ExcelXfs newXF = new ExcelXfs(NameSpaceManager, styles);
     newXF.NumberFormatId = _numFmtId;
     newXF.FontId = _fontId;
     newXF.FillId = _fillId;
     newXF.BorderId = _borderId;
     newXF.XfId = _xfID;
     newXF.ReadingOrder = _readingOrder;
     newXF.HorizontalAlignment = _horizontalAlignment;
     newXF.VerticalAlignment = _verticalAlignment;
     newXF.WrapText = _wrapText;
     newXF.ShrinkToFit = _shrinkToFit;
     newXF.Indent = _indent;
     newXF.TextRotation = _textRotation;
     newXF.Locked = _locked;
     newXF.Hidden = _hidden;
     return newXF;
 }
Пример #33
0
        internal ExcelNamedStyleXml(XmlNamespaceManager NameSpaceManager, XmlNode topNode, ExcelStyles styles) :
            base(NameSpaceManager, topNode)
        {
            StyleXfId     = GetXmlNodeInt(idPath);
            Name          = GetXmlNodeString(namePath);
            BuildInId     = GetXmlNodeInt(buildInIdPath);
            CustomBuildin = GetXmlNodeBool(customBuiltinPath);

            _styles = styles;
            _style  = new ExcelStyle(styles, styles.NamedStylePropertyChange, -1, Name, _styleXfId);
        }
Пример #34
0
        private void WriteCellValue(object value, ExcelRange cell, ExcelPivotTableDataField dataField, ExcelStyles styles)
        {
            cell.Value = value;
            var style = styles.NumberFormats.FirstOrDefault(n => n.NumFmtId == dataField.NumFmtId);

            if (style != null)
            {
                cell.Style.Numberformat.Format = style.Format;
            }
        }
Пример #35
0
 internal ExcelXfs(XmlNamespaceManager nameSpaceManager, ExcelStyles styles) : base(nameSpaceManager)
 {
     _styles = styles;
     isBuildIn = false;
 }
Пример #36
0
 public ExcelDxfColor(ExcelStyles styles) : base(styles)
 {
 }
Пример #37
0
 internal ExcelBorderItem(ExcelStyles styles, Frame.Utils.EPPlus.XmlHelper.ChangedEventHandler ChangedEvent, int worksheetID, string address, eStyleClass cls, StyleBase parent) :
     base(styles, ChangedEvent, worksheetID, address)
 {
     _cls    = cls;
     _parent = parent;
 }
Пример #38
0
 public static CssInlineStyles ToCSS(this ExcelStyles styles)
 {
     throw new NotImplementedException();
 }