public BranchesPresenter ( IBranchesView view, ICreateBranchView createView, IDeleteBranchView deleteView, IMergeView mergeView ) { _view = view; _createView = createView; _deleteView = deleteView; _mergeView = mergeView; _view.CreateBranch += OnShowCreateBranchView; _view.DeleteBranch += OnShowDeleteBranchView; _view.Merge += OnShowMerge; _view.SelectedBranchChanged += OnSelectedBranchChanged; _createView.Confirm += OnCreateBranch; _createView.Cancel += OnCreateViewCancel; _createView.UserInputTextChanged += OnCreateBranchTextChanged; _deleteView.Confirm += OnDeleteBranch; _deleteView.Cancel += OnDeleteViewCancel; _deleteView.SelectionChanged += OnDeleteViewSelectionChanged; _mergeView.Confirm += OnMerge; _mergeView.Cancel += OnCancelMerge; _mergeView.MergeStatusChanged += OnMergeStatusChanged; }
public BranchesPresenter ( IBranchesView view, ICreateBranchView createView, IDeleteBranchView deleteView, IMergeView mergeView, ISourceControlProvider provider ) : this(view, createView, deleteView, mergeView) { this.Provider = provider; }
public BranchesPresenter ( IBranchesView view, ICreateBranchView createView, IDeleteBranchView deleteView, IMergeView mergeView, ISourceControlProvider provider ) :this(view, createView, deleteView, mergeView) { this.Provider = provider; }
public MergeServiceViewModel(IShellViewModel shellViewModel, Microsoft.Practices.Prism.PubSubEvents.IEventAggregator aggregator, IExplorerItemViewModel selectedResource, IMergeView mergeView, IServer selectedServer) { if (shellViewModel == null) { throw new ArgumentNullException(nameof(shellViewModel)); } var localhostEnvironment = CreateEnvironmentFromServer(shellViewModel.LocalhostServer, shellViewModel); localhostEnvironment.Children = shellViewModel.ExplorerViewModel?.Environments[0].Children; _shellViewModel = shellViewModel; _selectedResource = selectedResource; ResourceToMerge = _selectedResource.IsVersion ? _selectedResource.Parent.ResourceName : _selectedResource.ResourceName; _view = mergeView; Environments = new ObservableCollection <IEnvironmentViewModel> { localhostEnvironment }; MergeConnectControlViewModel = new ConnectControlViewModel(_shellViewModel.LocalhostServer, aggregator, _shellViewModel.ExplorerViewModel.ConnectControlViewModel.Servers) { SelectedConnection = selectedServer }; LoadVersions(selectedResource.Server); ShowConnectControl = true; MergeConnectControlViewModel.CanEditServer = false; MergeConnectControlViewModel.CanCreateServer = false; MergeConnectControlViewModel.ServerConnected += async(sender, server) => { await ServerConnectedAsync(server).ConfigureAwait(false); }; MergeConnectControlViewModel.ServerDisconnected += ServerDisconnected; ShowConnectControl = false; IsRefreshing = false; RefreshCommand = new DelegateCommand(() => RefreshEnvironment(SelectedEnvironment.ResourceId).ConfigureAwait(false)); CancelCommand = new DelegateCommand(Cancel); MergeCommand = new DelegateCommand(Merge, CanMerge); MergeConnectControlViewModel.SelectedEnvironmentChanged += async(sender, id) => { await MergeExplorerViewModelSelectedEnvironmentChangedAsync(sender).ConfigureAwait(false); }; }