private List <long> WriteGlobalStream(BinaryWriter writer) { writer.BaseStream.Write(Constants.GLOBAL1, 0, Constants.GLOBAL1.Length); m_styleContainer.Write(writer); writer.BaseStream.Write(Constants.GLOBAL3, 0, Constants.GLOBAL3.Length); RecordFactory.PALETTE(writer, m_colors); List <long> list = new List <long>(); foreach (WorksheetInfo worksheet in m_worksheets) { list.Add(writer.BaseStream.Position); RecordFactory.BOUNDSHEET(writer, 0u, worksheet.SheetName); } if (m_externSheet != null) { RecordFactory.SUPBOOK(writer, (ushort)m_worksheets.Count); RecordFactory.EXTERNSHEET(writer, m_externSheet); foreach (WorksheetInfo worksheet2 in m_worksheets) { if (worksheet2.PrintTitle != null) { RecordFactory.NAME_PRINTTITLE(writer, worksheet2.PrintTitle); } } } if (m_drawingGroupContainer != null) { MsoDrawingGroup.WriteToStream(writer, m_drawingGroupContainer); } m_stringTable.Write(writer.BaseStream); writer.BaseStream.Write(Constants.GLOBAL4, 0, Constants.GLOBAL4.Length); return(list); }