Example #1
0
        public List <InkSynchronizer.StrokeSynchronizer> BeginDry()
        {
            object lockObject = this._lockObject;
            List <MouseRender.StrokeInfo> list2;

            lock (lockObject)
            {
                List <MouseRender.StrokeInfo> list = this._strokeInfoList.ToList <MouseRender.StrokeInfo>();
                if (!false)
                {
                    list2 = list;
                }
                this._strokeInfoList.Clear();
            }
            List <InkSynchronizer.StrokeSynchronizer> list3 = new List <InkSynchronizer.StrokeSynchronizer>();

            foreach (MouseRender.StrokeInfo strokeInfo in list2)
            {
                if (strokeInfo != null)
                {
                    MouseRender.InkRenderInfo inkRenderInfo = strokeInfo.InkRenderInfo;
                    StylusPointCollection     inkRenderInfoStylusPointList = this.GetInkRenderInfoStylusPointList(inkRenderInfo);
                    if (inkRenderInfoStylusPointList != null && inkRenderInfoStylusPointList.Any <StylusPoint>())
                    {
                        list3.Add(new InkSynchronizer.StrokeSynchronizer(inkRenderInfoStylusPointList, strokeInfo.StylusDeviceId, strokeInfo.DrawingAttributes)
                        {
                            LostCapture = strokeInfo.LostCapture
                        });
                    }
                    DryingDrawingVisual dryingDrawingVisual = new DryingDrawingVisual(inkRenderInfo.ContainerVisual, InkRenderVisual.GetInkRenderDryingDrawVisual(inkRenderInfo));
                    this._dynamicRenderer.InkCanvas.AddDryingDrawingVisualList(dryingDrawingVisual);
                }
            }
            return(list3);
        }
Example #2
0
        public void AddDryingDrawingVisualList(DryingDrawingVisual dryingDrawingVisual)
        {
            List <DryingDrawingVisual> dryingDrawingVisualList;

            dryingDrawingVisualList = this._dryingDrawingVisualList;
            bool flag = false;

            try
            {
                Monitor.Enter(dryingDrawingVisualList, ref flag);
                this._dryingDrawingVisualList.Add(dryingDrawingVisual);
            }
            finally
            {
                if (flag)
                {
                    Monitor.Exit(dryingDrawingVisualList);
                }
            }
        }