Browse Source

Remove GlyphTypeface.PlatformImpl

Benedikt Stebner 3 years ago
parent
commit
a4a24c2fa5

+ 1 - 1
src/Avalonia.Base/Media/FontManager.cs

@@ -81,7 +81,7 @@ namespace Avalonia.Media
             PlatformImpl.GetInstalledFontFamilyNames(checkForUpdates);
 
         /// <summary>
-        ///     Returns a new <see cref="IGlyphTypeface"/>, or an existing one if a matching <see cref="GlyphTypeface"/> exists.
+        ///     Returns a new <see cref="IGlyphTypeface"/>, or an existing one if a matching <see cref="IGlyphTypeface"/> exists.
         /// </summary>
         /// <param name="typeface">The typeface.</param>
         /// <returns>

+ 3 - 3
src/Avalonia.Headless/HeadlessPlatformRenderInterface.cs

@@ -115,17 +115,17 @@ namespace Avalonia.Headless
             return new HeadlessGeometryStub(new Rect(glyphRun.Size));
         }
 
-        public IGlyphRunBuffer AllocateGlyphRun(GlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
+        public IGlyphRunBuffer AllocateGlyphRun(IGlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
         {
             return new HeadlessGlyphRunBufferStub();
         }
 
-        public IHorizontalGlyphRunBuffer AllocateHorizontalGlyphRun(GlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
+        public IHorizontalGlyphRunBuffer AllocateHorizontalGlyphRun(IGlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
         {
             return new HeadlessHorizontalGlyphRunBufferStub();
         }
 
-        public IPositionedGlyphRunBuffer AllocatePositionedGlyphRun(GlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
+        public IPositionedGlyphRunBuffer AllocatePositionedGlyphRun(IGlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
         {
             return new HeadlessPositionedGlyphRunBufferStub();
         }

+ 1 - 1
src/Skia/Avalonia.Skia/TextShaperImpl.cs

@@ -31,7 +31,7 @@ namespace Avalonia.Skia
 
                 buffer.Language = new Language(culture ?? CultureInfo.CurrentCulture);              
 
-                var font = ((GlyphTypefaceImpl)typeface.PlatformImpl).Font;
+                var font = ((GlyphTypefaceImpl)typeface).Font;
 
                 font.Shape(buffer);
 

+ 8 - 8
src/Windows/Avalonia.Direct2D1/Direct2D1Platform.cs

@@ -162,7 +162,7 @@ namespace Avalonia.Direct2D1
 
         public IGeometryImpl BuildGlyphRunGeometry(GlyphRun glyphRun)
         {
-            if (glyphRun.GlyphTypeface.PlatformImpl is not GlyphTypefaceImpl glyphTypeface)
+            if (glyphRun.GlyphTypeface is not GlyphTypefaceImpl glyphTypeface)
             {
                 throw new InvalidOperationException("PlatformImpl can't be null.");
             }
@@ -264,9 +264,9 @@ namespace Avalonia.Direct2D1
         {
             protected readonly SharpDX.DirectWrite.GlyphRun _dwRun;
 
-            public DWGlyphRunBuffer(GlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
+            public DWGlyphRunBuffer(IGlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
             {
-                var glyphTypefaceImpl = (GlyphTypefaceImpl)glyphTypeface.PlatformImpl;
+                var glyphTypefaceImpl = (GlyphTypefaceImpl)glyphTypeface;
 
                 _dwRun = new SharpDX.DirectWrite.GlyphRun
                 {
@@ -286,7 +286,7 @@ namespace Avalonia.Direct2D1
 
         private class DWHorizontalGlyphRunBuffer : DWGlyphRunBuffer, IHorizontalGlyphRunBuffer
         {
-            public DWHorizontalGlyphRunBuffer(GlyphTypeface glyphTypeface, float fontRenderingEmSize, int length) 
+            public DWHorizontalGlyphRunBuffer(IGlyphTypeface glyphTypeface, float fontRenderingEmSize, int length) 
                 : base(glyphTypeface, fontRenderingEmSize, length)
             {
                 _dwRun.Advances = new float[length];
@@ -297,7 +297,7 @@ namespace Avalonia.Direct2D1
 
         private class DWPositionedGlyphRunBuffer : DWGlyphRunBuffer, IPositionedGlyphRunBuffer
         {
-            public DWPositionedGlyphRunBuffer(GlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
+            public DWPositionedGlyphRunBuffer(IGlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
                 : base(glyphTypeface, fontRenderingEmSize, length)
             {
                 _dwRun.Advances = new float[length];
@@ -307,17 +307,17 @@ namespace Avalonia.Direct2D1
             public Span<PointF> GlyphPositions => MemoryMarshal.Cast<GlyphOffset, PointF>(_dwRun.Offsets.AsSpan());
         }
 
-        public IGlyphRunBuffer AllocateGlyphRun(GlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
+        public IGlyphRunBuffer AllocateGlyphRun(IGlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
         {
             return new DWGlyphRunBuffer(glyphTypeface, fontRenderingEmSize, length);
         }
 
-        public IHorizontalGlyphRunBuffer AllocateHorizontalGlyphRun(GlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
+        public IHorizontalGlyphRunBuffer AllocateHorizontalGlyphRun(IGlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
         {
             return new DWHorizontalGlyphRunBuffer(glyphTypeface, fontRenderingEmSize, length);
         }
 
-        public IPositionedGlyphRunBuffer AllocatePositionedGlyphRun(GlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
+        public IPositionedGlyphRunBuffer AllocatePositionedGlyphRun(IGlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
         {
             return new DWPositionedGlyphRunBuffer(glyphTypeface, fontRenderingEmSize, length);
         }

+ 1 - 1
src/Windows/Avalonia.Direct2D1/Media/TextShaperImpl.cs

@@ -31,7 +31,7 @@ namespace Avalonia.Direct2D1.Media
 
                 buffer.Language = new Language(culture ?? CultureInfo.CurrentCulture);
 
-                var font = ((GlyphTypefaceImpl)typeface.PlatformImpl).Font;
+                var font = ((GlyphTypefaceImpl)typeface).Font;
 
                 font.Shape(buffer);
 

+ 1 - 1
tests/Avalonia.Base.UnitTests/Media/GlyphRunTests.cs

@@ -185,7 +185,7 @@ namespace Avalonia.Base.UnitTests.Media
 
             var characters = new ReadOnlySlice<char>(Enumerable.Repeat('a', count).ToArray(), start, count);
 
-            return new GlyphRun(new GlyphTypeface(new MockGlyphTypeface()), 10, characters, glyphIndices, glyphAdvances,
+            return new GlyphRun(new MockGlyphTypeface(), 10, characters, glyphIndices, glyphAdvances,
                 glyphClusters: glyphClusters, biDiLevel: bidiLevel);
         }
     }

+ 3 - 3
tests/Avalonia.Base.UnitTests/VisualTree/MockRenderInterface.cs

@@ -126,17 +126,17 @@ namespace Avalonia.Base.UnitTests.VisualTree
             throw new NotImplementedException();
         }
 
-        public IGlyphRunBuffer AllocateGlyphRun(GlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
+        public IGlyphRunBuffer AllocateGlyphRun(IGlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
         {
             throw new NotImplementedException();
         }
 
-        public IHorizontalGlyphRunBuffer AllocateHorizontalGlyphRun(GlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
+        public IHorizontalGlyphRunBuffer AllocateHorizontalGlyphRun(IGlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
         {
             throw new NotImplementedException();
         }
 
-        public IPositionedGlyphRunBuffer AllocatePositionedGlyphRun(GlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
+        public IPositionedGlyphRunBuffer AllocatePositionedGlyphRun(IGlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
         {
             throw new NotImplementedException();
         }

+ 3 - 3
tests/Avalonia.Benchmarks/NullRenderingPlatform.cs

@@ -117,17 +117,17 @@ namespace Avalonia.Benchmarks
             return new MockStreamGeometryImpl();
         }
 
-        public IGlyphRunBuffer AllocateGlyphRun(GlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
+        public IGlyphRunBuffer AllocateGlyphRun(IGlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
         {
             throw new NotImplementedException();
         }
 
-        public IHorizontalGlyphRunBuffer AllocateHorizontalGlyphRun(GlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
+        public IHorizontalGlyphRunBuffer AllocateHorizontalGlyphRun(IGlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
         {
             throw new NotImplementedException();
         }
 
-        public IPositionedGlyphRunBuffer AllocatePositionedGlyphRun(GlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
+        public IPositionedGlyphRunBuffer AllocatePositionedGlyphRun(IGlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
         {
             throw new NotImplementedException();
         }

+ 1 - 1
tests/Avalonia.UnitTests/HarfBuzzTextShaperImpl.cs

@@ -30,7 +30,7 @@ namespace Avalonia.UnitTests
 
                 buffer.Language = new Language(culture ?? CultureInfo.CurrentCulture);              
 
-                var font = ((HarfBuzzGlyphTypefaceImpl)typeface.PlatformImpl).Font;
+                var font = ((HarfBuzzGlyphTypefaceImpl)typeface).Font;
 
                 font.Shape(buffer);
 

+ 3 - 3
tests/Avalonia.UnitTests/MockPlatformRenderInterface.cs

@@ -152,17 +152,17 @@ namespace Avalonia.UnitTests
             return Mock.Of<IGeometryImpl>();
         }
 
-        public IGlyphRunBuffer AllocateGlyphRun(GlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
+        public IGlyphRunBuffer AllocateGlyphRun(IGlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
         {
             return Mock.Of<IGlyphRunBuffer>();
         }
 
-        public IHorizontalGlyphRunBuffer AllocateHorizontalGlyphRun(GlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
+        public IHorizontalGlyphRunBuffer AllocateHorizontalGlyphRun(IGlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
         {
             return Mock.Of<IHorizontalGlyphRunBuffer>();
         }
 
-        public IPositionedGlyphRunBuffer AllocatePositionedGlyphRun(GlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
+        public IPositionedGlyphRunBuffer AllocatePositionedGlyphRun(IGlyphTypeface glyphTypeface, float fontRenderingEmSize, int length)
         {
             return Mock.Of<IPositionedGlyphRunBuffer>();
         }