Merge pull request #510 from mono/dev/elmsharp-sample
Added an ElmSharp sample for Tizen
This commit is contained in:
Коммит
f91da2382e
|
@ -160,9 +160,10 @@ var CreateSamplesZip = new Action<DirectoryPath, DirectoryPath> ((samplesDirPath
|
|||
Force = true,
|
||||
Recursive = true
|
||||
};
|
||||
DeleteDirectories (GetDirectories ($"{workingDir}/**/bin"), settings);
|
||||
DeleteDirectories (GetDirectories ($"{workingDir}/**/obj"), settings);
|
||||
DeleteDirectories (GetDirectories ($"{workingDir}/**/AppPackages"), settings);
|
||||
DeleteDirectories (GetDirectories ($"{workingDir}/*/*/*/bin"), settings);
|
||||
DeleteDirectories (GetDirectories ($"{workingDir}/*/*/*/obj"), settings);
|
||||
DeleteDirectories (GetDirectories ($"{workingDir}/*/*/*/AppPackages"), settings);
|
||||
DeleteDirectories (GetDirectories ($"{workingDir}/*/*/.vs"), settings);
|
||||
|
||||
// make sure the paths are in the correct format for comparison
|
||||
var dpc = System.IO.Path.DirectorySeparatorChar;
|
||||
|
|
|
@ -0,0 +1,48 @@
|
|||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 15
|
||||
VisualStudioVersion = 15.0.27130.2010
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "SkiaSharp.Views.Shared", "..\..\..\source\SkiaSharp.Views\SkiaSharp.Views.Shared\SkiaSharp.Views.Shared.shproj", "{5A67972C-1C04-4913-9950-06A03BFE9533}"
|
||||
EndProject
|
||||
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Binding", "..\..\..\binding\Binding\Binding.shproj", "{9C502B9A-25D4-473F-89BD-5A13DDE16354}"
|
||||
EndProject
|
||||
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "Binding.Shared", "..\..\..\binding\Binding.Shared\Binding.Shared.shproj", "{6F8349DC-90AC-441D-8B8B-BE623F46BE6D}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.Tizen", "..\..\..\binding\SkiaSharp.Tizen\SkiaSharp.Tizen.csproj", "{A7B25831-3EA3-4F88-AA82-4D4CA66B19C6}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharp.Views.Tizen", "..\..\..\source\SkiaSharp.Views\SkiaSharp.Views.Tizen\SkiaSharp.Views.Tizen.csproj", "{E0AAA975-BCF0-46F9-8E95-407FD6931850}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SkiaSharpSample", "SkiaSharpSample\SkiaSharpSample.csproj", "{875CA172-1A84-48A7-A55D-A92AC9A56CA6}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SharedMSBuildProjectFiles) = preSolution
|
||||
..\..\..\source\SkiaSharp.Views\SkiaSharp.Views.Shared\SkiaSharp.Views.Shared.projitems*{5a67972c-1c04-4913-9950-06a03bfe9533}*SharedItemsImports = 13
|
||||
..\..\..\binding\Binding.Shared\Binding.Shared.projitems*{6f8349dc-90ac-441d-8b8b-be623f46be6d}*SharedItemsImports = 13
|
||||
..\..\..\binding\Binding\Binding.projitems*{9c502b9a-25d4-473f-89bd-5a13dde16354}*SharedItemsImports = 13
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Release|Any CPU = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{A7B25831-3EA3-4F88-AA82-4D4CA66B19C6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{A7B25831-3EA3-4F88-AA82-4D4CA66B19C6}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{A7B25831-3EA3-4F88-AA82-4D4CA66B19C6}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{A7B25831-3EA3-4F88-AA82-4D4CA66B19C6}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{E0AAA975-BCF0-46F9-8E95-407FD6931850}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{E0AAA975-BCF0-46F9-8E95-407FD6931850}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{E0AAA975-BCF0-46F9-8E95-407FD6931850}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{E0AAA975-BCF0-46F9-8E95-407FD6931850}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{875CA172-1A84-48A7-A55D-A92AC9A56CA6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{875CA172-1A84-48A7-A55D-A92AC9A56CA6}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{875CA172-1A84-48A7-A55D-A92AC9A56CA6}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{875CA172-1A84-48A7-A55D-A92AC9A56CA6}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {67EACD19-0CEA-4127-9842-549AA6FB84C9}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
|
@ -0,0 +1,79 @@
|
|||
using System;
|
||||
using ElmSharp;
|
||||
using Tizen.Applications;
|
||||
|
||||
using SkiaSharp;
|
||||
using SkiaSharp.Views.Tizen;
|
||||
|
||||
namespace SkiaSharpSample
|
||||
{
|
||||
public class App : CoreUIApplication
|
||||
{
|
||||
public static void Main(string[] args)
|
||||
{
|
||||
Elementary.Initialize();
|
||||
Elementary.ThemeOverlay();
|
||||
|
||||
var app = new App();
|
||||
app.Run(args);
|
||||
}
|
||||
|
||||
protected override void OnCreate()
|
||||
{
|
||||
base.OnCreate();
|
||||
|
||||
Initialize();
|
||||
}
|
||||
|
||||
private void Initialize()
|
||||
{
|
||||
var window = new Window("ElmSharpApp");
|
||||
window.BackButtonPressed += OnBackButtonPressed;
|
||||
window.AvailableRotations = DisplayRotation.Degree_0 | DisplayRotation.Degree_180 | DisplayRotation.Degree_270 | DisplayRotation.Degree_90;
|
||||
window.Show();
|
||||
|
||||
var skiaView = new SKCanvasView(window);
|
||||
skiaView.PaintSurface += OnPaintSurface;
|
||||
skiaView.Show();
|
||||
|
||||
var conformant = new Conformant(window);
|
||||
conformant.Show();
|
||||
conformant.SetContent(skiaView);
|
||||
}
|
||||
|
||||
private void OnPaintSurface(object sender, SKPaintSurfaceEventArgs e)
|
||||
{
|
||||
var skiaView = sender as SKCanvasView;
|
||||
var geo = skiaView.Geometry.ToSKRect();
|
||||
|
||||
// the the canvas and properties
|
||||
var canvas = e.Surface.Canvas;
|
||||
|
||||
// get the screen density for scaling
|
||||
var scale = e.Info.Width / geo.Width;
|
||||
|
||||
// handle the device screen density
|
||||
canvas.Scale(scale);
|
||||
|
||||
// make sure the canvas is blank
|
||||
canvas.Clear(SKColors.White);
|
||||
|
||||
// draw some text
|
||||
var paint = new SKPaint
|
||||
{
|
||||
Color = SKColors.Black,
|
||||
IsAntialias = true,
|
||||
Style = SKPaintStyle.Fill,
|
||||
TextAlign = SKTextAlign.Center,
|
||||
TextSize = 24
|
||||
};
|
||||
var coord = new SKPoint(geo.Width / 2f, (geo.Height + paint.TextSize) / 2f);
|
||||
canvas.DrawText("SkiaSharp", coord, paint);
|
||||
}
|
||||
|
||||
private void OnBackButtonPressed(object sender, EventArgs e)
|
||||
{
|
||||
Exit();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,40 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>tizen40</TargetFramework>
|
||||
<OutputType>Exe</OutputType>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugType>portable</DebugType>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>None</DebugType>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Tizen.NET" Version="4.0.0" ExcludeAssets="Runtime" />
|
||||
<PackageReference Include="Tizen.NET.Sdk" Version="1.0.1" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\..\..\source\SkiaSharp.Views\SkiaSharp.Views.Tizen\SkiaSharp.Views.Tizen.csproj" />
|
||||
<ProjectReference Include="..\..\..\..\binding\SkiaSharp.Tizen\SkiaSharp.Tizen.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<!--
|
||||
<None Include="..\..\..\..\output\native\tizen\i386\libSkiaSharp.so">
|
||||
<Link>tpkroot\bin\runtimes\tizen-x86\native\libSkiaSharp.so</Link>
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</None>
|
||||
-->
|
||||
<None Include="..\..\..\..\output\native\tizen\armel\libSkiaSharp.so">
|
||||
<Link>tpkroot\bin\runtimes\tizen-armel\native\libSkiaSharp.so</Link>
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</None>
|
||||
</ItemGroup>
|
||||
|
||||
<Import Project="..\..\..\..\output\SkiaSharp\nuget\build\tizen40\SkiaSharp.targets" Condition="Exists('..\..\..\..\output\SkiaSharp\nuget\build\tizen40\SkiaSharp.targets')" />
|
||||
|
||||
</Project>
|
Двоичный файл не отображается.
После Ширина: | Высота: | Размер: 9.9 KiB |
|
@ -0,0 +1,10 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest package="org.tizen.example.SkiaSharpSample" version="1.0.0" api-version="4" xmlns="http://tizen.org/ns/packages">
|
||||
<profile name="common" />
|
||||
<ui-application appid="org.tizen.example.SkiaSharpSample" exec="SkiaSharpSample.dll" multiple="false" nodisplay="false" taskmanage="true" splash-screen-display="true" type="dotnet" launch_mode="single">
|
||||
<label>SkiaSharpSample</label>
|
||||
<icon>SkiaSharpSample.png</icon>
|
||||
<metadata key="http://tizen.org/metadata/prefer_dotnet_aot" value="true" />
|
||||
</ui-application>
|
||||
<provides-appdefined-privileges />
|
||||
</manifest>
|
|
@ -0,0 +1,21 @@
|
|||
using Xamarin.Forms.Platform.Tizen;
|
||||
|
||||
namespace SkiaSharpSample
|
||||
{
|
||||
public class Program : FormsApplication
|
||||
{
|
||||
public static void Main(string[] args)
|
||||
{
|
||||
var app = new Program();
|
||||
Forms.Init(app);
|
||||
app.Run(args);
|
||||
}
|
||||
|
||||
protected override void OnCreate()
|
||||
{
|
||||
base.OnCreate();
|
||||
|
||||
LoadApplication(new App());
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,21 +0,0 @@
|
|||
using System;
|
||||
|
||||
namespace SkiaSharpSample
|
||||
{
|
||||
class Program : global::Xamarin.Forms.Platform.Tizen.FormsApplication
|
||||
{
|
||||
protected override void OnCreate()
|
||||
{
|
||||
base.OnCreate();
|
||||
|
||||
LoadApplication(new App());
|
||||
}
|
||||
|
||||
static void Main(string[] args)
|
||||
{
|
||||
var app = new Program();
|
||||
global::Xamarin.Forms.Platform.Tizen.Forms.Init(app);
|
||||
app.Run(args);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,15 +1,10 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest xmlns="http://tizen.org/ns/packages" api-version="4" package="org.tizen.example.SkiaSharpSample" version="1.0.0">
|
||||
<manifest package="org.tizen.example.SkiaSharpSample" version="1.0.0" api-version="4" xmlns="http://tizen.org/ns/packages">
|
||||
<profile name="common" />
|
||||
<ui-application appid="org.tizen.example.SkiaSharpSample"
|
||||
exec="SkiaSharpSample.dll"
|
||||
type="dotnet"
|
||||
multiple="false"
|
||||
taskmanage="true"
|
||||
nodisplay="false"
|
||||
launch_mode="single">
|
||||
<ui-application appid="org.tizen.example.SkiaSharpSample" exec="SkiaSharpSample.dll" multiple="false" nodisplay="false" taskmanage="true" splash-screen-display="true" type="dotnet" launch_mode="single">
|
||||
<label>SkiaSharpSample</label>
|
||||
<icon>SkiaSharpSample.png</icon>
|
||||
<metadata key="http://tizen.org/metadata/prefer_dotnet_aot" value="true" />
|
||||
</ui-application>
|
||||
<provides-appdefined-privileges />
|
||||
</manifest>
|
||||
|
|
Загрузка…
Ссылка в новой задаче