internal RTUpdate GetRtUpdate(Guid tocKey)
 {
     if (this.toc.ContainsKey(tocKey))
     {
         TocEntry entry = (TocEntry)toc[tocKey];
         if (entry.DeckType == DeckTypeEnum.QuickPoll)
         {
             Debug.WriteLine("");
         }
         if (!UpdateAssociation(entry))
         {
             //If we failed to map a student submission to a deck it could be because the SS is on
             // a whiteboard page, or it could be that we don't yet have a TOC entry for the
             // original slide.  For now, just treat both cases as if
             // they were whiteboard.
             // P2: Make a way to mark the message as SS and leave the deck association empty, and
             // have that be understood as a SS on a WB.  I think this requires an update to WebViewer?
             RTUpdate rtu = entry.ToRtUpdate();
             rtu.DeckType = (int)DeckTypeEnum.Whiteboard;
             return(rtu);
         }
         return(entry.ToRtUpdate());
     }
     return(null);
 }
        internal object UpdateZoomAndColorForSlide(CP3Msgs.SlideInformationMessage sim, out string warning)
        {
            Guid  slideId = (Guid)sim.TargetId;
            float zoom    = sim.Zoom;
            Color color   = sim.SlideBackgroundColor;

            warning = "";
            if (!this.tocBySlideId.ContainsKey(slideId))
            {
                return(null);
            }
            TocEntry entry = (TocEntry)this.tocBySlideId[slideId];

            if ((entry.SlideSize != zoom) ||
                (!entry.BackgroundColor.Equals(color)))
            {
                if (!entry.BackgroundColor.Equals(color))
                {
                    Debug.WriteLine("*****Update to slide background color.");
                }
                entry.SlideSize       = zoom;
                entry.BackgroundColor = color;
                if (!UpdateAssociation(entry))
                {
                    return(null);
                }


                return(entry.ToRtUpdate());
            }
            return(null);
        }
        internal object GetRtUpdateForSlideId(Guid guid)
        {
            if (guid.Equals(Guid.Empty))
            {
                return(null);
            }
            TocEntry entry = this.LookupBySlideId(guid);

            if (entry == null)
            {
                return(null);
            }
            return(entry.ToRtUpdate());
        }