public ListFormatOverrideLevel GetOverrideLevel(int level) { ListFormatOverrideLevel retLevel = null; for (int x = 0; x < _levelOverrides.Length; x++) { if (_levelOverrides[x].GetLevelNum() == level) { retLevel = _levelOverrides[x]; } } return(retLevel); }
internal ListEntry(PAPX papx, Range parent, ListTables tables) : base(papx, parent) { if (tables != null) { ListFormatOverride override1 = tables.GetOverride(_props.GetIlfo()); _overrideLevel = override1.GetOverrideLevel(_props.GetIlvl()); _level = tables.GetLevel(override1.GetLsid(), _props.GetIlvl()); } else { //log.log(POILogger.WARN, "No ListTables found for ListEntry - document probably partly corrupt, and you may experience problems"); } }
public ListTables(byte[] tableStream, int lstOffset, int lfoOffset) { // get the list data int length = LittleEndian.GetShort(tableStream, lstOffset); lstOffset += LittleEndianConsts.SHORT_SIZE; int levelOffset = lstOffset + (length * LIST_DATA_SIZE); for (int x = 0; x < length; x++) { ListData lst = new ListData(tableStream, lstOffset); _listMap.Add(lst.GetLsid(), lst); lstOffset += LIST_DATA_SIZE; int num = lst.numLevels(); for (int y = 0; y < num; y++) { ListLevel lvl = new ListLevel(tableStream, levelOffset); lst.SetLevel(y, lvl); levelOffset += lvl.GetSizeInBytes(); } } // now get the list format overrides. The size is an int unlike the LST size length = LittleEndian.GetInt(tableStream, lfoOffset); lfoOffset += LittleEndianConsts.INT_SIZE; int lfolvlOffset = lfoOffset + (LIST_FORMAT_OVERRIDE_SIZE * length); for (int x = 0; x < length; x++) { ListFormatOverride lfo = new ListFormatOverride(tableStream, lfoOffset); lfoOffset += LIST_FORMAT_OVERRIDE_SIZE; int num = lfo.numOverrides(); for (int y = 0; y < num; y++) { while (tableStream[lfolvlOffset] == 255) { lfolvlOffset++; } ListFormatOverrideLevel lfolvl = new ListFormatOverrideLevel(tableStream, lfolvlOffset); lfo.SetOverride(y, lfolvl); lfolvlOffset += lfolvl.GetSizeInBytes(); } _overrideList.Add(lfo); } }
public override bool Equals(Object obj) { if (obj == null) { return(false); } ListFormatOverrideLevel lfolvl = (ListFormatOverrideLevel)obj; bool lvlEquality = false; if (_lvl != null) { lvlEquality = _lvl.Equals(lfolvl._lvl); } else { lvlEquality = lfolvl._lvl == null; } return(lvlEquality && lfolvl._iStartAt == _iStartAt && lfolvl._info == _info && Arrays.Equals(lfolvl._reserved, _reserved)); }
public void SetOverride(int index, ListFormatOverrideLevel lfolvl) { _levelOverrides[index] = lfolvl; }