// Copyright Keysight Technologies 2012-2019 // This Source Code Form is subject to the terms of the Mozilla Public // License, v. 2.0. If a copy of the MPL was not distributed with this // file, you can obtain one at http://mozilla.org/MPL/2.0/. using System.Collections.Specialized; namespace OpenTap { /// /// Settings governing configured instruments. These are usually configured by the user.. /// [Display("Instruments", "Instrument Settings")] [SettingsGroup("Bench", Profile: true)] public class InstrumentSettings : ComponentSettingsList { /// /// When the instrument settings list is modified some ports being used by connections might disappear. /// In that case we need to remove the ports from the connections. /// internal protected override void OnCollectionChanged(object sender, NotifyCollectionChangedEventArgs e) { base.OnCollectionChanged(sender, e); var removedItems = e.OldItems; if (removedItems == null) return; var con = ConnectionSettings.CurrentFromCache; con?.UpdateConnectionPorts(removedItems); } } }