protected override void RemoveAssociations(IReadOnlyCollection <string> associations) { if (associations == null || !associations.Any()) { return; } var cache = CachedAssociations.ToList(); foreach (var extension in associations.ToList()) { foreach (var cachedAssociation in cache) { EditorSupportedFileDefinition def = null; foreach (var definition in cachedAssociation.Value.CreateWithDefaultExtension) { if (!definition.Extension.Equals(extension)) { continue; } def = definition; } if (def != null) { cachedAssociation.Value.CreateWithDefaultExtension.Remove(def); } } } }
protected override void RemoveAssociations(IReadOnlyCollection <string> associations) { if (associations == null || !associations.Any()) { return; } var cache = CachedAssociations.ToList(); foreach (var extension in associations.ToList()) { foreach (var cachedAssociation in cache) { EditorSupportedFileDefinition def = null; foreach (var definition in cachedAssociation.Value.DefaultExtension) { if (!definition.Extension.Equals(extension)) { continue; } def = definition; //var i = CachedAssociations[cachedAssociation.Key].DefaultExtension; //i.Remove(definition); //var e = new EditorFileAssociation(cachedAssociation.Key, cachedAssociation.Value.Name) //{ // DefaultExtension = i //}; //CachedAssociations[cachedAssociation.Key] = e; } if (def != null) { cachedAssociation.Value.DefaultExtension.Remove(def); } } } }