using System; using System.Collections.Generic; using System.Text; using FastReport.Utils; namespace FastReport { /// /// Implement this interface if your object can contain list of child objects. /// public interface IParent { /// /// Gets a value indicating that this object can contain the specified child object. /// /// Child object. /// true if this object can contain the specified child object; otherwise, false. bool CanContain(Base child); /// /// Gets a list of child objects. /// /// List to fill with values. void GetChildObjects(ObjectCollection list); /// /// Adds a child object to this object's childs. /// /// Object to add. void AddChild(Base child); /// /// Removes a specified object from this object's childs. /// /// void RemoveChild(Base child); /// /// Returns z-order of the specified child object. /// /// Child object. /// Z-order of the specified object. /// /// This method must return the index of a specified child object in the internal child list. /// int GetChildOrder(Base child); /// /// Sets the z-order of the specified object. /// /// Child object. /// New Z-order. /// /// This method must place the specified child object at the specified position in the internal child list. /// void SetChildOrder(Base child, int order); /// /// Updates the children layout when the size of this object is changed by dx, dy values. /// /// X delta. /// Y delta. /// /// This method must update positions/sizes of child objects whose Dock or Anchor properties /// are set to non-default values. /// void UpdateLayout(float dx, float dy); } }