public BookVM EditBookExternalTest(BookVM targetBook) { if (targetBook == null) { return(null); } EditBookWindowVM vm = new EditBookWindowVM(targetBook.Book) { Parent = this }; vm.Init(null); EditBookWindow window = new EditBookWindow(vm); BookVM newBook = null; if (window.ShowDialog() == true) { newBook = new BookVM(vm.Book) { Parent = this }; } window.Content = null; return(newBook); }
public void EditBook() { BookVM newBook = EditBookExternal(SelectedBook); if (newBook != null) { SelectedBookItem = newBook; } }
public void AddBook() { BookVM newBook = AddBookExternal(null); if (newBook != null) { SelectedBookItem = newBook; } }
public BookFormVM(StudyUnitVM studyUnit) : base(studyUnit) { books = new ObservableCollection<BookVM>(); foreach (Book bookModel in studyUnit.BookModels) { BookVM book = new BookVM(bookModel) { Parent = this }; books.Add(book); } modelSyncher = new ModelSyncher<BookVM, Book>(this, books, studyUnit.BookModels); }
public BookFormVM(StudyUnitVM studyUnit) : base(studyUnit) { books = new ObservableCollection <BookVM>(); foreach (Book bookModel in studyUnit.BookModels) { BookVM book = new BookVM(bookModel) { Parent = this }; books.Add(book); } modelSyncher = new ModelSyncher <BookVM, Book>(this, books, studyUnit.BookModels); }
public BookVM AddBookExternal(BookRelation relation) { BookVM newBook = AddOrEditBook(null, relation); if (newBook != null) { using (UndoTransaction tx = new UndoTransaction(UndoManager)) { books.Add(newBook); StudyUnit.OnRemoveBooks(); tx.Commit(); } } return(newBook); }
public void RemoveBookExternal(BookVM targetBook) { if (targetBook == null) { return; } using (UndoTransaction tx = new UndoTransaction(UndoManager)) { books.Remove(targetBook); StudyUnit.OnRemoveBooks(); tx.Commit(); } if (SelectedBook == targetBook) { SelectedBookItem = null; } }
public BookVM SelectBookExternal(BookRelation relation) { SelectObjectWindowVM <BookVM> vm = new SelectObjectWindowVM <BookVM>(books); SelectObjectWindow window = new SelectObjectWindow(vm); BookVM book = SelectObjectWindow.Select(Resources.SelectBook, vm) as BookVM; //Select if (book != null) { using (UndoTransaction tx = new UndoTransaction(UndoManager)) { if (book.Book.FindRelation(relation) == null) { //Need not be generated here since ViewModel Since is re-generated every time EditBookWindow is displayed. book.Book.BookRelations.Add(relation); } StudyUnit.OnRemoveBooks(); tx.Commit(); } } return(book); }
public BookVM EditBookExternal(BookVM targetBook) { if (targetBook == null) { return(null); } BookVM newBook = AddOrEditBook(targetBook.Book, null); if (newBook != null) { using (UndoTransaction tx = new UndoTransaction(UndoManager)) { int index = books.IndexOf(targetBook); books.RemoveAt(index); books.Insert(index, newBook); StudyUnit.OnRemoveBooks(); tx.Commit(); } } return(newBook); }
private BookVM AddOrEditBook(Book book, BookRelation relation) { EditBookWindowVM vm = new EditBookWindowVM(book) { Parent = this }; vm.Init(relation); EditBookWindow window = new EditBookWindow(vm); window.Owner = Application.Current.MainWindow; BookVM newBook = null; if (window.ShowDialog() == true) { newBook = new BookVM(vm.Book) { Parent = this }; } window.Content = null; return(newBook); }
private void UpdateSelectedItem(BookVM newBook) { if (newBook != null) { SelectedBookItem = books.Contains(newBook) ? newBook : null; } }
public BookVM EditBookExternalTest(BookVM targetBook) { if (targetBook == null) { return null; } EditBookWindowVM vm = new EditBookWindowVM(targetBook.Book) { Parent = this }; vm.Init(null); EditBookWindow window = new EditBookWindow(vm); BookVM newBook = null; if (window.ShowDialog() == true) { newBook = new BookVM(vm.Book) { Parent = this }; } window.Content = null; return newBook; }
private BookVM AddOrEditBook(Book book, BookRelation relation) { EditBookWindowVM vm = new EditBookWindowVM(book) { Parent = this }; vm.Init(relation); EditBookWindow window = new EditBookWindow(vm); window.Owner = Application.Current.MainWindow; BookVM newBook = null; if (window.ShowDialog() == true) { newBook = new BookVM(vm.Book) { Parent = this }; } window.Content = null; return newBook; }
public BookVM EditBook(BookVM book) { return bookForm.EditBookExternal(book); }
public void RemoveBook(BookVM book) { bookForm.RemoveBookExternal(book); }
public BookVM EditBookExternal(BookVM targetBook) { if (targetBook == null) { return null; } BookVM newBook = AddOrEditBook(targetBook.Book, null); if (newBook != null) { using (UndoTransaction tx = new UndoTransaction(UndoManager)) { int index = books.IndexOf(targetBook); books.RemoveAt(index); books.Insert(index, newBook); StudyUnit.OnRemoveBooks(); tx.Commit(); } } return newBook; }