示例#1
0
        internal long TotalSize(TEncryptionData Encryption, bool Repeatable, int SheetIndex)
        {
            return
                (FileEncryption.TotalSize() +
                 Encryption.TotalSize() +

                 TTemplateRecord.GetSize(FIsXltTemplate) +
                 ts(CodePage) +

                 FLel.TotalSize +
                 TDSFRecord.StandardSize() +
                 ts(Excel9File) +

                 (SheetIndex < 0 ? FBoundSheets.TabIdsTotalSize() : 0)
                 +
                 ts(GetMacroRec(ObjProj)) +
                 ts(GetMacroRec(ObNoMacros)) +
                 ts(CodeNameRecord) +

                 FFnGroups.TotalSize +
                 ts(OleObjectSize) +
                 FWorkbookProtection.TotalSize() +
                 ts(Window1) +
                 TBackupRecord.StandardSize() +
                 THideObjRecord.StandardSize() +
                 T1904Record.StandardSize() +

                 TPrecisionRecord.StandardSize() +
                 TRefreshAllRecord.StandardSize() +

                 ts(BookBool) +
                 Fonts.TotalSize +
                 Formats.TotalSize +
                 StyleXF.SizeWithXFExt(this, CellXF) +
                 DXF.TotalSize +
                 Styles.TotalSize +
                 TableStyles.TotalSize +
                 ts(Palette) +
                 ts(ClrtClient) +

                 PivotCache.TotalSize +
                 DocRoute.TotalSize +

                 UserBView.TotalSize +
                 TUsesELFsRecord.StandardSize() +

                 (SheetIndex < 0 ?
                  FBoundSheets.TotalSize() +
                  MetaData.TotalSize
                :
                  FBoundSheets.TotalRangeSize(SheetIndex)
                 )

                 +

                 ts(MTRSettings) +
                 ts(ForceFullCalculation) +
                 ts(Country) +

                 FReferences.TotalSize() +
                 FNames.TotalSize +
                 RealTimeData.TotalSize +
                 ts(RecalcId) +

                 (SheetIndex < 0 ?
                  FHeaderImages.TotalSize() +
                  FDrawingGroup.TotalSize()
                :
                  0)
                 +

                 FSST.TotalSize(Repeatable) +
                 WebPub.TotalSize +
                 ts(WOpt) +
                 //CrErr is ignored
                 ts(BookExt) +
                 FeatHdr.TotalSize +
                 DConn.TotalSize +
                 ts(ThemeRecord) +
                 ts(CompressPictures) +
                 ts(Compat12) +
                 ts(GUIDTypeLib) +
                 FFutureRecords.TotalSize);
        }