Ejemplo n.º 1
0
 private IEnumerable <BitmapViewModel> CreateBitmapViewModels(BitmapRepository bitmapRepository, BitmapThumbnailRepository thumbnailRepository)
 {
     return(bitmapRepository.ListAllBitmaps().Select(x => new BitmapViewModel(x, thumbnailRepository.Load(x))));
 }
Ejemplo n.º 2
0
        public AnimationCreationViewModel(BitmapRepository bitmapRepository, BitmapStoryboardCreator creator, BitmapThumbnailRepository thumbnailRepository, int numberOfRows, int numberOfTubes)
        {
            _bitmapRepository = bitmapRepository;
            _creator          = creator;
            _numberOfRows     = numberOfRows;
            _numberOfTubes    = numberOfTubes;

            this.SelectImage = ReactiveCommand.Create(() =>
            {
                if (_bitmapSelectionViewModel == null)
                {
                    _bitmapSelectionViewModel = new BitmapSelectionViewModel(bitmapRepository, thumbnailRepository);
                    _bitmapSelectionViewModel.BitmapSelected.Subscribe(onNext =>
                    {
                        _bitmapSelectionControl?.Close();
                        BitmapViewModel = onNext;
                    });
                }

                _bitmapSelectionControl           = new BitmapSelectionControl();
                _bitmapSelectionControl.ViewModel = _bitmapSelectionViewModel;
                _bitmapSelectionControl.ShowDialog();
            });

            var canSave = this.WhenAnyValue(
                x => x.Name,
                x => x.BitmapViewModel,
                x => x.Delay,
                (name, bitmapViewModel, delay) =>
                !String.IsNullOrWhiteSpace(name) &&
                bitmapViewModel != null &&
                DelayIsValid(delay)
                );

            IObservable <bool> canStart = this.WhenAnyValue(x => x.BitmapViewModel, x => x.Name, (bitmapViewModel, name) => bitmapViewModel != null);


            this.Save = ReactiveCommand.Create(CreateStoryboard, canSave);

            this.Start = ReactiveCommand.Create(CreateStoryboard, canStart);

            this.Back = ReactiveCommand.Create(() => {});
        }
Ejemplo n.º 3
0
 public BitmapSelectionViewModel(BitmapRepository bitmapRepository, BitmapThumbnailRepository thumbnailRepository)
 {
     _thumbnailRepository = thumbnailRepository;
     BitmapFolder         = bitmapRepository.FolderPath;
     Bitmaps = CreateBitmapViewModels(bitmapRepository, thumbnailRepository);
 }