client/src/Iri.Modernisation.Controls/ViewModel/BookTimeLine/BookTimeLineVM.cs
author totetm <>
Thu, 11 Feb 2010 17:29:23 +0100
changeset 42 594fdedecf7f
parent 38 bd33267300aa
permissions -rw-r--r--
Fixed| bouton close sur BookTimeLine Fixed| loading blocker sur les éléments du corpus vidéolivre (book a charger) Fixed| afficher l'état sur on load et loader sur les éléments du corpus vidéolivre ("book a charger") Fixed| bug du title sur book timline Fixed| Actualisation de l'affichage des annotations sur seek de la timline sans play Fixed| Seek possible quand play Fixed| Bug sur le placement tetris ? Fixed| texte par default sur les champs d'annotations
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
     1
using System;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
     2
using System.Net;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
     3
using System.Windows;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
     4
using System.Windows.Controls;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
     5
using System.Windows.Documents;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
     6
using System.Windows.Ink;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
     7
using System.Windows.Input;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
     8
using System.Windows.Media;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
     9
using System.Windows.Media.Animation;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    10
using System.Windows.Shapes;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    11
using Iri.Modernisation.Data.Models;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    12
using Iri.Modernisation.BaseMVVM.Commands;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    13
using Iri.Modernisation.BaseMVVM.ViewModel;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    14
using System.Collections.Generic;
38
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
    15
using System.IO;
0
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    16
namespace Iri.Modernisation.Controls.ViewModel
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    17
{
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    18
    /// <summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    19
    /// ViewModel du module BookTimeLine
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    20
    /// </summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    21
    public class BookTimeLineVM : BaseMVVM.ViewModel.ViewModel
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    22
    {
38
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
    23
        static public double ratioPixMs = 6000;
25
a9c815025a1b Update ProductionView + Cleanning Code
Matthieu Totet
parents: 24
diff changeset
    24
        private VideoBook _selectedBook;
0
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    25
        /// <summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    26
        /// Livre sélectionné
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    27
        /// </summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    28
        public VideoBook SelectedBook
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    29
        {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    30
            get
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    31
            {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    32
                return _selectedBook;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    33
            }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    34
        }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    35
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    36
        /// <summary>
25
a9c815025a1b Update ProductionView + Cleanning Code
Matthieu Totet
parents: 24
diff changeset
    37
        /// Nom de l'auteur
0
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    38
        /// </summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    39
        public String AuthorFullname
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    40
        {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    41
            get
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    42
            {
25
a9c815025a1b Update ProductionView + Cleanning Code
Matthieu Totet
parents: 24
diff changeset
    43
                return Author.UserName;
0
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    44
            }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    45
        }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    46
25
a9c815025a1b Update ProductionView + Cleanning Code
Matthieu Totet
parents: 24
diff changeset
    47
        
a9c815025a1b Update ProductionView + Cleanning Code
Matthieu Totet
parents: 24
diff changeset
    48
        private String _title;
0
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    49
        /// <summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    50
        /// Titre du Livre
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    51
        /// </summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    52
        public String Title 
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    53
        {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    54
            get
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    55
            {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    56
                return _title;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    57
            }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    58
            private set
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    59
            {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    60
                _title = value;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    61
                _selectedBook.Title = value;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    62
                OnPropertyChanged("Title");
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    63
            }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    64
        }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    65
25
a9c815025a1b Update ProductionView + Cleanning Code
Matthieu Totet
parents: 24
diff changeset
    66
        
a9c815025a1b Update ProductionView + Cleanning Code
Matthieu Totet
parents: 24
diff changeset
    67
        private User _author;
0
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    68
        /// <summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    69
        /// Auteur du Livre
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    70
        /// </summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    71
        public User Author
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    72
        {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    73
            get
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    74
            {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    75
                return _author;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    76
            }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    77
            private set
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    78
            {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    79
                _author = value;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    80
                _selectedBook.Author = value;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    81
                OnPropertyChanged("Author");
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    82
            }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    83
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    84
        }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    85
25
a9c815025a1b Update ProductionView + Cleanning Code
Matthieu Totet
parents: 24
diff changeset
    86
        private VideoChapter[] _chapters;
0
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    87
        /// <summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    88
        /// Chapitre du Livre
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    89
        /// </summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    90
        public VideoChapter[] Chapters
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    91
        {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    92
            get
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    93
            {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    94
                return _chapters;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    95
            }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    96
            private set
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    97
            {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    98
                _chapters = value;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    99
                _selectedBook.Chapters = value;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   100
                OnPropertyChanged("Chapters");
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   101
            }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   102
        }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   103
38
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
   104
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
   105
        private List<SegmentIndex>[] _segmentIndex;
0
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   106
        /// <summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   107
        /// Liste des Index des Chapitres
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   108
        /// </summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   109
        public List<SegmentIndex>[] SegmentIndex
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   110
        {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   111
            get
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   112
            {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   113
                return _segmentIndex;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   114
            }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   115
            set
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   116
            {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   117
                _segmentIndex = value;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   118
                OnPropertyChanged("SegmentIndex");
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   119
            }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   120
        }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   121
38
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
   122
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
   123
        private List<Annotation>[] _annotations;
0
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   124
        /// <summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   125
        /// Liste des Annotations
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   126
        /// </summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   127
        public List<Annotation>[] Annotations
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   128
        {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   129
            get
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   130
            {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   131
                return _annotations;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   132
            }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   133
            set
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   134
            {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   135
                _annotations = value;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   136
                OnPropertyChanged("Annotations");
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   137
            }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   138
        }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   139
25
a9c815025a1b Update ProductionView + Cleanning Code
Matthieu Totet
parents: 24
diff changeset
   140
      
a9c815025a1b Update ProductionView + Cleanning Code
Matthieu Totet
parents: 24
diff changeset
   141
        private TimeSpan _totalDuration;
0
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   142
        /// <summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   143
        /// Durée totale du Livre
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   144
        /// </summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   145
        public double TotalDuration
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   146
        {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   147
            get
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   148
            {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   149
                return _totalDuration.TotalMilliseconds;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   150
            }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   151
            set
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   152
            {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   153
                _totalDuration = new TimeSpan(0, 0, 0, 0, (int)value);
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   154
                _selectedBook.Duration = new TimeSpan(0, 0, 0, 0, (int)value); ;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   155
                OnPropertyChanged("Duration");
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   156
            }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   157
        }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   158
25
a9c815025a1b Update ProductionView + Cleanning Code
Matthieu Totet
parents: 24
diff changeset
   159
        
a9c815025a1b Update ProductionView + Cleanning Code
Matthieu Totet
parents: 24
diff changeset
   160
        private double _position;
0
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   161
        /// <summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   162
        /// Position du curseur de lecture
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   163
        /// </summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   164
        public double Position
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   165
        {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   166
            get
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   167
            {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   168
                return _position;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   169
            }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   170
            set
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   171
            {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   172
                _position = value;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   173
                OnPropertyChanged("Position");
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   174
            }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   175
        }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   176
25
a9c815025a1b Update ProductionView + Cleanning Code
Matthieu Totet
parents: 24
diff changeset
   177
       
0
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   178
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   179
        /// <summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   180
        /// Constructeur    
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   181
        /// </summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   182
        /// <param name="bookParam">VideoLivre à étudier</param>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   183
        public BookTimeLineVM(VideoBook bookParam)
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   184
        {
38
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
   185
            ScaleValue = 1;
0
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   186
            _selectedBook = bookParam;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   187
            _title = bookParam.Title;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   188
            _author = bookParam.Author;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   189
            _chapters = bookParam.Chapters;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   190
            _totalDuration = bookParam.Duration;
38
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
   191
            _segmentIndex = new List<SegmentIndex>[bookParam.Chapters.Length];
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
   192
            _annotations = new List<Annotation>[bookParam.Chapters.Length];
0
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   193
            LoadElements();
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   194
            Commands.TimeChange.Executed += new EventHandler<SLExtensions.Input.ExecutedEventArgs>(TimeChange_Executed);
42
594fdedecf7f Fixed| bouton close sur BookTimeLine
totetm <>
parents: 38
diff changeset
   195
            
0
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   196
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   197
        }
25
a9c815025a1b Update ProductionView + Cleanning Code
Matthieu Totet
parents: 24
diff changeset
   198
42
594fdedecf7f Fixed| bouton close sur BookTimeLine
totetm <>
parents: 38
diff changeset
   199
      
38
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
   200
        private double _scaleValue;
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
   201
        public double ScaleValue
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
   202
        {
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
   203
            get
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
   204
            {
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
   205
                return _scaleValue;
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
   206
            }
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
   207
            set
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
   208
            {
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
   209
                _scaleValue = value;
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
   210
                OnPropertyChanged("ScaleValue");
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
   211
                OnPropertyChanged("WidthTimeStrip");
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
   212
            }
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
   213
        }
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
   214
        public double WidthTimeStrip
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
   215
        {
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
   216
            get
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
   217
            {
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
   218
                return (_selectedBook.Duration.TotalMilliseconds / BookTimeLineVM.ratioPixMs) * ScaleValue;
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
   219
            }
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
   220
        }
23
10acb6a11a73 Update VideoViewer ( Allow Multi-VideoViewer)
Matthieu Totet
parents: 0
diff changeset
   221
        private VideoViewerVM _videoViewerVM;
25
a9c815025a1b Update ProductionView + Cleanning Code
Matthieu Totet
parents: 24
diff changeset
   222
        /// <summary>
a9c815025a1b Update ProductionView + Cleanning Code
Matthieu Totet
parents: 24
diff changeset
   223
        /// ViewModel de VideoViewer
a9c815025a1b Update ProductionView + Cleanning Code
Matthieu Totet
parents: 24
diff changeset
   224
        /// </summary>
23
10acb6a11a73 Update VideoViewer ( Allow Multi-VideoViewer)
Matthieu Totet
parents: 0
diff changeset
   225
        public VideoViewerVM ViewModelVideoViewer
10acb6a11a73 Update VideoViewer ( Allow Multi-VideoViewer)
Matthieu Totet
parents: 0
diff changeset
   226
        {
10acb6a11a73 Update VideoViewer ( Allow Multi-VideoViewer)
Matthieu Totet
parents: 0
diff changeset
   227
            get
10acb6a11a73 Update VideoViewer ( Allow Multi-VideoViewer)
Matthieu Totet
parents: 0
diff changeset
   228
            {
10acb6a11a73 Update VideoViewer ( Allow Multi-VideoViewer)
Matthieu Totet
parents: 0
diff changeset
   229
                return _videoViewerVM;
10acb6a11a73 Update VideoViewer ( Allow Multi-VideoViewer)
Matthieu Totet
parents: 0
diff changeset
   230
            }
10acb6a11a73 Update VideoViewer ( Allow Multi-VideoViewer)
Matthieu Totet
parents: 0
diff changeset
   231
            set
10acb6a11a73 Update VideoViewer ( Allow Multi-VideoViewer)
Matthieu Totet
parents: 0
diff changeset
   232
            {
10acb6a11a73 Update VideoViewer ( Allow Multi-VideoViewer)
Matthieu Totet
parents: 0
diff changeset
   233
                _videoViewerVM = value;
10acb6a11a73 Update VideoViewer ( Allow Multi-VideoViewer)
Matthieu Totet
parents: 0
diff changeset
   234
                OnPropertyChanged("ViewModelVideoViewer");
10acb6a11a73 Update VideoViewer ( Allow Multi-VideoViewer)
Matthieu Totet
parents: 0
diff changeset
   235
            }
10acb6a11a73 Update VideoViewer ( Allow Multi-VideoViewer)
Matthieu Totet
parents: 0
diff changeset
   236
        }
25
a9c815025a1b Update ProductionView + Cleanning Code
Matthieu Totet
parents: 24
diff changeset
   237
        private void TimeChange_Executed(object sender, SLExtensions.Input.ExecutedEventArgs e)
0
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   238
        {
24
c031f1132dde Update ProductionView
Matthieu Totet
parents: 23
diff changeset
   239
            if(e.Source == this)
c031f1132dde Update ProductionView
Matthieu Totet
parents: 23
diff changeset
   240
            {
c031f1132dde Update ProductionView
Matthieu Totet
parents: 23
diff changeset
   241
                ViewModelVideoViewer.GoTo(TimeSpan.FromMilliseconds(((double)e.Parameter)));
c031f1132dde Update ProductionView
Matthieu Totet
parents: 23
diff changeset
   242
            }
0
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   243
        }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   244
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   245
      
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   246
        /// <summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   247
        /// Chargement des éléments du livre (Index et Annotations)
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   248
        /// </summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   249
        private void LoadElements()
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   250
        {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   251
            for(int key=0;key< _selectedBook.Chapters.Length;key++)
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   252
            {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   253
              _segmentIndex[key] = _selectedBook.Chapters[key].Index;
38
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
   254
              if (_selectedBook.Chapters[key].Annotations != null)
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
   255
                {
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
   256
                    _annotations[key] = _selectedBook.Chapters[key].Annotations;
bd33267300aa - FranceCulture Project
totetm <>
parents: 25
diff changeset
   257
                }
0
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   258
            }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   259
        }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   260
      
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   261
    }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   262
}