public ElementOffset add_image(Texture2D aTex, Vector3 aOffset, Vector2?aSize = null) { FlatElementImage image = new FlatElementImage(aTex, aSize, Depth + mElements.Count); ElementOffset r = new ElementOffset(image, aOffset); mElements.Add(r); SoftPosition = SoftPosition; return(r); }
public bool RemoveElementAt(uint textIndex, out Element element) { ElementOffset offset = new ElementOffset(); if (this.insertedElements != null && this.insertedElements.TryGetValue(textIndex, out offset)) { this.insertedElements.Remove(textIndex); this.children.Remove(offset.Element); element = offset.Element; return(true); } element = offset.Element; return(false); }
//add / remove public void AddElement(Element element, uint textIndex, ref Vector2 elementOffset) { if (insertedElements == null) { insertedElements = new SortedList <uint, ElementOffset>(); } this.children.Add(element); ElementOffset offset = new ElementOffset(); offset.Element = element; offset.Offset = elementOffset; this.insertedElements.Add(textIndex, offset); }
public void SetInsertedElementLayout(ref Vector2 position, out float insertedWidth) { Element text = TextElement; ElementOffset offset = insertedElements.Values[insertIndex]; Element element = offset.Element; insertedWidth = 0; if (element is ElementRect) { insertedWidth = (element as ElementRect).Size.X; } offset.Offset.X += position.X; offset.Offset.Y += position.Y; element.Position = offset.Offset; element.VerticalAlignment = text.VerticalAlignment; element.HorizontalAlignment = text.HorizontalAlignment; }