Beispiel #1
0
 internal void Append(PathData data)
 {
     commandList.AddRange(data.commandList);
     pointList.AddRange(data.pointList);
 }
Beispiel #2
0
 internal PathData(PathData @base)
 {
     commandList = new List<PathCommand>(@base.commandList);
     pointList = new List<Point>(@base.pointList);
 }
Beispiel #3
0
 private Path(Path @base)
 {
     data = new PathData(@base.data);
 }
Beispiel #4
0
 internal Path(IntPtr nativePath, bool retain)
 {
     this.nativePath = nativePath;
     data = new PathData(nativePath, true);
     if (retain) SafeNativeMethods.CFRetain(nativePath);
 }
Beispiel #5
0
 public Path()
 {
     data = new PathData();
 }
Beispiel #6
0
        private void Dispose(bool disposing)
        {
            var nativePath = Interlocked.Exchange(ref this.nativePath, IntPtr.Zero);
            data = null;

            if (nativePath != IntPtr.Zero)
                SafeNativeMethods.CFRelease(nativePath);
        }