public async void OnNewListClick() { if (ActiveUser.IsActive == true) { CreateCardListDTO createCardListDTO = new CreateCardListDTO() { BoardId = parentBoardId, Color = "white", Name = "Untitled list" }; BasicCardListDTO basicCardListDTO = await CardListService.CreateCardList(ActiveUser.Instance.LoggedUser.Token, createCardListDTO); if (basicCardListDTO != null) { var list = new ReadCardList(basicCardListDTO); CardListViewModels.Add(new CardListViewModel(list, OnDeleteCardList, detailsContainer, OnMoveCard, OnSelectedCard)); } else { ShowMessageBox(null, "Error creating list."); } } else { ShowMessageBox(null, "Error getting user."); } }
private void MoveCardAction(object obj) { BasicCardDTO card = (BasicCardDTO)obj; ReadCard oldCard = null; ReadCardList oldList = null; if (card != null) { foreach (var vm in CardListViewModels) { oldCard = vm.CardList.Cards.FirstOrDefault(c => c.CardId == card.CardId); oldList = vm.CardList; if (oldCard != null) { break; } } oldList.Cards.Remove(oldCard); CardListViewModel newList = CardListViewModels.FirstOrDefault(c => c.CardList.ListId == card.ListId); if (newList != null) { oldCard.ListId = card.ListId; newList.CardList.Cards.Add(oldCard); } } }
private void UpdateCardListAction(object obj) { BasicCardListDTO newList = (BasicCardListDTO)obj; if (newList != null && newList.ListId == cardList.ListId) { ReadCardList.UpdateCardList(CardList, newList); } }
public void OnSelectedCard(ReadCardList cardList) { foreach (CardListViewModel vm in CardListViewModels) { if (vm.CardList.ListId != cardList.ListId) { vm.SelectedCard = null; } } }
private void ListBox_Drop(object sender, DragEventArgs e) { if (!e.Data.GetDataPresent(typeof(MoveCard))) { return; } MoveCard moveCard = e.Data.GetData(typeof(MoveCard)) as MoveCard; ReadCardList cardList = ((CardListViewModel)DataContext).CardList; moveCard.NewListId = cardList.ListId; ((CardListViewModel)DataContext).OnMoveCard(moveCard); }
public CardListViewModel(ReadCardList list, Action <ReadCardList> onDeleteCardList, IPanelContainer container, Action <MoveCard> onMoveCard, Action <ReadCardList> onSelectedCard) : base(container) { //Data this.CardList = list; //Commands AddCardCommand = new CommandBase(OnAddCardClick); DeleteCardListCommand = new CommandBase <ReadCardList>(OnDeleteCardList); DeleteCardListAction = onDeleteCardList; RenameCardListCommand = new CommandBase <ReadCardList>(OnRenameCardList); DeleteCardCommand = new CommandBase <ReadCard>(OnDeleteCard); OnMoveCardAction = onMoveCard; OnCardSelectedAction = onSelectedCard; InitActions(); Subscribe(); }
public async void OnRenameCardListSubmit(IEditable model) { if (model != null && ActiveUser.IsActive == true && CardList != null) { EditCardList editList = model as EditCardList; bool succ = await CardListService.UpdateCardList(ActiveUser.Instance.LoggedUser.Token, editList.ListId, new UpdateCardListDTO(editList)); if (succ == true) { ReadCardList.UpdateCardList(cardList, editList); DestroyPanel(); } else { ShowMessageBox(null, "Error renaming card list."); } } else { ShowMessageBox(null, "Error getting user."); } }
public async void OnDeleteCardList(ReadCardList cardList) { if (ActiveUser.IsActive == true) { bool succ = await CardListService.DeleteCardList(ActiveUser.Instance.LoggedUser.Token, cardList.ListId); if (succ == true) { CardListViewModel vm = CardListViewModels.FirstOrDefault(x => x.CardList.ListId == cardList.ListId); CardListViewModels.Remove(vm); vm.DestroyPanel(); ShowMessageBox(null, "Card list deleted."); } else { ShowMessageBox(null, "Error deleting card list."); } } else { ShowMessageBox(null, "Error getting user."); } }
private void listbox_MouseMove(object sender, MouseEventArgs e) { base.OnMouseMove(e); if (e.LeftButton == MouseButtonState.Pressed && ((CardListViewModel)DataContext).SelectedCard != null) { if (DataContext is CardListViewModel) { CardListViewModel cardListVM = DataContext as CardListViewModel; ReadCardList cardList = cardListVM.CardList; ReadCard card = cardListVM.SelectedCard; MoveCard moveCard = new MoveCard() { CardId = card.CardId, OldListId = cardList.ListId, NewListId = cardList.ListId }; DataObject data = new DataObject(); data.SetData(typeof(MoveCard), moveCard); DragDrop.DoDragDrop(this, data, DragDropEffects.Move); cardListVM.OnMoveCardDrag(card.CardId); } } }
public void OnRenameCardList(ReadCardList cardList) { var panel = new EditCardListViewModel(OnRenameCardListSubmit, new EditCardList(cardList)); InstantiatePanel(panel); }
public void OnDeleteCardList(ReadCardList card) { DeleteCardListAction?.Invoke(card); }