private void EditExternalPlayer(CommonConfigData.ExternalPlayer externalPlayer, bool isNew) { var form = new ExternalPlayerForm(isNew) { Owner = this, WindowStartupLocation = WindowStartupLocation.CenterOwner }; form.FillControlsFromObject(externalPlayer); if (form.ShowDialog() == true) { form.UpdateObjectFromControls(externalPlayer); if (isNew) { commonConfig.ExternalPlayers.Add(externalPlayer); } SaveConfig(); RefreshPlayers(); lstExternalPlayers.SelectedItem = externalPlayer; } }
/// <summary> /// Gets the default configuration that will be pre-populated into the UI of the configurator. /// </summary> public override CommonConfigData.ExternalPlayer GetDefaultConfiguration() { CommonConfigData.ExternalPlayer config = base.GetDefaultConfiguration(); config.LaunchType = CommonConfigData.ExternalPlayerLaunchType.WMCNavigate; return(config); }
/// <summary> /// Gets the default configuration that will be pre-populated into the UI of the configurator. /// </summary> public override CommonConfigData.ExternalPlayer GetDefaultConfiguration() { CommonConfigData.ExternalPlayer config = base.GetDefaultConfiguration(); config.SupportsPlaylists = false; config.SupportsMultiFileCommandArguments = false; return(config); }
public override void ConfigureUserSettings(CommonConfigData.ExternalPlayer currentConfiguration) { string iniPath = GetIniFilePath(currentConfiguration); if (string.IsNullOrEmpty(iniPath)) { ConfigureUserSettingsIntoRegistry(); } else { ConfigureUserSettingsIntoINIFile(iniPath); } }
/// <summary> /// Gets the default configuration that will be pre-populated into the UI of the configurator. /// </summary> public virtual CommonConfigData.ExternalPlayer GetDefaultConfiguration() { CommonConfigData.ExternalPlayer config = new CommonConfigData.ExternalPlayer(); config.ExternalPlayerName = ExternalPlayerName; config.LaunchType = CommonConfigData.ExternalPlayerLaunchType.CommandLine; config.SupportsPlaylists = true; config.SupportsMultiFileCommandArguments = false; config.ShowSplashScreen = true; config.MinimizeMCE = true; config.Args = "{0}"; return config; }
/// <summary> /// Gets the default configuration that will be pre-populated into the UI of the configurator. /// </summary> public virtual CommonConfigData.ExternalPlayer GetDefaultConfiguration() { CommonConfigData.ExternalPlayer config = new CommonConfigData.ExternalPlayer(); config.ExternalPlayerName = ExternalPlayerName; config.LaunchType = CommonConfigData.ExternalPlayerLaunchType.CommandLine; config.SupportsPlaylists = true; config.SupportsMultiFileCommandArguments = false; config.ShowSplashScreen = true; config.MinimizeMCE = true; config.Args = "{0}"; return(config); }
public void UpdateObjectFromControls(CommonConfigData.ExternalPlayer externalPlayer) { PlayableExternalConfigurator uiConfigurator = PlayableItemFactory.Instance.GetPlayableExternalConfiguratorByName(ExternalPlayerName); var externalPlayerDefault = uiConfigurator.GetDefaultConfiguration(); externalPlayer.LaunchType = externalPlayerDefault.LaunchType; externalPlayer.ExternalPlayerName = lstPlayerType.SelectedItem.ToString(); externalPlayer.Args = txtArguments.Text; externalPlayer.Command = txtCommand.Text; externalPlayer.MinimizeMCE = chkMinimizeMce.IsChecked.Value; externalPlayer.ShowSplashScreen = chkShowSplashScreen.IsChecked.Value; //externalPlayer.HideTaskbar = chkHideTaskbar.IsChecked.Value; externalPlayer.SupportsMultiFileCommandArguments = chkSupportsMultiFileCommand.IsChecked.Value; externalPlayer.SupportsPlaylists = chkSupportsPLS.IsChecked.Value; externalPlayer.MediaTypes = (lstMediaTypes.ItemsSource as EnumWrapperList <MediaType>).GetCheckedValues(); externalPlayer.VideoFormats = (lstVideoFormats.ItemsSource as EnumWrapperList <VideoFormat>).GetCheckedValues(); }
private static string GetIniFilePath(CommonConfigData.ExternalPlayer currentConfiguration) { string directory = Path.GetDirectoryName(currentConfiguration.Command); string path = Path.Combine(directory, "mpc-hc.ini"); if (File.Exists(path)) { return(path); } path = Path.Combine(directory, "mpc-hc64.ini"); if (File.Exists(path)) { return(path); } return(string.Empty); }
public void FillControlsFromObject(CommonConfigData.ExternalPlayer externalPlayer, PlayableExternalConfigurator uiConfigurator, bool refreshMediaTypes, bool refreshVideoFormats) { lstPlayerType.SelectedItem = externalPlayer.ExternalPlayerName; txtArguments.Text = externalPlayer.Args; chkMinimizeMce.IsChecked = externalPlayer.MinimizeMCE; chkShowSplashScreen.IsChecked = externalPlayer.ShowSplashScreen; //chkHideTaskbar.IsChecked = externalPlayer.HideTaskbar; chkSupportsMultiFileCommand.IsChecked = externalPlayer.SupportsMultiFileCommandArguments; chkSupportsPLS.IsChecked = externalPlayer.SupportsPlaylists; if (refreshMediaTypes) { EnumWrapperList <MediaType> mediaTypes = lstMediaTypes.ItemsSource as EnumWrapperList <MediaType>; mediaTypes.SetValues(externalPlayer.MediaTypes); SetListDataSource(lstMediaTypes, mediaTypes); } if (refreshVideoFormats) { EnumWrapperList <VideoFormat> videoFormats = lstVideoFormats.ItemsSource as EnumWrapperList <VideoFormat>; videoFormats.SetValues(externalPlayer.VideoFormats); SetListDataSource(lstVideoFormats, videoFormats); } SetControlVisibility(uiConfigurator); SetTips(uiConfigurator); if (string.IsNullOrEmpty(externalPlayer.Command)) { AutoFillPaths(uiConfigurator); } else { txtCommand.Text = externalPlayer.Command; } }
public void FillControlsFromObject(CommonConfigData.ExternalPlayer externalPlayer) { FillControlsFromObject(externalPlayer, PlayableItemFactory.Instance.GetPlayableExternalConfiguratorByName(externalPlayer.ExternalPlayerName), true, true); }
public virtual void ConfigureUserSettings(CommonConfigData.ExternalPlayer currentConfiguration) { }