client/src/Iri.Modernisation.Controls/ViewModel/HeaderProduction/HeaderProductionVM.cs
changeset 27 f292db96b050
parent 26 44a2dc869e28
child 30 644e3cd48034
--- a/client/src/Iri.Modernisation.Controls/ViewModel/HeaderProduction/HeaderProductionVM.cs	Tue Dec 22 16:22:22 2009 +0100
+++ b/client/src/Iri.Modernisation.Controls/ViewModel/HeaderProduction/HeaderProductionVM.cs	Mon Jan 04 10:29:39 2010 +0100
@@ -17,205 +17,56 @@
     public class HeaderProductionVM : BaseMVVM.ViewModel.ViewModel
     {
 
-        private List<HeaderProductionChapter> _productionChapters;
-
-        #region Avancement
-
-
-        private bool _isChap01EditingComplete = false;
-        public bool IsChap01EditingComplete
-        {
-            get
-            {
-                return _isChap01EditingComplete;
-            }
-            set
-            {
-                _isChap01EditingComplete = value;
-                OnPropertyChanged("IsChap01EditingComplete");
-
-                GeneralRefresh();
-                
-            }
-        }
-        
-        private bool _isChap01IndexingComplete = false;
-        public bool IsChap01IndexingComplete
-        {
-            get
-            {
-                return _isChap01IndexingComplete;
-            }
-            set
-            {
-                _isChap01IndexingComplete = value;
-                OnPropertyChanged("IsChap01IndexingComplete");
-                GeneralRefresh();
-            }
-        }
-
-        private bool _isChap02EditingComplete = false;
-        public bool IsChap02EditingComplete
+        private List<HeaderProductionChapterVM> _productionChapters;
+        public List<HeaderProductionChapterVM> ProductionChapters
         {
             get
             {
-                return _isChap02EditingComplete;
-            }
-            set
-            {
-                _isChap02EditingComplete = value;
-                OnPropertyChanged("IsChap02EditingComplete");
-                GeneralRefresh();
-            }
-        }
-
-        private bool _isChap02IndexingComplete = false;
-        public bool IsChap02IndexingComplete
-        {
-            get
-            {
-                return _isChap02IndexingComplete;
-            }
-            set
-            {
-                _isChap02IndexingComplete = value;
-                OnPropertyChanged("IsChap02IndexingComplete");
-                GeneralRefresh();
-            }
-        }
-
-        private bool _isChap03EditingComplete= false;
-        public bool IsChap03EditingComplete
-        {
-            get
-            {
-                return _isChap03EditingComplete;
-            }
-            set
-            {
-                _isChap03EditingComplete = value;
-                OnPropertyChanged("IsChap03EditingComplete");
-                GeneralRefresh();
-            }
-        }
-
-        private bool _isChap03IndexingComplete= false;
-        public bool IsChap03IndexingComplete
-        {
-            get
-            {
-                return _isChap03IndexingComplete;
+                return _productionChapters;
             }
             set
             {
-                _isChap03IndexingComplete = value;
-                OnPropertyChanged("IsChap03IndexingComplete");
-                GeneralRefresh();
-            }
-        }
-
-        private bool _isChap04EditingComplete= false;
-        public bool IsChap04EditingComplete
-        {
-            get
-            {
-                return _isChap04EditingComplete;
-            }
-            set
-            {
-                _isChap04EditingComplete = value;
-                OnPropertyChanged("IsChap04EditingComplete");
-                GeneralRefresh();
+                _productionChapters = value;
+                OnPropertyChanged("ProductionChapters");
             }
         }
 
-        private bool _isChap04IndexingComplete= false;
-        public bool IsChap04IndexingComplete
-        {
-            get
-            {
-                return _isChap04IndexingComplete;
-            }
-            set
-            {
-                _isChap04IndexingComplete = value;
-                OnPropertyChanged("IsChap04IndexingComplete");
-                GeneralRefresh();
-            }
-        }
-        #endregion
-
-        #region Etat des Boutton
-        private void GeneralRefresh()
-        {
-            OnPropertyChanged(String.Empty);
-            
-        }
-        public bool IsChap01EditingEnable
+        private HeaderProductionChapterVM _selectedChapter;
+        public HeaderProductionChapterVM SelectedChapter
         {
             get
             {
-                return !IsChap01EditingComplete;
-            }
-        }
-        public bool IsChap01IndexingEnable
-        {
-            get
-            {
-                return IsChap01EditingComplete^IsChap01IndexingComplete;
+                return _selectedChapter;
             }
-        }
-        public bool IsChap02EditingEnable
-        {
-            get
-            {      
-                 return IsChap01EditingComplete ^ IsChap02EditingComplete;
+            set
+            {
+                if (_selectedChapter != null)
+                {
+                    _selectedChapter.HighLight = false;
+                }
+
+                _selectedChapter = value;
+            
+                    value.HighLight = true;
+                    if (Change != null)
+                        Change(this, new HeaderProductionVMArgs(SelectedChapter));
+              
+                
+                OnPropertyChanged("SelectedChapter");
             }
-        }
-        public bool IsChap02IndexingEnable
-        {
-            get
-            {
-                return IsChap02EditingComplete ^ IsChap02IndexingComplete;
-            }
+
         }
-        public bool IsChap03EditingEnable
-        {
-            get
-            {
-                return IsChap02EditingComplete ^ IsChap03EditingComplete;
-            }
-        }
-        public bool IsChap03IndexingEnable
-        {
-            get
-            {
-                return IsChap03EditingComplete ^ IsChap03IndexingComplete;
-            }
-        }
-        public bool IsChap04EditingEnable
-        {
-            get
-            {
-                return IsChap03EditingComplete ^ IsChap04EditingComplete;
-            }
-        }
-        public bool IsChap04IndexingEnable
-        {
-            get
-            {
-                return IsChap04EditingComplete^IsChap04IndexingComplete;
-            }
-        }
-        #endregion
+      
         public bool IsVideoBookComplete
         {
             get
             {
-                return _isChap01EditingComplete && _isChap01IndexingComplete
-                && _isChap02EditingComplete && _isChap02IndexingComplete
-                && _isChap03EditingComplete && _isChap03IndexingComplete
-                && _isChap04EditingComplete && _isChap04IndexingComplete;
+                bool test = true;
+                foreach(HeaderProductionChapterVM Hpcvm in ProductionChapters )
+                {
+                    test = Hpcvm.Indexing && test; 
+                }
+                return test;
             }
         }
         private String _instruction;
@@ -236,66 +87,63 @@
         }
         public HeaderProductionVM()
         {
-          
+            _productionChapters = new List<HeaderProductionChapterVM>();
+            HeaderProductionChapterVM temp = null;
+            foreach (VideoChapterDescription Vcd in FactoryVideoLivre.VideoChapterDescriptions)
+            {
+                temp = new HeaderProductionChapterVM(Vcd);
+                temp.Ended +=new HeaderProductionChapterVM.EndedDelegate(temp_Ended);
+                temp.EditEnded += new HeaderProductionChapterVM.EditEndedDelegate(temp_EditEnded);
+                temp.HighLight = false;
+               _productionChapters.Add(temp);
+               if(_productionChapters.Count > 1)
+               {
+                   _productionChapters[_productionChapters.Count - 2].EditEnded+=new HeaderProductionChapterVM.EditEndedDelegate(temp.Enable);
+                  
+               }
+              
+                
+            }
             _instruction = Iri.Modernisation.Controls.Resources.HeaderProduction.InstructionTextRessource.Introduction;
+           
+            InitializeCommands();
+            ProductionChapters[0].Enable();
+          
+    
+        }
 
-            InitializeCommands();
+        void temp_EditEnded()
+        {
+            if(Change!=null)
+            Change(this,new HeaderProductionVMArgs(SelectedChapter));
+        }
+       
+       
+
+        void temp_Ended()
+        {
+            OnPropertyChanged("IsVideoBookComplete");
+            if (Change != null)
+                Change(this, new HeaderProductionVMArgs(SelectedChapter));
         }
         private void InitializeCommands()
         {
-                Commands.HeaderProduction.Chap01EditingOkClick.Executed += new EventHandler<SLExtensions.Input.ExecutedEventArgs>(Chap01EditingOkClick_Executed);
-                Commands.HeaderProduction.Chap02EditingOkClick.Executed+=new EventHandler<SLExtensions.Input.ExecutedEventArgs>(Chap02EditingOkClick_Executed);
-                Commands.HeaderProduction.Chap03EditingOkClick.Executed += new EventHandler<SLExtensions.Input.ExecutedEventArgs>(Chap03EditingOkClick_Executed);
-                Commands.HeaderProduction.Chap04EditingOkClick.Executed += new EventHandler<SLExtensions.Input.ExecutedEventArgs>(Chap04EditingOkClick_Executed);
-
-                Commands.HeaderProduction.Chap01IndexingOkClick.Executed += new EventHandler<SLExtensions.Input.ExecutedEventArgs>(Chap01IndexingOkClick_Executed);
-                Commands.HeaderProduction.Chap02IndexingOkClick.Executed += new EventHandler<SLExtensions.Input.ExecutedEventArgs>(Chap02IndexingOkClick_Executed);
-                Commands.HeaderProduction.Chap03IndexingOkClick.Executed += new EventHandler<SLExtensions.Input.ExecutedEventArgs>(Chap03IndexingOkClick_Executed);
-                Commands.HeaderProduction.Chap04IndexingOkClick.Executed += new EventHandler<SLExtensions.Input.ExecutedEventArgs>(Chap04IndexingOkClick_Executed);
         }
-        #region OkClick
-        #region Index
-        private void Chap04IndexingOkClick_Executed(object sender, SLExtensions.Input.ExecutedEventArgs e)
-        {
-            IsChap04IndexingComplete = true;
-        }
-
-        private void Chap03IndexingOkClick_Executed(object sender, SLExtensions.Input.ExecutedEventArgs e)
-        {
-            IsChap03IndexingComplete = true;
-        }
-
-        private void Chap02IndexingOkClick_Executed(object sender, SLExtensions.Input.ExecutedEventArgs e)
-        {
-            IsChap02IndexingComplete = true;
-        }
+        public event EventHandler<HeaderProductionVMArgs> Change;
+     
+       
+    }
+    public class HeaderProductionVMArgs : EventArgs
+    {
+  
+        public HeaderProductionChapterVM ChapterHeader { get; private set; }
 
-        private void Chap01IndexingOkClick_Executed(object sender, SLExtensions.Input.ExecutedEventArgs e)
-        {
-            IsChap01IndexingComplete = true;
-        }
-        #endregion
-        #region Edit
-        private void Chap04EditingOkClick_Executed(object sender, SLExtensions.Input.ExecutedEventArgs e)
-        {
-            IsChap04EditingComplete = true;
-        }
-
-        private void Chap03EditingOkClick_Executed(object sender, SLExtensions.Input.ExecutedEventArgs e)
+        public HeaderProductionVMArgs( HeaderProductionChapterVM chapterHeader)
         {
-            IsChap03EditingComplete = true;
-        }
+            ChapterHeader = chapterHeader;
+          
 
-        private void Chap02EditingOkClick_Executed(object sender, SLExtensions.Input.ExecutedEventArgs e)
-        {
-            IsChap02EditingComplete = true;
+           
         }
-        private void Chap01EditingOkClick_Executed(object sender, SLExtensions.Input.ExecutedEventArgs e)
-        {
-            this.IsChap01EditingComplete = true;
-            GeneralRefresh();
-        }
-        #endregion
-        #endregion
     }
 }