protected ControlWrapper(string valueName, CManagedPrefPage_v3 parent) { _valueName = valueName; _parent = parent; AssociateValue(); //ConfValuesManager.GetInstance().OnValueChanged += new ConfValuesManager.ValueChangedDelegate(onValueChanged); if (value == null) { ConfValuesManager.GetInstance().OnValueCreated += value_OnCreated; } }
private void AssociateValue() { if (value != null) { return; } value = ConfValuesManager.GetInstance().GetValueByName(_valueName); if (value != null) { value.OnChanged += value_OnChanged; } }
/// <summary> /// Unregisters this instance from the ConfValuesManager, so that the instance may be freed when no longer used /// </summary> public virtual void Unregister() { ConfValuesManager.GetInstance().RemoveVal(this); OnChanged = null; }
/// <summary> /// Initializes the value - registers with the manager which sends events about updating. This should be /// called when the value is done setting up and is fully usable. /// </summary> protected void Init() { ConfValuesManager.GetInstance().AddVal(this); ConfValuesManager.GetInstance().FireValueChanged(Name); }