Beispiel #1
0
        public SSAggregate(RecordStream rs, ChartRecordAggregate container)
            : base(RuleName_SS, container)
        {
            dataFormat = (DataFormatRecord)rs.GetNext();
            rs.GetNext();
            if (rs.PeekNextChartSid() == Chart3DBarShapeRecord.sid)
            {
                chart3DBarShape = (Chart3DBarShapeRecord)rs.GetNext();
            }
            if (rs.PeekNextChartSid() == LineFormatRecord.sid)
            {
                lineFormat = (LineFormatRecord)rs.GetNext();
                areaFormat = (AreaFormatRecord)rs.GetNext();
                pieFormat  = (PieFormatRecord)rs.GetNext();
            }
            if (rs.PeekNextChartSid() == SerFmtRecord.sid)
            {
                serFmt = (SerFmtRecord)rs.GetNext();
            }

            if (rs.PeekNextChartSid() == GelFrameRecord.sid)
            {
                gelFrame = new GelFrameAggregate(rs, this);
            }

            if (rs.PeekNextChartSid() == MarkerFormatRecord.sid)
            {
                markerFormat = (MarkerFormatRecord)rs.GetNext();
            }

            if (rs.PeekNextChartSid() == AttachedLabelRecord.sid)
            {
                attachedLabel = (AttachedLabelRecord)rs.GetNext();
            }

            if (rs.PeekNextChartSid() == ShapePropsStreamRecord.sid)
            {
                shapeProps1 = new ShapePropsAggregate(rs, this);
            }

            if (rs.PeekNextChartSid() == ShapePropsStreamRecord.sid)
            {
                shapeProps2 = new ShapePropsAggregate(rs, this);
            }

            if (rs.PeekNextChartSid() == CrtMlFrtRecord.sid)
            {
                crtMlFrt = new CrtMlFrtAggregate(rs, this);
            }

            Record r = rs.GetNext();//EndRecord

            Debug.Assert(r.GetType() == typeof(EndRecord));
        }
        public void TestLoad()
        {
            AttachedLabelRecord record = new AttachedLabelRecord(TestcaseRecordInputStream.Create(0x100c, data));

            Assert.AreEqual(3, record.FormatFlags);
            Assert.AreEqual(true, record.IsShowActual);
            Assert.AreEqual(true, record.IsShowPercent);
            Assert.AreEqual(false, record.IsLabelAsPercentage);
            Assert.AreEqual(false, record.IsSmoothedLine);
            Assert.AreEqual(false, record.IsShowLabel);
            Assert.AreEqual(false, record.IsShowBubbleSizes);


            Assert.AreEqual(2 + 4, record.RecordSize);
        }
        public void TestStore()
        {
            AttachedLabelRecord record = new AttachedLabelRecord();

            record.IsShowActual        = (true);
            record.IsShowPercent       = (true);
            record.IsLabelAsPercentage = (false);
            record.IsSmoothedLine      = (false);
            record.IsShowLabel         = (false);
            record.IsShowBubbleSizes   = (false);


            byte[] recordBytes = record.Serialize();
            Assert.AreEqual(recordBytes.Length - 4, data.Length);
            for (int i = 0; i < data.Length; i++)
            {
                Assert.AreEqual(data[i], recordBytes[i + 4], "At offset " + i);
            }
        }