public override bool CopyTo(GlobalPrefsItem destBase) { GlobalPrefsSimpleItem <T> dest = (GlobalPrefsSimpleItem <T>)destBase; // covariant if (explicitlySet || !EqualityComparer <T> .Default.Equals(this.value, dest.value)) { dest.Value = this.value; return(true); } return(false); }
private GlobalPrefsSimpleItem <T> GetItemForCurrentComputer() { string key = Environment.GetEnvironmentVariable("COMPUTERNAME"); GlobalPrefsSimpleItem <T> item; if (!values.TryGetValue(key, out item)) { item = new GlobalPrefsSimpleItem <T>(ValueName, defaultValue); values.Add(key, item); } return(item); }
public override bool CopyTo(GlobalPrefsItem destBase) { bool result = false; GlobalPrefsComputerNameKeyedItem <T> dest = (GlobalPrefsComputerNameKeyedItem <T>)destBase; // covariant dest.values.Clear(); foreach (KeyValuePair <string, GlobalPrefsSimpleItem <T> > item in values) { GlobalPrefsSimpleItem <T> copy = new GlobalPrefsSimpleItem <T>(ValueName, defaultValue); dest.values.Add(item.Key, copy); result = item.Value.CopyTo(copy) || result; } return(result); }
public override void Read(XPathNavigator containerNav) { XPathNavigator navTop = containerNav.SelectSingleNode(propertyName); if (navTop != null) { foreach (XPathNavigator navItem in navTop.Select(ItemName)) { string computerName = navItem.SelectSingleNode(ComputerName).Value; GlobalPrefsSimpleItem <T> item = new GlobalPrefsSimpleItem <T>(ValueName, defaultValue); item.Read(navItem); values.Add(computerName, item); } } }