public override string GetString() { if (FileParser.GetDataLabel(this) != null) { // If a label points directly to this data, it can't be // shortened Elongate(); } else { Shorten(); // Try to, anyway } return(base.GetString()); }
public void RemoveWarpSourceData(WarpSourceData data) { if (!warpSourceDataList.Contains(data)) { return; } if (data.WarpSourceType == WarpSourceType.PointerWarp) { WarpSourceData pointedData = data.GetPointedWarp(); // Delete label fileParser.RemoveFileComponent(fileParser.GetDataLabel(pointedData)); // Delete after the label while (pointedData != null) { WarpSourceData next = pointedData.GetNextWarp(); pointedData.FileParser.RemoveFileComponent(pointedData); pointedData = next; } } data.FileParser.RemoveFileComponent(data); warpSourceDataList.Remove(data); }