Example #1
0
        public PrivateSurface(ref Description surfaceDescription)
            : base(ref surfaceDescription)
        {
            _CanvasContext = new WeakReference(null);

            Canvas canvas = new Canvas(Region.Size, SurfaceUsage.Private);

            _SurfaceCanvas = new TargetContext(canvas, Region, this);

            _SurfaceCanvas.BackingContext = _SurfaceCanvas;
        }
Example #2
0
        public SharedSurface(ref Description surfaceDescription)
            : base(ref surfaceDescription)
        {
            _UsedRegions = new LinkedList<CanvasData>();
            _FreeRegions = new LinkedList<Rectangle>();

            _FreeRegions.AddLast(new Rectangle(Point.Empty, Region.Size));

            Canvas canvas = new Canvas(Region.Size, SurfaceUsage.Private);

            _SurfaceCanvas = new TargetContext(canvas, Region, this, new LinkedListNode<CanvasData>(new CanvasData()));

            _SurfaceCanvas.BackingContext = _SurfaceCanvas;
        }
Example #3
0
        public DynamicSurface(ref Description surfaceDescription)
            : base(ref surfaceDescription)
        {
            _FreeRegions = new LinkedList<Rectangle>();

            _FreeArea = Region.Area;

            _UsedRegions = new List<Canvas.ResolvedContext>();

            _FreeRegions.AddLast(new Rectangle(Point.Empty, Region.Size));

            Canvas canvas = new Canvas(Region.Size, SurfaceUsage.Private);

            _SurfaceCanvas = new TargetContext(canvas, Region, this);

            _SurfaceCanvas.BackingContext = _SurfaceCanvas;
        }