protected void UpdatePlayerChooseEffectMenu() { if (_playerChooseEffectMenu.Count == 0) { IGeometryManager geometryManager = ServiceRegistration.Get <IGeometryManager>(); string standardEffectFile = geometryManager.StandardEffectFile; IPlayerContext pc = _playerEffectMenuPlayerContext; if (pc == null || !pc.IsActive) { LeaveChooseEffectWorkflow(); return; } string effectStr = LocalizationHelper.CreateResourceString(Consts.RES_CHOOSE_PLAYER_EFFECT).Evaluate(); IList <IPlayerContext> videoPCs = GetVideoPlayerContexts(); _playerChooseEffectHeader = videoPCs.Count > 1 ? string.Format("{0} ({1})", effectStr, GetNameForPlayerContext(pc, pc.IsPrimaryPlayerContext ? 0 : 1)) : effectStr; IVideoPlayer videoPlayer = pc.CurrentPlayer as IVideoPlayer; foreach (KeyValuePair <string, string> nameToEffect in geometryManager.AvailableEffects) { string file = nameToEffect.Key; string vpEffectFile = videoPlayer == null ? null : videoPlayer.EffectOverride ?? standardEffectFile; ListItem item = new ListItem(Consts.KEY_NAME, nameToEffect.Value) { Command = new MethodDelegateCommand(() => SetEffect(_playerEffectMenuPlayerContext, file)), Selected = file == vpEffectFile, }; item.AdditionalProperties[Consts.KEY_NAVIGATION_MODE] = NavigationMode.ExitPCWorkflow; _playerChooseEffectMenu.Add(item); } } }
protected void UpdatePlayerChooseGeometryMenu() { if (_playerChooseGeometryMenu.Count == 0) { IGeometryManager geometryManager = ServiceRegistration.Get <IGeometryManager>(); IGeometry defaultGeometry = geometryManager.DefaultVideoGeometry; IPlayerContext pc = _playerGeometryMenuPlayerContext; if (pc == null || !pc.IsActive) { LeaveChooseGeometryWorkflow(); return; } string geometryStr = LocalizationHelper.CreateResourceString(Consts.RES_CHOOSE_PLAYER_GEOMETRY).Evaluate(); IList <IPlayerContext> videoPCs = GetVideoPlayerContexts(); _playerChooseGeometryHeader = videoPCs.Count > 1 ? string.Format("{0} ({1})", geometryStr, GetNameForPlayerContext(pc, pc.IsPrimaryPlayerContext ? 0 : 1)) : geometryStr; IVideoPlayer videoPlayer = pc.CurrentPlayer as IVideoPlayer; foreach (KeyValuePair <string, IGeometry> nameToGeometry in geometryManager.AvailableGeometries) { IGeometry geometry = nameToGeometry.Value; IGeometry vpGeometry = videoPlayer == null ? null : videoPlayer.GeometryOverride ?? defaultGeometry; ListItem item = new ListItem(Consts.KEY_NAME, nameToGeometry.Key) { Command = new MethodDelegateCommand(() => SetGeometry(_playerGeometryMenuPlayerContext, geometry)), Selected = vpGeometry == geometry, }; item.AdditionalProperties[Consts.KEY_NAVIGATION_MODE] = NavigationMode.ExitPCWorkflow; _playerChooseGeometryMenu.Add(item); } } }
private string GetEffectName(string effectFile) { IGeometryManager geometryManager = ServiceRegistration.Get <IGeometryManager>(); string name; if (effectFile != null && geometryManager.AvailableEffects.TryGetValue(effectFile, out name)) { return(name); } return(GetEffectName(geometryManager.StandardEffectFile)); }
public override void Load() { IGeometryManager geometryManager = ServiceRegistration.Get <IGeometryManager>(); _geometries = new List <IGeometry>(geometryManager.AvailableGeometries.Values); IGeometry current = geometryManager.DefaultVideoGeometry; // Fill items _items = new List <IResourceString>(_geometries.Count); for (int i = 0; i < _geometries.Count; i++) { IGeometry geometry = _geometries[i]; _items.Add(LocalizationHelper.CreateResourceString(geometry.Name)); if (geometry == current) { Selected = i; } } }
private void InitList(ItemsList targetList, string selectedEffect, SimpleStringDelegate command) { targetList.Clear(); IGeometryManager geometryManager = ServiceRegistration.Get <IGeometryManager>(); string standardEffectFile = geometryManager.StandardEffectFile; foreach (KeyValuePair <string, string> nameToEffect in geometryManager.AvailableEffects) { string file = nameToEffect.Key; string effectFile = selectedEffect ?? standardEffectFile; string effectName = nameToEffect.Value; ListItem item = new ListItem(Consts.KEY_NAME, effectName) { Command = new MethodDelegateCommand(() => command(effectName, file)), Selected = file == effectFile, }; targetList.Add(item); } targetList.FireChange(); }
void OnGeometryChange(AbstractProperty prop, object oldVal) { string geometryName = Geometry; if (String.IsNullOrEmpty(geometryName)) { _currentGeometry = null; return; } IGeometryManager geometryManager = ServiceRegistration.Get <IGeometryManager>(); IGeometry geometry; if (geometryManager.AvailableGeometries.TryGetValue(geometryName, out geometry)) { _currentGeometry = geometry; } else { ServiceRegistration.Get <ILogger>().Debug("VideoBrush: Geometry '{0}' does not exist", geometryName); _currentGeometry = null; } }
protected void UpdatePlayerChooseEffectMenu() { if (_playerChooseEffectMenu.Count == 0) { IGeometryManager geometryManager = ServiceRegistration.Get <IGeometryManager>(); string standardEffectFile = geometryManager.StandardEffectFile; IPlayerContext pc = _playerEffectMenuPlayerContext; IVideoPlayer videoPlayer = pc == null ? null : pc.CurrentPlayer as IVideoPlayer; foreach (KeyValuePair <string, string> nameToEffect in geometryManager.AvailableEffects) { string file = nameToEffect.Key; string vpEffectFile = videoPlayer == null ? null : videoPlayer.EffectOverride ?? standardEffectFile; ListItem item = new ListItem(Consts.KEY_NAME, nameToEffect.Value) { Command = new MethodDelegateCommand(() => SetEffect(_playerEffectMenuPlayerContext, file)), Selected = file == vpEffectFile, }; item.AdditionalProperties[Consts.KEY_NAVIGATION_MODE] = NavigationMode.ExitPCWorkflow; _playerChooseEffectMenu.Add(item); } } }
protected void UpdatePlayerChooseGeometryMenu() { if (_playerChooseGeometryMenu.Count == 0) { IGeometryManager geometryManager = ServiceRegistration.Get <IGeometryManager>(); IGeometry defaultGeometry = geometryManager.DefaultVideoGeometry; IPlayerContext pc = _playerGeometryMenuPlayerContext; IVideoPlayer videoPlayer = pc == null ? null : pc.CurrentPlayer as IVideoPlayer; foreach (KeyValuePair <string, IGeometry> nameToGeometry in geometryManager.AvailableGeometries) { IGeometry geometry = nameToGeometry.Value; IGeometry vpGeometry = videoPlayer == null ? null : videoPlayer.GeometryOverride ?? defaultGeometry; ListItem item = new ListItem(Consts.KEY_NAME, nameToGeometry.Key) { Command = new MethodDelegateCommand(() => SetGeometry(_playerGeometryMenuPlayerContext, geometry)), Selected = vpGeometry == geometry, }; item.AdditionalProperties[Consts.KEY_NAVIGATION_MODE] = NavigationMode.ExitPCWorkflow; _playerChooseGeometryMenu.Add(item); } } }