public void IssueAsyncStageOperationDone(GitAsyncOperation operation) { if (AsyncStageOperationDone != null) { AsyncStageOperationDone.Invoke(operation); } }
private void StartUpdateChaches(GitRepoStatus status) { if (gitManager.Threading.IsFlagSet(GitSettingsJson.ThreadingType.CommitListGui)) { loadingCommits = asyncManager.QueueWorkerWithLock(UpdateChaches, status, "Loading Commits", (o) => { OnCachesUpdated(); }, commitCachesLock); } else { UpdateChaches(status); OnCachesUpdated(); } }
private void CreateStatusListThreaded(GitRepoStatus status, string[] paths) { if (statusListUpdateOperation != null && !statusListUpdateOperation.IsDone) { needsAsyncStatusListUpdate = true; if (paths != null) { foreach (var path in paths) { pathsToBeUpdated.Add(path); } } } else { statusListUpdateOperation = asyncManager.QueueWorkerWithLock(() => { CreateStatusListInternal(status, paths, true); }, (o) => { updatingPaths.Clear(); Repaint(); }, statusListLock, true); if (paths != null) { foreach (var path in paths) { updatingPaths.Add(path); } } foreach (var path in pathsToBeUpdated) { updatingPaths.Add(path); } pathsToBeUpdated.Clear(); } }
private void OnAsyncStageOperationDone(GitAsyncOperation operation) { Repaint(); }
private void StartUpdateChaches(GitRepoStatus status) { loadingCommits = GitAsyncManager.QueueWorker(UpdateChachesThreaded, status, "Loading Commits"); }