public void Render() { uint time = (uint)Environment.TickCount; SkinContext.SystemTickCount = time; lock (_syncObj) { if (_mouseMovePending.HasValue) { float x = _mouseMovePending.Value.X; float y = _mouseMovePending.Value.Y; _mouseMovePending = null; DoHandleMouseMove(x, y); } if (_root.IsMeasureInvalid || _root.IsArrangeInvalid) { _root.UpdateLayoutRoot(new SizeF(SkinWidth, SkinHeight)); } HandleScheduledFocus(); if (_pendingScreenEvent != null) { DoFireScreenEvent(_pendingScreenEvent); _pendingScreenEvent = null; } _root.Render(_renderContext); } }
public void CheckPendingScreenEvent() { if (_pendingScreenEvent == null) { return; } DoFireScreenEvent(_pendingScreenEvent); _pendingScreenEvent = null; }
protected void DoFireScreenEvent(PendingScreenEvent pendingScreenEvent) { FireEvent(pendingScreenEvent.EventName, pendingScreenEvent.RoutingStategy); }
protected void TriggerScreenEvent(string eventName, RoutingStrategyEnum routingStrategy) { _pendingScreenEvent = new PendingScreenEvent(eventName, routingStrategy); }