Пример #1
0
        public override Object Clone()
        {
            TopMarginRecord rec = new TopMarginRecord();

            rec.field_1_margin = this.field_1_margin;
            return(rec);
        }
Пример #2
0
 public override void Dispose()
 {
     _rowBreaksRecord = null;
     _columnBreaksRecord = null;
     header = null;
     footer = null;
     _hCenter = null;
     _vCenter = null;
     _leftMargin = null;
     _rightMargin = null;
     _topMargin = null;
     _bottomMargin = null;
     _pls = null;
     printSetup = null;
     _bitmap = null;
 }
Пример #3
0
 private static IMargin CreateMarginRecord(MarginType margin, double size)
 {
     IMargin m;
     switch (margin)
     {
         case MarginType.LeftMargin:
             m = new LeftMarginRecord();
             break;
         case MarginType.RightMargin:
             m = new RightMarginRecord();
             break;
         case MarginType.TopMargin:
             m = new TopMarginRecord();
             break;
         case MarginType.BottomMargin:
             m = new BottomMarginRecord();
             break;
         default:
             throw new InvalidOperationException("Unknown margin constant:  " + margin);
     }
     m.Margin = size;
     return m;
 }
Пример #4
0
        public InternalChart(RecordStream rs)
        {
            _plsRecords = new List<PLSAggregate>();
            records = new List<RecordBase>(128);

            if (rs.PeekNextSid() != BOFRecord.sid)
            {
                throw new Exception("BOF record expected");
            }
            BOFRecord bof = (BOFRecord)rs.GetNext();
            if (bof.Type != BOFRecord.TYPE_CHART)
            {
                throw new RuntimeException("Bad BOF record type");
            }

            records.Add(bof);
            while (rs.HasNext())
            {
                int recSid = rs.PeekNextSid();

                Record.Record rec = rs.GetNext();
                if (recSid == EOFRecord.sid)
                {
                    records.Add(rec);
                    break;
                }

                if (recSid == ChartRecord.sid)
                {

                    continue;
                }

                if (recSid == ChartFRTInfoRecord.sid)
                {
                    _chartFrtInfo = (ChartFRTInfoRecord)rec;
                }
                else if (recSid == HeaderRecord.sid)
                {
                    header = (HeaderRecord)rec;
                }
                else if (recSid == FooterRecord.sid)
                {
                    footer = (FooterRecord)rec;
                }
                else if (recSid == HCenterRecord.sid)
                {
                    _hCenter = (HCenterRecord)rec;
                }
                else if (recSid == VCenterRecord.sid)
                {
                    _vCenter = (VCenterRecord)rec;
                }
                else if (recSid == LeftMarginRecord.sid)
                {
                    _leftMargin = (LeftMarginRecord)rec;
                }
                else if (recSid == RightMarginRecord.sid)
                {
                    _rightMargin = (RightMarginRecord)rec;
                }
                else if (recSid == TopMarginRecord.sid)
                {
                    _topMargin = (TopMarginRecord)rec;
                }
                else if (recSid == BottomMarginRecord.sid)
                {
                    _bottomMargin = (BottomMarginRecord)rec;
                }
                else if (recSid == UnknownRecord.PLS_004D) // PLS
                {
                    PLSAggregate pls = new PLSAggregate(rs);
                    PLSAggregateVisitor rv = new PLSAggregateVisitor(records);
                    pls.VisitContainedRecords(rv);
                    _plsRecords.Add(pls);

                    continue;
                }
                else if (recSid == PrintSetupRecord.sid)
                {
                    printSetup = (PrintSetupRecord)rec;
                }
                else if (recSid == PrintSizeRecord.sid)
                {
                    _printSize = (PrintSizeRecord)rec;
                }
                else if (recSid == HeaderFooterRecord.sid)
                {
                    HeaderFooterRecord hf = (HeaderFooterRecord)rec;
                    if (hf.IsCurrentSheet)
                        _headerFooter = hf;
                    else
                        _sviewHeaderFooters.Add(hf);
                }
                else if (recSid == ProtectRecord.sid)
                {
                    _protect = (ProtectRecord)rec;
                }
                records.Add(rec);
            }
            
        }
Пример #5
0
 /**
  * Sets the size of the margin in inches.
  * @param margin which margin to Get
  * @param size the size of the margin
  */
 public void SetMargin(MarginType margin, double size)
 {
     IMargin m = GetMarginRec(margin);
     if (m == null)
     {
         switch (margin)
         {
             case MarginType.LeftMargin:
                 _leftMargin = new LeftMarginRecord();
                 m = _leftMargin;
                 break;
             case MarginType.RightMargin:
                 _rightMargin = new RightMarginRecord();
                 m = _rightMargin;
                 break;
             case MarginType.TopMargin:
                 _topMargin = new TopMarginRecord();
                 m = _topMargin;
                 break;
             case MarginType.BottomMargin:
                 _bottomMargin = new BottomMarginRecord();
                 m = _bottomMargin;
                 break;
             default:
                 throw new InvalidOperationException("Unknown margin constant:  " + margin);
         }
     }
     m.Margin = size;
 }
Пример #6
0
 private bool ReadARecord(RecordStream rs)
 {
     switch (rs.PeekNextSid())
     {
         case HorizontalPageBreakRecord.sid:
             CheckNotPresent(_rowBreaksRecord);
             _rowBreaksRecord = (PageBreakRecord)rs.GetNext();
             break;
         case VerticalPageBreakRecord.sid:
             CheckNotPresent(_columnBreaksRecord);
             _columnBreaksRecord = (PageBreakRecord)rs.GetNext();
             break;
         case HeaderRecord.sid:
             CheckNotPresent(header);
             header = (HeaderRecord)rs.GetNext();
             break;
         case FooterRecord.sid:
             CheckNotPresent(footer);
             footer = (FooterRecord)rs.GetNext();
             break;
         case HCenterRecord.sid:
             CheckNotPresent(_hCenter);
             _hCenter = (HCenterRecord)rs.GetNext();
             break;
         case VCenterRecord.sid:
             CheckNotPresent(_vCenter);
             _vCenter = (VCenterRecord)rs.GetNext();
             break;
         case LeftMarginRecord.sid:
             CheckNotPresent(_leftMargin);
             _leftMargin = (LeftMarginRecord)rs.GetNext();
             break;
         case RightMarginRecord.sid:
             CheckNotPresent(_rightMargin);
             _rightMargin = (RightMarginRecord)rs.GetNext();
             break;
         case TopMarginRecord.sid:
             CheckNotPresent(_topMargin);
             _topMargin = (TopMarginRecord)rs.GetNext();
             break;
         case BottomMarginRecord.sid:
             CheckNotPresent(_bottomMargin);
             _bottomMargin = (BottomMarginRecord)rs.GetNext();
             break;
         case UnknownRecord.PLS_004D: // PLS
             _plsRecords.Add(new PLSAggregate(rs));
             break;
         case PrintSetupRecord.sid:
             CheckNotPresent(printSetup);
             printSetup = (PrintSetupRecord)rs.GetNext();
             break;
         case UnknownRecord.BITMAP_00E9: // BITMAP
             CheckNotPresent(_bitmap);
             _bitmap = rs.GetNext();
             break;
         case PrintSizeRecord.sid:
             CheckNotPresent(_printSize);
             _printSize = rs.GetNext();
             break;
         case HeaderFooterRecord.sid:
             HeaderFooterRecord hf = (HeaderFooterRecord)rs.GetNext();
             if (hf.IsCurrentSheet)
                 _headerFooter = hf;
             else
                 _sviewHeaderFooters.Add(hf);
             break;
         default:
             // all other record types are not part of the PageSettingsBlock
             return false;
     }
     return true;
 }
Пример #7
0
 private bool ReadARecord(RecordStream rs)
 {
     switch (rs.PeekNextSid())
     {
         case HorizontalPageBreakRecord.sid:
             _rowBreaksRecord = (PageBreakRecord)rs.GetNext();
             _rowRecords.Add(_rowBreaksRecord);
             break;
         case VerticalPageBreakRecord.sid:
             _columnBreaksRecord = (PageBreakRecord)rs.GetNext();
             _rowRecords.Add(_columnBreaksRecord);
             break;
         case HeaderRecord.sid:
             header = (HeaderRecord)rs.GetNext();
             _rowRecords.Add(header);
             break;
         case FooterRecord.sid:
             footer = (FooterRecord)rs.GetNext();
             _rowRecords.Add(footer);
             break;
         case HCenterRecord.sid:
             _hCenter = (HCenterRecord)rs.GetNext();
             _rowRecords.Add(_hCenter);
             break;
         case VCenterRecord.sid:
             _vCenter = (VCenterRecord)rs.GetNext();
             _rowRecords.Add(_vCenter);
             break;
         case LeftMarginRecord.sid:
             _leftMargin = (LeftMarginRecord)rs.GetNext();
             _rowRecords.Add(_leftMargin);
             break;
         case RightMarginRecord.sid:
             _rightMargin = (RightMarginRecord)rs.GetNext();
             _rowRecords.Add(_rightMargin);
             break;
         case TopMarginRecord.sid:
             _topMargin = (TopMarginRecord)rs.GetNext();
             _rowRecords.Add(_topMargin);
             break;
         case BottomMarginRecord.sid:
             _bottomMargin = (BottomMarginRecord)rs.GetNext();
             _rowRecords.Add(_bottomMargin);
             break;
         case 0x004D: // PLS
             _pls = rs.GetNext();
             _rowRecords.Add(_pls);
             break;
         case PrintSetupRecord.sid:
             printSetup = (PrintSetupRecord)rs.GetNext();
             _rowRecords.Add(printSetup);
             break;
         case 0x00E9: // BITMAP
             _bitmap = rs.GetNext();
             _rowRecords.Add(_bitmap);
             break;
         default:
             // all other record types are not part of the PageSettingsBlock
             return false;
     }
     return true;
 }
Пример #8
0
 public override Object Clone()
 {
     TopMarginRecord rec = new TopMarginRecord();
     rec.field_1_margin = this.field_1_margin;
     return rec;
 }