protected virtual void TryCheckSustainedChildrens(bool p_force = false) { if (_isChildrensDirty || p_force) { _isChildrensDirty = false; //Invalidate constant repaint based in childrens var v_requireConstantRepaint = false; foreach (var _sustainedElement in _sustainedChildrenElements) { if (!_sustainedElement.IsDestroyed()) { v_requireConstantRepaint = v_requireConstantRepaint || _sustainedElement.RequiresConstantRepaint; if (v_requireConstantRepaint) { break; } } } _childrenNeedsConstantRepaint = v_requireConstantRepaint; //We must invalidate all SustainedCanvas Parents var v_sustainedParent = FindSustainedCanvasParent(this); if (v_sustainedParent != null) { v_sustainedParent.TryCheckSustainedChildrens(true); } else { SustainedPerformanceManager.MarkDynamicElementsDirty(); } } }
public virtual void MarkDynamicElementDirty() { var v_executed = false; if (IsScreenCanvasMember()) { var v_canvasView = GetSustainedCanvasParent(); if (v_canvasView != null) { v_executed = true; v_canvasView.MarkDynamicElementDirty(); } } if (!v_executed) { SustainedPerformanceManager.MarkDynamicElementsDirty(); } }
public virtual void MarkDynamicElementDirty() { SustainedPerformanceManager.MarkDynamicElementsDirty(); }