/// <summary> /// Take the action corresponding to the given key action. /// </summary> /// <param name="keyAction">Key Action Value.<seealso cref="RCE.Infrastructure.Models.KeyMappingAction"/>.</param> private void OnKeyAction(KeyMappingAction keyAction) { if (keyAction == KeyMappingAction.Toggle) { if (this.PlayerMode == PlayerMode.Timeline) { this.TogglePlayModel(); } else if (this.PlayerMode == PlayerMode.MediaBin || this.PlayerMode == PlayerMode.MediaLibrary) { this.View.TogglePlay(); } } else if (keyAction == KeyMappingAction.PlayTimeline && !this.IsPlayModelPlaying) { this.PlayerMode = PlayerMode.Timeline; this.PlayModel(); } else if (keyAction == KeyMappingAction.PausePlayer) { if (this.PlayerMode == PlayerMode.Timeline && this.IsPlayModelPlaying) { this.PauseModel(); } else if (this.PlayerMode == PlayerMode.MediaLibrary || this.PlayerMode == PlayerMode.MediaBin) { this.View.PausePlayer(); } } }
public void InvokeKeyMappingActionEvent(KeyMappingAction action) { if (this.KeyMappingActionEvent != null) { this.KeyMappingActionEvent(this, new KeyMappingActionEventArgs(action)); } }
/// <summary> /// Raises the <see cref="KeyMappingActionEvent"/> event. /// </summary> /// <param name="keyAction"><see cref="RCE.Infrastructure.Models.KeyMappingAction"/> value.</param> private void OnKeyMappingAction(KeyMappingAction keyAction) { EventHandler <KeyMappingActionEventArgs> kayActionHandler = this.KeyMappingActionEvent; if (kayActionHandler != null) { kayActionHandler(this, new KeyMappingActionEventArgs(keyAction)); } }
/// <summary> /// Filter for KeyMappingEvent event. /// </summary> /// <param name="keyMappingAction">Returns true if KeyMappingAction is /// PlayTimeLine, PauseTimeLine or Toggle.<see cref="RCE.Infrastructure.Models.KeyMappingAction"/>.</param> /// <returns>True if KeyMappingAction is PlayTimeline, PauseTimeline, Toggle.</returns> private static bool Filter(KeyMappingAction keyMappingAction) { switch (keyMappingAction) { case KeyMappingAction.PlayTimeline: case KeyMappingAction.PausePlayer: case KeyMappingAction.Toggle: return(true); default: return(false); } }
public override void Publish(KeyMappingAction payload) { this.PublishCalled = true; this.PublishArgumentPayload = payload; }
/// <summary> /// Initializes a new instance of the <see cref="KeyMappingActionEventArgs"/> class. /// </summary> /// <param name="action">The action.</param> public KeyMappingActionEventArgs(KeyMappingAction action) { this.KayMappingAction = action; }