/// <summary> /// Set the current language, downloading missing language files. /// </summary> /// <param name="_Language">The new language.</param> static public void Set(SystemLanguage _Language, ChangeCallback _Callback) { if (!Ready) { return; } Current = _Language; if (!CurrentData.Load(Current)) { Debug.Log("Language: Missing language file, requesting."); Ready = false; ReadyCallback = _Callback; GameObject go = new GameObject("Download"); GetTextFromInternet dl = go.AddComponent <GetTextFromInternet>(); dl.Request("?language=" + _Language.ToString(), RequestCallback); } if (Ready && _Callback != null) { _Callback(); } }
/// <summary> /// Called after a language request. /// </summary> /// <param name="_Success">The success of the request.</param> /// <param name="_Text">The text returned by the request.</param> static private void RequestCallback(bool _Success, string _Text) { Debug.Log("Language: Language request finished."); if (!_Success) { Debug.LogError("Language: Unable to load language \"" + Current + "\", reverting to default. Error: " + _Text); SetDefault(); } else { // Load data CurrentData.Load(_Text); // Save data to disc CurrentData.Save(Current); } Ready = true; if (ReadyCallback != null) { ReadyCallback(); ReadyCallback = null; } }
public bool RemoveChangeListener(ChangeCallback callback, object userData) { ChangeListener item = new ChangeListener(); item.SetCallback(callback); item.SetUserData(userData); return(this.m_changeListeners.Remove(item)); }
public bool AddChangeListener(ChangeCallback callback, object userData) { ChangeListener item = new ChangeListener(); item.SetCallback(callback); item.SetUserData(userData); if (this.m_changeListeners.Contains(item)) { return(false); } this.m_changeListeners.Add(item); return(true); }
public ProgressBar( float relative, VoidCallback onDragStart = null, ChangeCallback changeCallback = null, ProgressColors colors = null, Key key = null ) : base(key) { this.relative = relative; this.colors = colors ?? new ProgressColors(); this.onDragStart = onDragStart; this.changeCallback = changeCallback; }
protected async void btnSaveOrUpdate_Click() { if (Model.CategoryId == 0) { await CategoryRepositoryAsync.AddAsync(Model); SaveOrUpdated?.Invoke(); } else { await CategoryRepositoryAsync.EditAsync(Model); await ChangeCallback.InvokeAsync(true); } IsShow = false; }
protected async void btnSaveOrUpdate_Click() { Model.CategoryId = Convert.ToInt32(CategoryId); if (Model.ProductId == 0) { await ProductRepositoryAsync.AddAsync(Model); SaveOrUpdated?.Invoke(); } else { await ProductRepositoryAsync.EditAsync(Model); await ChangeCallback.InvokeAsync(true); } IsShow = false; }
protected async void btnSaveOrUpdate_Click() { // 변경 내용 저장 Model.CustomerName = ModelEdit.CustomerName; Model.EmailAddress = ModelEdit.EmailAddress; if (Model.CustomerId == 0) { await CustomerRepositoryAsync.AddAsync(Model); SaveOrUpdated?.Invoke(); } else { await CustomerRepositoryAsync.EditAsync(Model); await ChangeCallback.InvokeAsync(true); } IsShow = false; }
public IDisposable RegisterChangeCallback(Action <object> callback, object state) { var disposable = new ChangeCallback() { Callback = callback, State = state }; lock (_lock) { if (_hasChanged) { Task.Run(() => disposable.Invoke()); } else { _callbacks.Add(disposable); } } return(disposable); }
public HistoryManager(ChangeCallback change) { this.change = change; }
public bool AddChangeListener(ChangeCallback callback) { return(this.AddChangeListener(callback, null)); }
public bool RemoveChangeListener(ChangeCallback callback) { return(this.RemoveChangeListener(callback, null)); }