public void Drop(IDropInfo dropInfo) { NoteViewModel sourceItem = dropInfo.Data as NoteViewModel; if (sourceItem == null) { return; } NotebookMenuItem targetItem = dropInfo.TargetItem as NotebookMenuItem; ListViewItem targetElement = dropInfo.VisualTarget as ListViewItem; bool removeFromSourceCollection = false; if (targetItem != null) { if (sourceItem.Note.Notebook != targetItem.Notebook.ID) { if (sourceItem.Note.InTrashCan) { sourceItem.Note.InTrashCan = false; //sourceItem.Note.Save(); } Hub.Instance.Storage.DataStore.MoveNote(sourceItem.Note, targetItem.Notebook); if (SelectedNotebook != null) { removeFromSourceCollection = true; } } else if (sourceItem.Note.InTrashCan) { sourceItem.Note.InTrashCan = false; //sourceItem.Note.Save(); removeFromSourceCollection = true; } } else if (targetElement != null) { if (targetElement.Name == "Favorites") { sourceItem.Note.Favourite = true; } else if (targetElement.Name == "Trash" && !sourceItem.Note.Protected) { sourceItem.Note.InTrashCan = true; removeFromSourceCollection = true; } sourceItem.SaveNote(); } if (removeFromSourceCollection) { ObservableCollection <NoteViewModel> sourceList = dropInfo.DragInfo.SourceCollection as ObservableCollection <NoteViewModel>; sourceList?.Remove(sourceItem); } }
private void OnDataContextChanged(object sender, DependencyPropertyChangedEventArgs i) { try { if (i.OldValue != null && i.OldValue is NoteViewModel) { NoteViewModel oldModel = (NoteViewModel)i.OldValue; oldModel.SaveNote(true); oldModel.Note.NoteRefreshedFromDisk -= Note_RefreshedFromDisk; } SupressOnTextChanged = true; if (TableToolbarPopup.IsOpen) { TableToolbarPopup.IsOpen = false; } if (CurrentModel == null) { return; } MarkdownText.Text = CurrentModel.Note.DecryptedText; CurrentModel.Note.NoteRefreshedFromDisk += Note_RefreshedFromDisk; UpdateEntities(); ViewModelLocator.Instance.NoteView.CheckBoxCheckUpdatedTextCommand = new SimpleCommand(UpdateTextByCheckBox); } finally { SupressOnTextChanged = false; } }
private void HideSettings(object sender, MouseButtonEventArgs e) { if (ColorCanvas.SelectedColor.HasValue) { var color = ColorCanvas.SelectedColor.Value; var note = _noteViewModel.Note; note.Color = new SolidColorBrush(Color.FromRgb(color.R, color.G, color.B)); _noteViewModel.SaveNote(); SetLuminance(color); } OptionsGrid.Visibility = Visibility.Hidden; }
public void Dropped(IDropInfo dropInfo) { ObservableCollection <NoteViewModel> targetList = dropInfo.TargetCollection as ObservableCollection <NoteViewModel>; if (targetList != null) { for (int i = 0; i < targetList.Count; i++) { NoteViewModel nvm = targetList[i]; nvm.Note.SortIndex = i; nvm.SaveNote(); } } }