using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Tango.Core.Commands;
using Tango.MachineStudio.Common.Notifications;
using Tango.MachineStudio.UI.TFS;
using Tango.SharedUI;
using Tango.TFS;
namespace Tango.MachineStudio.UI.ViewModels
{
public class ResolvedIssuesViewVM : DialogViewVM
{
private Action<WorkItem> _onApprove;
private Action<WorkItem> _onDecline;
public TeamFoundationServiceExtendedClient TFSClient { get; set; }
public RelayCommand<WorkItem> ApproveCommand { get; set; }
public RelayCommand<WorkItem> DeclineCommand { get; set; }
private bool _isAvailable;
public bool IsAvailable
{
get { return _isAvailable; }
set { _isAvailable = value; RaisePropertyChangedAuto(); }
}
public ResolvedIssuesViewVM() : base()
{
IsAvailable = true;
ApproveCommand = new RelayCommand<WorkItem>(ApproveIssue);
DeclineCommand = new RelayCommand<WorkItem>(DeclineIssue);
}
public ResolvedIssuesViewVM(TeamFoundationServiceExtendedClient tfsClient, Action<WorkItem> onApprove, Action<WorkItem> onDecline) : this()
{
TFSClient = tfsClient;
_onApprove = onApprove;
_onDecline = onDecline;
}
private void DeclineIssue(WorkItem workItem)
{
_onDecline(workItem);
}
private void ApproveIssue(WorkItem workItem)
{
_onApprove(workItem);
}
public void Close()
{
Accept();
}
}
}