public EntriesCollectionHelper(MultiColumnFilmStrip owner) : base(owner.m_EventQueue, owner.m_DeckTraversal.Deck.TableOfContents, "Entries") { this.m_Owner = owner; base.Initialize(); }
public FilmStripSlideViewer(MultiColumnFilmStrip parent, PresenterModel model, DeckTraversalModel traversal, DeckTraversalModel previewTraversal, TableOfContentsModel.Entry entry) { this.m_Model = model; this.m_Parent = parent; this.m_DeckTraversal = traversal; this.m_Entry = entry; this.m_PreviewDeckTraversal = previewTraversal; this.BorderStyle = BorderStyle.FixedSingle; this.m_CurrentEntryChangedDispatcher = new EventQueue.PropertyEventDispatcher(this.SlideDisplay.EventQueue, new PropertyEventHandler(this.HandleCurrentEntryChanged)); this.m_EntriesChangedDispatcher = new EventQueue.PropertyEventDispatcher(this.SlideDisplay.EventQueue, new PropertyEventHandler(this.HandleEntriesChanged)); this.m_DeckBackgroundColorChangedDispatcher = new EventQueue.PropertyEventDispatcher(this.SlideDisplay.EventQueue, new PropertyEventHandler(this.HandleDeckBackgroundColorChanged)); this.m_DeckBackgroundTemplateChangedDispatcher = new EventQueue.PropertyEventDispatcher(this.SlideDisplay.EventQueue, new PropertyEventHandler(this.HandleDeckBackgroundTemplateChanged)); this.m_DeckTraversal.Changed["Current"].Add(this.m_CurrentEntryChangedDispatcher.Dispatcher); this.m_Entry.TableOfContents.Changed["Entries"].Add(this.m_EntriesChangedDispatcher.Dispatcher); using (Synchronizer.Lock(this.m_DeckTraversal.Deck.SyncRoot)) { this.m_DeckTraversal.Deck.Changed["DeckBackgroundColor"].Add(this.m_DeckBackgroundColorChangedDispatcher.Dispatcher); this.m_DeckTraversal.Deck.Changed["DeckBackgroundTemplate"].Add(this.m_DeckBackgroundTemplateChangedDispatcher.Dispatcher); this.DefaultDeckBGColor = this.m_DeckTraversal.Deck.DeckBackgroundColor; this.DefaultDeckBGTemplate = this.m_DeckTraversal.Deck.DeckBackgroundTemplate; } this.m_EntriesChangedDispatcher.Dispatcher(this.m_Entry, null); this.m_CurrentEntryChangedDispatcher.Dispatcher(this.m_DeckTraversal, null); this.m_CurrentDeckTraversalChangedDispatcher = this.m_Model.Workspace.CurrentDeckTraversal.ListenAndInitialize(this.SlideDisplay.EventQueue, delegate(Property <DeckTraversalModel> .EventArgs args) { bool old = this.m_IsCurrentDeckTraversal; using (this.m_Model.Workspace.Lock()) { this.m_IsCurrentDeckTraversal = (~this.m_Model.Workspace.CurrentDeckTraversal == this.m_DeckTraversal); } if (old != this.m_IsCurrentDeckTraversal) { // Invalidate the display to draw the new selection border. this.UpdateSelection(); } }); }
public FilmStripSlideViewer(MultiColumnFilmStrip parent, PresenterModel model, DeckTraversalModel traversal, DeckTraversalModel previewTraversal, TableOfContentsModel.Entry entry) { this.m_Model = model; this.m_Parent = parent; this.m_DeckTraversal = traversal; this.m_Entry = entry; this.m_PreviewDeckTraversal = previewTraversal; this.BorderStyle = BorderStyle.FixedSingle; this.m_CurrentEntryChangedDispatcher = new EventQueue.PropertyEventDispatcher(this.SlideDisplay.EventQueue, new PropertyEventHandler(this.HandleCurrentEntryChanged)); this.m_EntriesChangedDispatcher = new EventQueue.PropertyEventDispatcher(this.SlideDisplay.EventQueue, new PropertyEventHandler(this.HandleEntriesChanged)); this.m_DeckBackgroundColorChangedDispatcher = new EventQueue.PropertyEventDispatcher(this.SlideDisplay.EventQueue, new PropertyEventHandler(this.HandleDeckBackgroundColorChanged)); this.m_DeckBackgroundTemplateChangedDispatcher = new EventQueue.PropertyEventDispatcher(this.SlideDisplay.EventQueue, new PropertyEventHandler(this.HandleDeckBackgroundTemplateChanged)); this.m_DeckTraversal.Changed["Current"].Add(this.m_CurrentEntryChangedDispatcher.Dispatcher); this.m_Entry.TableOfContents.Changed["Entries"].Add(this.m_EntriesChangedDispatcher.Dispatcher); using (Synchronizer.Lock(this.m_DeckTraversal.Deck.SyncRoot)) { this.m_DeckTraversal.Deck.Changed["DeckBackgroundColor"].Add(this.m_DeckBackgroundColorChangedDispatcher.Dispatcher); this.m_DeckTraversal.Deck.Changed["DeckBackgroundTemplate"].Add(this.m_DeckBackgroundTemplateChangedDispatcher.Dispatcher); this.DefaultDeckBGColor = this.m_DeckTraversal.Deck.DeckBackgroundColor; this.DefaultDeckBGTemplate = this.m_DeckTraversal.Deck.DeckBackgroundTemplate; } this.m_EntriesChangedDispatcher.Dispatcher(this.m_Entry, null); this.m_CurrentEntryChangedDispatcher.Dispatcher(this.m_DeckTraversal, null); this.m_CurrentDeckTraversalChangedDispatcher = this.m_Model.Workspace.CurrentDeckTraversal.ListenAndInitialize(this.SlideDisplay.EventQueue, delegate(Property<DeckTraversalModel>.EventArgs args) { bool old = this.m_IsCurrentDeckTraversal; using (this.m_Model.Workspace.Lock()) { this.m_IsCurrentDeckTraversal = (~this.m_Model.Workspace.CurrentDeckTraversal == this.m_DeckTraversal); } if (old != this.m_IsCurrentDeckTraversal) { // Invalidate the display to draw the new selection border. this.UpdateSelection(); } }); }
public DeckTabPage(DeckTraversalModel traversal, PresenterModel model) { ///set the background color of the tab by calling the GetDispositionColor ///method. back_color_ = traversal.Deck.GetDispositionColor(); this.m_Model = model; this.m_Traversal = traversal; this.m_FilmStrip = new MultiColumnFilmStrip(traversal, this.m_Model); this.m_FilmStrip.Dock = DockStyle.Fill; // this.m_FilmStrip.AutoScrollChanged += new AutoScrollEventHandler(this.OnAutoScrollChanged); this.m_Traversal.Deck.Changed["HumanName"].Add(new PropertyEventHandler(this.HandleHumanNameChanged)); this.HandleHumanNameChanged(this.m_Traversal.Deck, null); this.Controls.Add(this.m_FilmStrip); }