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);
            }
        }
Esempio n. 2
0
    /// <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;
    }
Esempio n. 3
0
        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);
            }
        }
Esempio n. 4
0
        /// <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;
            }
        }
Esempio n. 5
0
 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)
 {
 }
Esempio n. 7
0
 public CECSettingNumeric(CECSettingType type, string keyName, string friendlyName, int defaultValue, SettingChangedHandler changedHandler) :
     this(type, keyName, friendlyName, defaultValue, changedHandler, null)
 {
 }
Esempio n. 8
0
 public CECSettingNumeric(string keyName, string friendlyName, int defaultValue, SettingChangedHandler changedHandler, ListControlConvertEventHandler format) :
     this(CECSettingType.Numeric, keyName, friendlyName, defaultValue, changedHandler, format)
 {
 }
Esempio n. 9
0
 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;
 }
Esempio n. 10
0
 public CECSettingString(string keyName, string friendlyName, string defaultValue, SettingChangedHandler changedHandler) :
   this(CECSettingType.String, keyName, friendlyName, defaultValue, changedHandler)
 {
 }
Esempio n. 11
0
 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)
 {
 }
Esempio n. 13
0
 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
 })
 {
 }
Esempio n. 14
0
 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;
 }
Esempio n. 15
0
 public CECSettingLogicalAddresses(string keyName, string friendlyName, CecLogicalAddresses defaultValue, SettingChangedHandler changedHandler) :
     base(CECSettingType.LogicalAddresses, keyName, friendlyName, SerialiseLogicalAddresses(defaultValue), changedHandler)
 {
 }
Esempio n. 16
0
 public CECSettingUShort(string keyName, string friendlyName, ushort defaultValue, SettingChangedHandler changedHandler) :
   base(CECSettingType.UShort, keyName, friendlyName, string.Format("{0,4:X}", defaultValue), changedHandler)
 {
 }
Esempio n. 17
0
 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;
 }
Esempio n. 18
0
 public CECSettingLogicalAddresses(string keyName, string friendlyName, CecLogicalAddresses defaultValue, SettingChangedHandler changedHandler)
     : base(CECSettingType.LogicalAddresses, keyName, friendlyName, SerialiseLogicalAddresses(defaultValue), changedHandler)
 {
 }
Esempio n. 19
0
 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)
 {
 }
Esempio n. 21
0
 public CECSettingString(CECSettingType type, string keyName, string friendlyName, string defaultValue, SettingChangedHandler changedHandler) :
   base(type, CECSettingSerialisationType.String, keyName, friendlyName, defaultValue, changedHandler)
 {
 }
Esempio n. 22
0
 public CECSettingBool(string keyName, string friendlyName, bool defaultValue, SettingChangedHandler changedHandler) :
   base(CECSettingType.Bool, keyName, friendlyName, defaultValue ? 1 : 0, changedHandler)
 {
 }
Esempio n. 23
0
 public CECSettingNumeric(string keyName, string friendlyName, int defaultValue, SettingChangedHandler changedHandler, ListControlConvertEventHandler format)
     : this(CECSettingType.Numeric, keyName, friendlyName, defaultValue, changedHandler, format)
 {
 }
Esempio n. 24
0
 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;
 }
Esempio n. 27
0
 public CECSettingByte(string keyName, string friendlyName, byte defaultValue, SettingChangedHandler changedHandler)
     : base(CECSettingType.Byte, keyName, friendlyName, defaultValue, changedHandler)
 {
 }
Esempio n. 28
0
 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;
 }
Esempio n. 29
0
 public CECSettingByte(string keyName, string friendlyName, byte defaultValue, SettingChangedHandler changedHandler) :
     base(CECSettingType.Byte, keyName, friendlyName, defaultValue, changedHandler)
 {
 }