public void MergeDown(LayoutLine line) { line.Release(); Down.AddRange(line.Down); var areas = line.Down; for (int i = 0; i < areas.Count; i++) { areas[i].Top = this; } model.data.localPosition.x = line.model.data.localPosition.x; var al = line.AdjacentLines; int c = al.Count - 1; for (; c >= 0; c--) { var l = al[c]; l.SetLineEnd(this); } }
public void MergeRight(LayoutLine line) { line.Release(); Right.AddRange(line.Right); var areas = line.Right; for (int i = 0; i < areas.Count; i++) { areas[i].Left = this; } model.data.localPosition.y = line.model.data.localPosition.y; var al = line.AdjacentLines; int c = al.Count - 1; for (; c >= 0; c--) { var l = al[c]; l.SetLineStart(this); } }