示例#1
0
        void IRefreshableView.Refresh()
        {
            BranchInfo workingBranch = null;

            IThreadWaiter waiter = ThreadWaiter.GetWaiter(10);

            waiter.Execute(
                /*threadOperationDelegate*/ delegate
            {
                workingBranch = OverlappedCalculator.GetWorkingBranch(
                    mWkInfo.ClientPath);
            },
                /*afterOperationDelegate*/ delegate
            {
                if (waiter.Exception != null)
                {
                    ExceptionsHandler.DisplayException(waiter.Exception);
                    return;
                }

                // No need for merge info if it's a label
                if (workingBranch == null)
                {
                    return;
                }

                mMergeController.UpdateMergeObjectInfoIfNeeded(workingBranch);
                mMergeViewLogic.Refresh();
            });
        }
示例#2
0
        void IIncomingChangesTab.AutoRefresh()
        {
            BranchInfo workingBranch = null;

            IThreadWaiter waiter = ThreadWaiter.GetWaiter(10);

            waiter.Execute(
                /*threadOperationDelegate*/ delegate
            {
                workingBranch = OverlappedCalculator.GetWorkingBranch(
                    mWkInfo.ClientPath);
            },
                /*afterOperationDelegate*/ delegate
            {
                if (waiter.Exception != null)
                {
                    ExceptionsHandler.DisplayException(waiter.Exception);
                    return;
                }

                mMergeController.UpdateMergeObjectInfoIfNeeded(workingBranch);
                mMergeViewLogic.AutoRefresh();
            });
        }