Esempio n. 1
0
 /// <summary>
 /// Set a key-value and add a callback
 /// </summary>
 public void SetAndAddCallback(string key, object value, OnChangeHandler callback, CallNow callNow, RunOnMainThead runOnMainThread = RunOnMainThead.NO, WaitUntilDone waitUntilDone = WaitUntilDone.NO)
 {
     Set(key, value);
     AddCallback(key, callback, runOnMainThread, waitUntilDone);
     if (callNow == CallNow.YES)
     {
         Invoke(key);
     }
 }
Esempio n. 2
0
        /// <summary>
        /// Add a callback to a key
        /// </summary>
        public void AddCallback(string key, OnChangeHandler callback, RunOnMainThead runOnMainThread = RunOnMainThead.NO, WaitUntilDone waitUntilDone = WaitUntilDone.NO)
        {
            if (Contains(key) == false)
            {
                Configs[key] = null;
            }
            Delegate del = runOnMainThread == RunOnMainThead.YES ? (dynamic v) => Utilities.InvokeMain(() => callback(v), waitUntilDone == WaitUntilDone.YES ? true : false) : callback;

            if (Events.ContainsKey(key))
            {
                Events[key] = Delegate.Combine(Events[key], del);
            }
            else
            {
                Events[key] = del;
            }
        }
Esempio n. 3
0
 /// <summary>
 /// Set a key-value and add a callback
 /// </summary>
 public void SetAndAddCallback(string key, object value, OnChangeHandler callback, RunOnMainThead runOnMainThread = RunOnMainThead.NO, WaitUntilDone waitUntilDone = WaitUntilDone.NO)
 {
     SetAndAddCallback(key, value, callback, CallNow.NO, runOnMainThread, waitUntilDone);
 }