Esempio n. 1
0
        public void BookChanged(object sender, BookEventArgs e)
        {
            if (e.Book == null)
            {
                return;
            }
            switch (e.State)
            {
            case BookEventArgs.BookState.Added:
                var bookExistsAdded =
                    FilteredBooks.Any(
                        b =>
                        b.Id
                        == e.Book.Id);
                if (!bookExistsAdded)
                {
                    FilteredBooks.Add(e.Book);
                }
                NotifyPropertyChanged("FilterCount");
                break;

            case BookEventArgs.BookState.Removed:
                var bookExistsRemoved =
                    FilteredBooks.Any(
                        b =>
                        b.Id
                        == e.Book.Id);
                if (bookExistsRemoved)
                {
                    FilteredBooks.Remove(e.Book);
                }
                NotifyPropertyChanged("FilterCount");
                break;

            case BookEventArgs.BookState.Updated:     //Remove book from list and re-add it
                var bookExistsUpdated =
                    FilteredBooks.FirstOrDefault(
                        b =>
                        b.FullPathAndFileName
                        == e.Book.FullPathAndFileName);
                if (bookExistsUpdated != null)
                {
                    var index = FilteredBooks.IndexOf(bookExistsUpdated);
                    FilteredBooks.RemoveAt(index);
                    FilteredBooks.Insert(index, e.Book);
                }
                else
                {
                    FilteredBooks.Add(e.Book);
                }
                NotifyPropertyChanged("FilterCount");
                break;
            }
            //   FilteredBooks = new ObservableCollection<Book>(AllBooks);
        }
        public void i_BookChanged(object sender, BookEventArgs e)
        {
            if (e.Book == null)
            {
                return;
            }
            switch (e.State)
            {
            case (BookEventArgs.BookState.Added):
                var bookExistsAdded =
                    AllBooks.Any(
                        b =>
                        b.Id
                        == e.Book.Id);
                if (!bookExistsAdded)
                {
                    AllBooks.Add(e.Book);
                }
                NotifyPropertyChanged("BooksCount");
                break;

            case (BookEventArgs.BookState.Removed):
                var bookExistsRemoved =
                    AllBooks.Any(
                        b =>
                        b.Id
                        == e.Book.Id);
                if (bookExistsRemoved)
                {
                    AllBooks.Remove(e.Book);
                }
                NotifyPropertyChanged("BooksCount");
                break;

            case (BookEventArgs.BookState.Updated):     //Remove book from list and re-add it
                var bookExistsUpdated =
                    AllBooks.FirstOrDefault(
                        b =>
                        b.BookFile.FullPathAndFileNameWithExtension
                        == e.Book.BookFile.FullPathAndFileNameWithExtension);
                if (bookExistsUpdated != null)
                {
                    var index = AllBooks.IndexOf(bookExistsUpdated);
                    AllBooks.Remove(bookExistsUpdated);
                    AllBooks.Insert(index, e.Book);
                }
                else
                {
                    AllBooks.Add(e.Book);
                }
                NotifyPropertyChanged("BooksCount");
                break;
            }
        }
Esempio n. 3
0
        private void _bookCore_BookChanged(object sender, BookEventArgs e)
        {
            var existing = Books.FirstOrDefault(x => x.Id == e.Book.Id);

            if (existing == null)
            {
                Application.Current.Dispatcher.Invoke(() => Books.Add(e.Book));
            }
            else
            {
                Application.Current.Dispatcher.Invoke(() => existing = e.Book);
            }
        }
Esempio n. 4
0
        private void EditPopup_PrimaryButtonClick(ContentDialog sender, ContentDialogButtonClickEventArgs args)
        {
            if (cbox.IsChecked == false)
            {
                _viewmodel.SelectedBook.DatePublished = null;
            }

            _viewmodel.UpdateBook(_viewmodel.SelectedBook);
            var a = new BookEventArgs
            {
                Book  = _viewmodel.SelectedBook,
                State = BookEventArgs.BookState.Updated
            };

            _viewmodel.BookChanged(this, a);
            tbutton.IsChecked = false;
        }
Esempio n. 5
0
        private void MainViewModel_ImageEditingStarted(object sender, BookEventArgs e)
        {
            try
            {
                // egy dialógusablakban bekérjük a fájlnevet
                OpenFileDialog dialog = new OpenFileDialog();
                dialog.CheckFileExists  = true;
                dialog.Filter           = "Képfájlok|*.jpg;*.jpeg;*.bmp;*.tif;*.gif;*.png;";
                dialog.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyPictures);
                Boolean?result = dialog.ShowDialog();

                if (result == true)
                {
                    // kép létrehozása (a megfelelő méretekkel)
                    _service.CreateImage(e.Book, ImageHandler.OpenAndResize(dialog.FileName, 600));
                }
            }
            catch { }
        }
Esempio n. 6
0
        private void gview_Drop(object sender, DragEventArgs e)
        {
            viewmodel.BooksScroll = ScrollMode.Enabled;



            object gridSource;

            e.Data.Properties.TryGetValue("gridSource", out gridSource);

            if (gridSource == sender)
            {
                return;
            }

            object sourceItem;

            e.Data.Properties.TryGetValue("item", out sourceItem);
            if (sourceItem == null)
            {
                return;
            }

            // viewmodel.ShelfBrush = _shelfBrushColor;
            // viewmodel.GridBrush = _gridBrushColor;


            //Remove it from shelf
            var book = (Book)sourceItem;

            viewmodel.ShelfBooks.Remove(book);
            book.Shelf = false;


            var a = new BookEventArgs();

            a.Book  = book;
            a.State = BookEventArgs.BookState.Updated;
            viewmodel.BookChanged(this, a);
            viewmodel.UpdateBook(book);
        }
Esempio n. 7
0
        private void gview_Drop(object sender, DragEventArgs e)
        {
            EnableScroll();
            object gridSource;

            e.Data.Properties.TryGetValue("gridSource", out gridSource);

            if (gridSource == sender)
            {
                return;
            }

            object sourceItem;

            e.Data.Properties.TryGetValue("item", out sourceItem);
            if (sourceItem == null)
            {
                return;
            }

            _viewmodel.ShelfBrush = _shelfBrushColor;
            _viewmodel.GridBrush  = _gridBrushColor;

            //Remove it from shelf
            var book = (Book)sourceItem;

            _viewmodel.ShelfBooks.Remove(book);
            book.Shelf = false;

            var a = new BookEventArgs
            {
                Book  = book,
                State = BookEventArgs.BookState.Updated
            };

            _viewmodel.BookChanged(this, a);
            _viewmodel.UpdateBook(book);
            ShellViewModel.ShowMessage("Removed from shelf", null);
        }
Esempio n. 8
0
 public virtual void OnReadBookClick(BookEventArgs e)
 {
     ReadBookEvent?.Invoke(this, e);
 }
Esempio n. 9
0
 public void OnBookChanged(Book book, BookEventArgs.BookState bookState, int? progress)
 {
     BookChanged?.Invoke(this, new BookEventArgs {Book = book, State = bookState, Progress = progress});
 }
Esempio n. 10
0
 public void OnBookRent(object source, BookEventArgs e)
 {
     System.Console.WriteLine("Ok! Confirmed! the book {0} was rent", e.Book.Title);
 }
Esempio n. 11
0
        public void i_BookChanged(object sender, BookEventArgs e)
        {
            if (e.Book == null)
            {
                return;
            }
            switch (e.State)
            {
                case (BookEventArgs.BookState.Added):
                    var bookExistsAdded =
                        AllBooks.Any(
                            b =>
                                b.Id
                                == e.Book.Id);
                    if (!bookExistsAdded)
                    {
                        AllBooks.Add(e.Book);
                    }
                    NotifyPropertyChanged("BooksCount");
                    break;

                case (BookEventArgs.BookState.Removed):
                    var bookExistsRemoved =
                        AllBooks.Any(
                            b =>
                                b.Id
                                == e.Book.Id);
                    if (bookExistsRemoved)
                    {
                        AllBooks.Remove(e.Book);
                    }
                    NotifyPropertyChanged("BooksCount");
                    break;

                case (BookEventArgs.BookState.Updated): //Remove book from list and re-add it
                    var bookExistsUpdated =
                        AllBooks.FirstOrDefault(
                            b =>
                                b.BookFile.FullPathAndFileNameWithExtension
                                == e.Book.BookFile.FullPathAndFileNameWithExtension);
                    if (bookExistsUpdated != null)
                    {
                        var index = AllBooks.IndexOf(bookExistsUpdated);
                        AllBooks.Remove(bookExistsUpdated);
                        AllBooks.Insert(index, e.Book);
                    }
                    else
                    {
                        AllBooks.Add(e.Book);
                    }
                    NotifyPropertyChanged("BooksCount");
                    break;
            }
        }
Esempio n. 12
0
 private void OnBookChanged(BookEventArgs e)
 {
     BookChanged?.Invoke(this, e);
 }