/// <summary> /// Pflegt die zusätzlichen Parameter dieser Erweiterung. /// </summary> /// <param name="parent">Das übergeordnete Oberflächenelement.</param> /// <param name="parameters">Die Liste der Parameter.</param> /// <param name="type">Die Art der Erweiterung, deren Parameter gepflegt werden sollen.</param> void IPipelineParameterExtension.Edit(Control parent, List <ProfileParameter> parameters, PipelineTypes type) { // Show dialog using (var dialog = new AdditionalFilterSelector(parameters)) if (dialog.ShowDialog(parent) == DialogResult.OK) { dialog.Update(parameters); } }
/// <summary> /// Aktualisiert die Aktionslisten des DVB Empfangs. /// </summary> /// <param name="graph">Der DirectShow Graph für den DVB Empfang.</param> /// <param name="profile">Das verwendete Geräteprofil.</param> /// <param name="types">Die gewünschte Aktivierung.</param> void IPipelineExtension.Install(DataGraph graph, Profile profile, PipelineTypes types) { // Validate if (graph == null) { throw new ArgumentNullException("graph"); } if (profile == null) { throw new ArgumentNullException("profile"); } // Check supported types if ((types & PipelineTypes.CICAM) != 0) { // Load static settings m_suppress = AdditionalFilterSelector.GetSuppression(PipelineTypes.CICAM, profile.Parameters); m_hasBeenReset = (m_suppress != SuppressionMode.None); // Analyse settings if (!bool.TryParse(profile.Parameters.GetParameter(PipelineTypes.CICAM, AdditionalFilterSelector.CancelEncryptionOnChangedStream), out m_disableOnChange)) { m_disableOnChange = false; } if (!int.TryParse(profile.Parameters.GetParameter(PipelineTypes.CICAM, AdditionalFilterSelector.DelayOnChangedStream), out m_changeDelay)) { m_changeDelay = 0; } // Register in pipeline graph.DecryptionPipeline.AddPostProcessing(Decrypt); // Check for additional filter var filterDisplayName = profile.Parameters.GetParameter(PipelineTypes.CICAM, AdditionalFilterSelector.FilterName); if (!string.IsNullOrEmpty(filterDisplayName)) { // Load moniker - if available var filterMoniker = profile.Parameters.GetParameter(PipelineTypes.CICAM, AdditionalFilterSelector.FilterMoniker); // Remember position of our extension m_filterIndex = graph.AdditionalFilterInformations.Count; // Register in graph graph.AdditionalFilterInformations.Add(DeviceAndFilterInformations.Cache.AllFilters.FindFilter(filterDisplayName, filterMoniker)); } } }
/// <summary> /// Pflegt die zusätzlichen Parameter dieser Erweiterung. /// </summary> /// <param name="parent">Das übergeordnete Oberflächenelement.</param> /// <param name="parameters">Die Liste der Parameter.</param> /// <param name="type">Die Art der Erweiterung, deren Parameter gepflegt werden sollen.</param> void IPipelineParameterExtension.Edit( Control parent, List<ProfileParameter> parameters, PipelineTypes type ) { // Show dialog using (var dialog = new AdditionalFilterSelector( parameters )) if (dialog.ShowDialog( parent ) == DialogResult.OK) dialog.Update( parameters ); }