public override bool Equals(object o) { StringWrapperBIFF8 stringWrapperBIFF = (StringWrapperBIFF8)o; if (m_runsList == null != (stringWrapperBIFF.m_runsList == null)) { return(false); } if ((stringWrapperBIFF.m_grbit & 0xFE) != (m_grbit & 0xFE)) { return(false); } if (stringWrapperBIFF.m_rgb.Length != m_rgb.Length) { return(false); } if (string.Compare(stringWrapperBIFF.m_rgb, m_rgb, StringComparison.Ordinal) != 0) { return(false); } if (m_runsList != null && m_runsList.Count > 0) { for (int i = 0; i < m_runsList.Count; i++) { Pair <int, int> pair = stringWrapperBIFF.m_runsList[i]; Pair <int, int> pair2 = m_runsList[i]; if (pair.First != pair2.First || pair.Second != pair2.Second) { return(false); } } } return(true); }
internal int AddString(StringWrapperBIFF8 aWrapper) { if (m_stringTable.ContainsKey(aWrapper)) { return(m_stringTable[aWrapper]); } return(InternalAddString(aWrapper)); }
private int InternalAddString(StringWrapperBIFF8 aWrapper) { m_totalStrings++; m_stringTable[aWrapper] = m_stringOrder.Count; m_stringOrder.Add(aWrapper); if (m_stringTable.Count < m_baseUniqueStrings) { m_baseUniqueStrings++; } m_offset += aWrapper.Size; return(m_stringOrder.Count - 1); }
private TransformResult CreateRichStringRecord(RichTextInfo richTextInfo, CellRenderingDetails details) { StringWrapperBIFF8 stringWrapperBIFF = richTextInfo.CompleteRun(); if (stringWrapperBIFF.Cch > 32767) { throw new ReportRenderingException(ExcelRenderRes.MaxStringLengthExceeded(details.Row.ToString(CultureInfo.InvariantCulture), details.Column.ToString(CultureInfo.InvariantCulture))); } int isst = m_stringHandler.AddString(stringWrapperBIFF); OnCellBegin(253, details.Column); RecordFactory.LABELSST(details.Output, (ushort)details.Row, (ushort)details.Column, details.Ixfe, (uint)isst); return(TransformResult.Handled); }
internal StringWrapperBIFF8 CompleteRun() { if (m_font != null) { int num = m_styleContainer.AddFont(m_font); m_maxFontIndex = Math.Max(m_maxFontIndex, num); m_fontList.Add(new Pair <int, int>(m_startIndex, num)); } StringWrapperBIFF8 stringWrapperBIFF = new StringWrapperBIFF8(m_stringBuilder.ToString()); stringWrapperBIFF.SetRunsList(m_fontList); m_fontList = null; m_font = null; m_stringBuilder = null; return(stringWrapperBIFF); }