public event ErrorEventHandler ErrorOccured; //Should raise this in case of an error //Following is needed because we want that events to be raised in childclasses //https://docs.microsoft.com/de-de/dotnet/csharp/programming-guide/events/how-to-raise-base-class-events-in-derived-classes protected virtual void OnSettingChanged(ProgressEventArgs e) { // Make a temporary copy of the event to avoid possibility of // a race condition if the last subscriber unsubscribes // immediately after the null check and before the event is raised. SettingChangedHandler handler = SettingChanged; if (handler != null) { handler(e); } }
/// <summary> /// Create a new setting /// </summary> /// <param name="type">The type of this setting</param> /// <param name="serialisationType">The serialisationType of the setting</param> /// <param name="keyName">The name of the key in the registry</param> /// <param name="friendlyName">The name of the setting in the UI</param> /// <param name="defaultValue">Default value of the setting</param> /// <param name="changedHandler">Called when the setting changed</param> protected CECSetting(CECSettingType type, CECSettingSerialisationType serialisationType, string keyName, string friendlyName, object defaultValue, SettingChangedHandler changedHandler) { SettingType = type; SettingSerialisationType = serialisationType; KeyName = keyName; FriendlyName = friendlyName; DefaultValue = defaultValue; _value = defaultValue; if (changedHandler != null) SettingChanged += changedHandler; }
internal Setting(bool isReadonly, string key, T value, bool canBeEmpty, SettingChangedHandler handler) { _isReadonly = isReadonly; _key = key; _value = value; _defValue = value; _canBeEmpty = canBeEmpty; if (handler != null) { ValueChanged += new SettingChangedHandler(handler); } }
/// <summary> /// Create a new setting /// </summary> /// <param name="type">The type of this setting</param> /// <param name="serialisationType">The serialisationType of the setting</param> /// <param name="keyName">The name of the key in the registry</param> /// <param name="friendlyName">The name of the setting in the UI</param> /// <param name="defaultValue">Default value of the setting</param> /// <param name="changedHandler">Called when the setting changed</param> protected CECSetting(CECSettingType type, CECSettingSerialisationType serialisationType, string keyName, string friendlyName, object defaultValue, SettingChangedHandler changedHandler) { SettingType = type; SettingSerialisationType = serialisationType; KeyName = keyName; FriendlyName = friendlyName; DefaultValue = defaultValue; _value = defaultValue; if (changedHandler != null) { SettingChanged += changedHandler; } }
public CECSettingVendorId(string keyName, string friendlyName, CecVendorId defaultValue, SettingChangedHandler changedHandler) : base(CECSettingType.VendorId, keyName, friendlyName, (int)defaultValue, changedHandler, OnFormat, new List<int> { (int) CecVendorId.Unknown, (int) CecVendorId.Akai, (int) CecVendorId.Benq, (int) CecVendorId.Daewoo, (int) CecVendorId.Grundig, (int) CecVendorId.LG, (int) CecVendorId.Medion, (int) CecVendorId.Onkyo, (int) CecVendorId.Panasonic, (int) CecVendorId.Philips, (int) CecVendorId.Pioneer, (int) CecVendorId.Samsung, (int) CecVendorId.Sharp, (int) CecVendorId.Sony, (int) CecVendorId.Toshiba, (int) CecVendorId.Vizio, (int) CecVendorId.Yamaha }) { }
public CECSettingUShort(string keyName, string friendlyName, ushort defaultValue, SettingChangedHandler changedHandler) : base(CECSettingType.UShort, keyName, friendlyName, string.Format("{0,4:X}", defaultValue), changedHandler) { }
public CECSettingNumeric(CECSettingType type, string keyName, string friendlyName, int defaultValue, SettingChangedHandler changedHandler) : this(type, keyName, friendlyName, defaultValue, changedHandler, null) { }
public CECSettingNumeric(string keyName, string friendlyName, int defaultValue, SettingChangedHandler changedHandler, ListControlConvertEventHandler format) : this(CECSettingType.Numeric, keyName, friendlyName, defaultValue, changedHandler, format) { }
public CECSettingNumeric(CECSettingType type, string keyName, string friendlyName, int defaultValue, SettingChangedHandler changedHandler, ListControlConvertEventHandler format, List <int> items) : base(type, CECSettingSerialisationType.Numeric, keyName, friendlyName, defaultValue, changedHandler) { BaseItems = items; Format += format; }
public CECSettingString(string keyName, string friendlyName, string defaultValue, SettingChangedHandler changedHandler) : this(CECSettingType.String, keyName, friendlyName, defaultValue, changedHandler) { }
public CECSettingNumeric(CECSettingType type, string keyName, string friendlyName, int defaultValue, SettingChangedHandler changedHandler) : this(type, keyName, friendlyName, defaultValue, changedHandler, null) { }
public CECSettingString(CECSettingType type, string keyName, string friendlyName, string defaultValue, SettingChangedHandler changedHandler) : base(type, CECSettingSerialisationType.String, keyName, friendlyName, defaultValue, changedHandler) { }
public CECSettingVendorId(string keyName, string friendlyName, CecVendorId defaultValue, SettingChangedHandler changedHandler) : base(CECSettingType.VendorId, keyName, friendlyName, (int)defaultValue, changedHandler, OnFormat, new List <int> { (int)CecVendorId.Unknown, (int)CecVendorId.Akai, (int)CecVendorId.Benq, (int)CecVendorId.Daewoo, (int)CecVendorId.Grundig, (int)CecVendorId.LG, (int)CecVendorId.Medion, (int)CecVendorId.Onkyo, (int)CecVendorId.Panasonic, (int)CecVendorId.Philips, (int)CecVendorId.Pioneer, (int)CecVendorId.Samsung, (int)CecVendorId.Sharp, (int)CecVendorId.Sony, (int)CecVendorId.Toshiba, (int)CecVendorId.Vizio, (int)CecVendorId.Yamaha }) { }
public CECSettingLogicalAddress(string keyName, string friendlyName, CecLogicalAddress defaultValue, SettingChangedHandler changedHandler) : base(CECSettingType.LogicalAddress, keyName, friendlyName, (int)defaultValue, changedHandler, OnFormat) { LowerLimit = (int) CecLogicalAddress.Tv; UpperLimit = (int) CecLogicalAddress.Broadcast; }
public CECSettingLogicalAddresses(string keyName, string friendlyName, CecLogicalAddresses defaultValue, SettingChangedHandler changedHandler) : base(CECSettingType.LogicalAddresses, keyName, friendlyName, SerialiseLogicalAddresses(defaultValue), changedHandler) { }
public CECSettingUShort(string keyName, string friendlyName, ushort defaultValue, SettingChangedHandler changedHandler) : base(CECSettingType.UShort, keyName, friendlyName, string.Format("{0,4:X}", defaultValue), changedHandler) { }
public CECSettingNumeric(CECSettingType type, string keyName, string friendlyName, int defaultValue, SettingChangedHandler changedHandler, ListControlConvertEventHandler format, List<int> items) : base(type, CECSettingSerialisationType.Numeric, keyName, friendlyName, defaultValue, changedHandler) { BaseItems = items; Format += format; }
public CECSettingLogicalAddresses(string keyName, string friendlyName, CecLogicalAddresses defaultValue, SettingChangedHandler changedHandler) : base(CECSettingType.LogicalAddresses, keyName, friendlyName, SerialiseLogicalAddresses(defaultValue), changedHandler) { }
public CECSettingDeviceType(string keyName, string friendlyName, CecDeviceType defaultValue, SettingChangedHandler changedHandler) : base(CECSettingType.DeviceType, keyName, friendlyName, (int)defaultValue, changedHandler, OnFormat) { LowerLimit = (int)CecDeviceType.Tv; UpperLimit = (int)CecDeviceType.AudioSystem; }
public CECSettingString(string keyName, string friendlyName, string defaultValue, SettingChangedHandler changedHandler) : this(CECSettingType.String, keyName, friendlyName, defaultValue, changedHandler) { }
public CECSettingString(CECSettingType type, string keyName, string friendlyName, string defaultValue, SettingChangedHandler changedHandler) : base(type, CECSettingSerialisationType.String, keyName, friendlyName, defaultValue, changedHandler) { }
public CECSettingBool(string keyName, string friendlyName, bool defaultValue, SettingChangedHandler changedHandler) : base(CECSettingType.Bool, keyName, friendlyName, defaultValue ? 1 : 0, changedHandler) { }
public CECSettingNumeric(string keyName, string friendlyName, int defaultValue, SettingChangedHandler changedHandler, ListControlConvertEventHandler format) : this(CECSettingType.Numeric, keyName, friendlyName, defaultValue, changedHandler, format) { }
public CECSettingBool(string keyName, string friendlyName, bool defaultValue, SettingChangedHandler changedHandler) : base(CECSettingType.Bool, keyName, friendlyName, defaultValue ? 1 : 0, changedHandler) { }
public CECSettingLogicalAddress(string keyName, string friendlyName, CecLogicalAddress defaultValue, SettingChangedHandler changedHandler) : base(CECSettingType.LogicalAddress, keyName, friendlyName, (int)defaultValue, changedHandler, OnFormat) { LowerLimit = (int)CecLogicalAddress.Tv; UpperLimit = (int)CecLogicalAddress.Broadcast; }
public CECSettingIdleTime(string keyName, string friendlyName, TimeoutSetting.Setting defaultValue, SettingChangedHandler changedHandler) : base(CECSettingType.Numeric, keyName, friendlyName, (int)defaultValue, changedHandler, OnFormat) { LowerLimit = (int)TimeoutSetting.Setting.Disabled; UpperLimit = (int)TimeoutSetting.Setting.Hr6; }
public CECSettingByte(string keyName, string friendlyName, byte defaultValue, SettingChangedHandler changedHandler) : base(CECSettingType.Byte, keyName, friendlyName, defaultValue, changedHandler) { }
public CECSettingDeviceType(string keyName, string friendlyName, CecDeviceType defaultValue, SettingChangedHandler changedHandler) : base(CECSettingType.DeviceType, keyName, friendlyName, (int)defaultValue, changedHandler, OnFormat) { LowerLimit = (int) CecDeviceType.Tv; UpperLimit = (int) CecDeviceType.AudioSystem; }
public CECSettingByte(string keyName, string friendlyName, byte defaultValue, SettingChangedHandler changedHandler) : base(CECSettingType.Byte, keyName, friendlyName, defaultValue, changedHandler) { }