public AttachedLabelSequence(IStreamReader reader)
            : base(reader)
        {
            //ATTACHEDLABEL = Text Begin Pos [FontX] [AlRuns] AI [FRAME] [ObjectLink] [DataLabExtContents] [CrtLayout12] [TEXTPROPS] [CRTMLFRT] End

            //Text
            this.Text = (Text)BiffRecord.ReadRecord(reader);

            //Begin
            this.Begin = (Begin)BiffRecord.ReadRecord(reader);

            //Pos
            this.Pos = (Pos)BiffRecord.ReadRecord(reader);

            //[FontX]
            if (BiffRecord.GetNextRecordType(reader) == RecordType.FontX)
            {
                this.FontX = (FontX)BiffRecord.ReadRecord(reader);
            }

            //[AlRuns]
            if (BiffRecord.GetNextRecordType(reader) == RecordType.AlRuns)
            {
                this.AlRuns = (AlRuns)BiffRecord.ReadRecord(reader);
            }

            //AI
            this.AiSequence = new AiSequence(reader);

            //[FRAME]
            if (BiffRecord.GetNextRecordType(reader) == RecordType.Frame)
            {
                this.FrameSequence = new FrameSequence(reader);
            }

            //[ObjectLink]
            if (BiffRecord.GetNextRecordType(reader) == RecordType.ObjectLink)
            {
                this.ObjectLink = (ObjectLink)BiffRecord.ReadRecord(reader);
            }

            //[DataLabExtContents]
            if (BiffRecord.GetNextRecordType(reader) == RecordType.DataLabExtContents)
            {
                this.DataLabExtContents = (DataLabExtContents)BiffRecord.ReadRecord(reader);
            }

            //[CrtLayout12]
            if (BiffRecord.GetNextRecordType(reader) == RecordType.CrtLayout12)
            {
                this.CrtLayout12 = (CrtLayout12)BiffRecord.ReadRecord(reader);
            }

            //[TEXTPROPS]
            if (BiffRecord.GetNextRecordType(reader) == RecordType.RichTextStream ||
                BiffRecord.GetNextRecordType(reader) == RecordType.TextPropsStream)
            {
                this.TextPropsSequence = new TextPropsSequence(reader);
            }

            //[CRTMLFRT]
            if (BiffRecord.GetNextRecordType(reader) == RecordType.CrtMlFrt)
            {
                this.CrtMlfrtSequence = new CrtMlfrtSequence(reader);
            }

            //End
            this.End = (End)BiffRecord.ReadRecord(reader);
        }
Esempio n. 2
0
        public CrtSequence(IStreamReader reader)
            : base(reader)
        {
            // ChartFormat
            //   Begin
            //     (Bar / Line / (BopPop [BopPopCustom]) / Pie / Area / Scatter / Radar / RadarArea / Surf)
            //     CrtLink [SeriesList] [Chart3d] [LD] [2DROPBAR] *4(CrtLine LineFormat) *2DFTTEXT [DataLabExtContents] [SS] *4SHAPEPROPS
            //   End

            // ChartFormat
            this.ChartFormat = (ChartFormat)BiffRecord.ReadRecord(reader);

            // Begin
            this.Begin = (Begin)BiffRecord.ReadRecord(reader);

            // (Bar / Line / (BopPop [BopPopCustom]) / Pie / Area / Scatter / Radar / RadarArea / Surf)
            this.ChartType = BiffRecord.ReadRecord(reader);
            if (BiffRecord.GetNextRecordType(reader) == RecordType.BopPopCustom)
            {
                this.BopPopCustom = (BopPopCustom)BiffRecord.ReadRecord(reader);
            }

            // CrtLink
            this.CrtLink = (CrtLink)BiffRecord.ReadRecord(reader);

            // [SeriesList]
            if (BiffRecord.GetNextRecordType(reader) == RecordType.SeriesList)
            {
                this.SeriesList = (SeriesList)BiffRecord.ReadRecord(reader);
            }

            // [Chart3d]
            if (BiffRecord.GetNextRecordType(reader) == RecordType.Chart3d)
            {
                this.Chart3d = (Chart3d)BiffRecord.ReadRecord(reader);
            }

            // [LD]
            if (BiffRecord.GetNextRecordType(reader) == RecordType.Legend)
            {
                this.LdSequence = new LdSequence(reader);
            }

            // [2DROPBAR]
            if (BiffRecord.GetNextRecordType(reader) == RecordType.DropBar)
            {
                this.DropBarSequence = new DropBarSequence[2];
                for (int i = 0; i < 2; i++)
                {
                    this.DropBarSequence[i] = new DropBarSequence(reader);
                }
            }

            //*4(CrtLine LineFormat)
            this.CrtLineGroups = new List <CrtLineGroup>();
            while (BiffRecord.GetNextRecordType(reader) == RecordType.CrtLine)
            {
                this.CrtLineGroups.Add(new CrtLineGroup(reader));
            }

            //*2DFTTEXT
            this.DftTextSequences = new List <DftTextSequence>();
            while (BiffRecord.GetNextRecordType(reader) == RecordType.DataLabExt ||
                   BiffRecord.GetNextRecordType(reader) == RecordType.DefaultText)
            {
                this.DftTextSequences.Add(new DftTextSequence(reader));
            }

            //[DataLabExtContents]
            if (BiffRecord.GetNextRecordType(reader) == RecordType.DataLabExtContents)
            {
                this.DataLabExtContents = (DataLabExtContents)BiffRecord.ReadRecord(reader);
            }

            //[SS]
            if (BiffRecord.GetNextRecordType(reader) == RecordType.DataFormat)
            {
                this.SsSequence = new SsSequence(reader);
            }

            //*4SHAPEPROPS
            this.ShapePropsSequences = new List <ShapePropsSequence>();
            while (BiffRecord.GetNextRecordType(reader) == RecordType.ShapePropsStream)
            {
                this.ShapePropsSequences.Add(new ShapePropsSequence(reader));
            }

            if (BiffRecord.GetNextRecordType(reader) == RecordType.CrtMlFrt)
            {
                CrtMlfrtSequence crtmlfrtseq = new CrtMlfrtSequence(reader);
            }


            this.End = (End)BiffRecord.ReadRecord(reader);
        }