Exemple #1
0
        public void AddMovie(Movie movie)
        {
            movie.SequencialNo = _movies.Count;
            Add(movie);

            if (!_queue.Queue[_queue.QueueCount - 1].IsDummy) { return; }

            var lastMovie = _queue.Queue.LastOrDefault(m => !m.IsDummy);
            var index = _queue.Queue.IndexOf(lastMovie);
            var nmvm = new MovieBriefViewModel(movie, _eventAggregator);
            var dummyView = _queue.Queue[index + 1];
            nmvm.Scale = dummyView.Scale;
            nmvm.NewScale = dummyView.NewScale;
            nmvm.CenterX = dummyView.CenterX;
            nmvm.NewCenterX = dummyView.NewCenterX;
            nmvm.CenterY = dummyView.CenterY;
            nmvm.NewCenterY = dummyView.NewCenterY;
            nmvm.Opacity = dummyView.Opacity;
            nmvm.NewOpacity = dummyView.NewOpacity;
            nmvm.ZIndex = dummyView.ZIndex;
            nmvm.NewZIndex = dummyView.NewZIndex;

            _queue.Queue[index + 1] = nmvm;

            _rightNextIndex++;
        }
Exemple #2
0
        public void AddMovie(Movie movie)
        {
            movie.SequencialNo = _movies.Count;
            Add(movie);

            if (!_queue.Queue[_queue.QueueCount - 1].IsDummy)
            {
                return;
            }

            var lastMovie = _queue.Queue.LastOrDefault(m => !m.IsDummy);
            var index     = _queue.Queue.IndexOf(lastMovie);
            var nmvm      = new MovieBriefViewModel(movie, _eventAggregator);
            var dummyView = _queue.Queue[index + 1];

            nmvm.Scale      = dummyView.Scale;
            nmvm.NewScale   = dummyView.NewScale;
            nmvm.CenterX    = dummyView.CenterX;
            nmvm.NewCenterX = dummyView.NewCenterX;
            nmvm.CenterY    = dummyView.CenterY;
            nmvm.NewCenterY = dummyView.NewCenterY;
            nmvm.Opacity    = dummyView.Opacity;
            nmvm.NewOpacity = dummyView.NewOpacity;
            nmvm.ZIndex     = dummyView.ZIndex;
            nmvm.NewZIndex  = dummyView.NewZIndex;

            _queue.Queue[index + 1] = nmvm;

            _rightNextIndex++;
        }
Exemple #3
0
        public void InsertAtRight(MovieBriefViewModel newMovieBrief)
        {
            if (_queue.Count < _capacity)
            {
                newMovieBrief.CenterX = _factorsMap[_queue.Count].CenterX;
                newMovieBrief.CenterY = _factorsMap[_queue.Count].CenterY;
                newMovieBrief.Scale   = _factorsMap[_queue.Count].Scale;
                newMovieBrief.Opacity = _factorsMap[_queue.Count].Opacity;
                newMovieBrief.ZIndex  = _factorsMap[_queue.Count].ZIndex;
            }
            else
            {
                for (var i = _queue.Count - 1; i > 0; i--)
                {
                    _queue[i].NewCenterX = _factorsMap[i - 1].CenterX;
                    _queue[i].NewCenterY = _factorsMap[i - 1].CenterY;
                    _queue[i].NewScale   = _factorsMap[i - 1].Scale;
                    _queue[i].NewOpacity = _factorsMap[i - 1].Opacity;
                    _queue[i].NewZIndex  = _factorsMap[i - 1].ZIndex;
                }

                newMovieBrief.CenterX = _factorsMap[_queue.Count - 1].CenterX;
                newMovieBrief.CenterY = _factorsMap[_queue.Count - 1].CenterY;
                newMovieBrief.Scale   = _factorsMap[_queue.Count - 1].Scale;
                newMovieBrief.Opacity = _factorsMap[_queue.Count - 1].Opacity;
                newMovieBrief.ZIndex  = _factorsMap[_queue.Count - 1].ZIndex;
            }

            Insert(newMovieBrief, _queue.Count, 0);
        }
Exemple #4
0
        public void InsertAtRightHalf(MovieBriefViewModel newMovieBrief)
        {
            if (_queue.Count < _capacity)
            {
                newMovieBrief.CenterX = _factorsMap[_queue.Count].CenterX;
                newMovieBrief.CenterY = _factorsMap[_queue.Count].CenterY;
                newMovieBrief.Scale   = _factorsMap[_queue.Count].Scale;
                newMovieBrief.Opacity = _factorsMap[_queue.Count].Opacity;
                newMovieBrief.ZIndex  = _factorsMap[_queue.Count].ZIndex;
            }
            else
            {
                for (var i = _queue.Count - 1; i > _capacity / 2; i--)
                {
                    _queue[i].NewCenterX = _factorsMap[i - 1].CenterX;
                    _queue[i].NewCenterY = _factorsMap[i - 1].CenterY;
                    _queue[i].NewScale   = _factorsMap[i - 1].Scale;
                    _queue[i].NewOpacity = _factorsMap[i - 1].Opacity;
                    _queue[i].NewZIndex  = _factorsMap[i - 1].ZIndex;

                    _queue[i].SequencialNo = _queue[i - 1].SequencialNo;
                }

                newMovieBrief.CenterX = _factorsMap[_queue.Count - 1].CenterX;
                newMovieBrief.CenterY = _factorsMap[_queue.Count - 1].CenterY;
                newMovieBrief.Scale   = _factorsMap[_queue.Count - 1].Scale;
                newMovieBrief.Opacity = _factorsMap[_queue.Count - 1].Opacity;
                newMovieBrief.ZIndex  = _factorsMap[_queue.Count - 1].ZIndex;
            }

            _queue.RemoveAt(_capacity / 2);

            Insert(newMovieBrief, _queue.Count, 0);
        }
Exemple #5
0
        private void Insert(MovieBriefViewModel movieBrief, int insertIndex, int removeIndex)
        {
            _queue.Insert(insertIndex, movieBrief);

            if (_queue.Count > _capacity)
            {
                _queue.RemoveAt(removeIndex);
            }
        }
Exemple #6
0
        public void InsertAtLeft(MovieBriefViewModel movieBrief)
        {
            movieBrief.CenterX = _factorsMap[0].CenterX;
            movieBrief.CenterY = _factorsMap[0].CenterY;
            movieBrief.Scale   = _factorsMap[0].Scale;
            movieBrief.Opacity = _factorsMap[0].Opacity;
            movieBrief.ZIndex  = _factorsMap[0].ZIndex;

            for (var i = 0; i < _capacity - 1; i++)
            {
                _queue[i].NewCenterX = _factorsMap[i + 1].CenterX;
                _queue[i].NewCenterY = _factorsMap[i + 1].CenterY;
                _queue[i].NewScale   = _factorsMap[i + 1].Scale;
                _queue[i].NewOpacity = _factorsMap[i + 1].Opacity;
                _queue[i].NewZIndex  = _factorsMap[i + 1].ZIndex;
            }

            Insert(movieBrief, 0, _capacity);
        }
Exemple #7
0
        private void PopulateProcessQueue()
        {
            while (_queue.QueueCount < _queue.Capacity)
            {
                if (_rightNextIndex >= _movies.Count)
                {
                    break;
                }

                var mvm = new MovieBriefViewModel(_movies[_rightNextIndex], _eventAggregator);

                _queue.InsertAtRight(mvm);

                _rightNextIndex++;
            }

            if (_queue.Queue.Any(m => !m.IsDummy))
            {
                _currentIndex = 1;
            }
        }
Exemple #8
0
        private void PopulateProcessQueue()
        {
            while (_queue.QueueCount < _queue.Capacity)
            {
                if (_rightNextIndex >= _movies.Count)
                {
                    break;
                }

                var mvm = new MovieBriefViewModel(_movies[_rightNextIndex], _eventAggregator);

                _queue.InsertAtRight(mvm);

                _rightNextIndex++;
            }

            if (_queue.Queue.Any(m => !m.IsDummy))
            {
                _currentIndex = 1;
            }
        }
        public void InsertAtLeft(MovieBriefViewModel movieBrief)
        {
            movieBrief.CenterX = _factorsMap[0].CenterX;
            movieBrief.CenterY = _factorsMap[0].CenterY;
            movieBrief.Scale = _factorsMap[0].Scale;
            movieBrief.Opacity = _factorsMap[0].Opacity;
            movieBrief.ZIndex = _factorsMap[0].ZIndex;

            for (var i = 0; i < _capacity - 1; i++)
            {
                _queue[i].NewCenterX = _factorsMap[i + 1].CenterX;
                _queue[i].NewCenterY = _factorsMap[i + 1].CenterY;
                _queue[i].NewScale = _factorsMap[i + 1].Scale;
                _queue[i].NewOpacity = _factorsMap[i + 1].Opacity;
                _queue[i].NewZIndex = _factorsMap[i + 1].ZIndex;
            }

            Insert(movieBrief, 0, _capacity);
        }
        private void Insert(MovieBriefViewModel movieBrief, int insertIndex, int removeIndex)
        {
            _queue.Insert(insertIndex, movieBrief);

            if (_queue.Count > _capacity)
            {
                _queue.RemoveAt(removeIndex);
            }
        }
        public void InsertAtRightHalf(MovieBriefViewModel newMovieBrief)
        {
            if (_queue.Count < _capacity)
            {
                newMovieBrief.CenterX = _factorsMap[_queue.Count].CenterX;
                newMovieBrief.CenterY = _factorsMap[_queue.Count].CenterY;
                newMovieBrief.Scale = _factorsMap[_queue.Count].Scale;
                newMovieBrief.Opacity = _factorsMap[_queue.Count].Opacity;
                newMovieBrief.ZIndex = _factorsMap[_queue.Count].ZIndex;
            }
            else
            {
                for (var i = _queue.Count - 1; i > _capacity/2; i--)
                {
                    _queue[i].NewCenterX = _factorsMap[i - 1].CenterX;
                    _queue[i].NewCenterY = _factorsMap[i - 1].CenterY;
                    _queue[i].NewScale = _factorsMap[i - 1].Scale;
                    _queue[i].NewOpacity = _factorsMap[i - 1].Opacity;
                    _queue[i].NewZIndex = _factorsMap[i - 1].ZIndex;

                    _queue[i].SequencialNo = _queue[i - 1].SequencialNo;
                }

                newMovieBrief.CenterX = _factorsMap[_queue.Count - 1].CenterX;
                newMovieBrief.CenterY = _factorsMap[_queue.Count - 1].CenterY;
                newMovieBrief.Scale = _factorsMap[_queue.Count - 1].Scale;
                newMovieBrief.Opacity = _factorsMap[_queue.Count - 1].Opacity;
                newMovieBrief.ZIndex = _factorsMap[_queue.Count - 1].ZIndex;
            }

            _queue.RemoveAt(_capacity/2);

            Insert(newMovieBrief, _queue.Count, 0);
        }
        public void InsertAtRight(MovieBriefViewModel newMovieBrief)
        {
            if (_queue.Count < _capacity)
            {
                newMovieBrief.CenterX = _factorsMap[_queue.Count].CenterX;
                newMovieBrief.CenterY = _factorsMap[_queue.Count].CenterY;
                newMovieBrief.Scale = _factorsMap[_queue.Count].Scale;
                newMovieBrief.Opacity = _factorsMap[_queue.Count].Opacity;
                newMovieBrief.ZIndex = _factorsMap[_queue.Count].ZIndex;
            }
            else
            {
                for (var i = _queue.Count - 1; i > 0; i--)
                {
                    _queue[i].NewCenterX = _factorsMap[i - 1].CenterX;
                    _queue[i].NewCenterY = _factorsMap[i - 1].CenterY;
                    _queue[i].NewScale = _factorsMap[i - 1].Scale;
                    _queue[i].NewOpacity = _factorsMap[i - 1].Opacity;
                    _queue[i].NewZIndex = _factorsMap[i - 1].ZIndex;
                }

                newMovieBrief.CenterX = _factorsMap[_queue.Count - 1].CenterX;
                newMovieBrief.CenterY = _factorsMap[_queue.Count - 1].CenterY;
                newMovieBrief.Scale = _factorsMap[_queue.Count - 1].Scale;
                newMovieBrief.Opacity = _factorsMap[_queue.Count - 1].Opacity;
                newMovieBrief.ZIndex = _factorsMap[_queue.Count - 1].ZIndex;
            }

            Insert(newMovieBrief, _queue.Count, 0);
        }