private void ApplyDelayedAction(DelayedActionContext actionContext) { foreach (IDelayedAction action in actionList) { action.OnActionPerformed(actionContext); } }
public void ApplyDelayedActions() { while (actionContextList.Count > delayedActionBufferCount) { DelayedActionContext actionContext = actionContextList[0]; actionContextList.RemoveAt(0); ApplyDelayedAction(actionContext); } }
public void OnActionPerformed(DelayedActionContext actionContext) { foreach (ModuleEditor module in parent.paintSegmentOrderList) { if (!module.Active) { continue; } // apply paintmodule if delayed actions are active, it has to be painted over all other modules if (module == parent.paintModule) { module.PaintSegments(actionContext.segments, actionContext.editContext, actionContext.brushSettings); } } }