Skip to content

Commit e19fb5b

Browse files
committed
add skeleton CSharpMarkup.WinUI.ScottPlot project
1 parent 97e0573 commit e19fb5b

File tree

6 files changed

+428
-0
lines changed

6 files changed

+428
-0
lines changed
Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
<Project Sdk="Microsoft.NET.Sdk">
2+
<PropertyGroup>
3+
<Configurations>Debug;Release;Generate</Configurations>
4+
5+
<!-- Workaround for PRI resource build errors and dotnet build support, from https://github.com/dotnet/maui/issues/5886#issuecomment-1123106200 -->
6+
<EnablePreviewMsixTooling>true</EnablePreviewMsixTooling>
7+
<GenerateLibraryLayout>true</GenerateLibraryLayout>
8+
</PropertyGroup>
9+
10+
<PropertyGroup>
11+
<PackageId>CSharpMarkup.WinUI.ScottPlot</PackageId>
12+
<Title>CSharpMarkup.WinUI.ScottPlot</Title>
13+
<Summary>Build .NET browser / native UI in declarative C#</Summary>
14+
<Description>Enjoy a Flutter-like UI development experience with .NET Hot Reload and WinUI 3, using Windows App SDK and/or Uno Platform. Build .NET applications fully in C#. Target browsers and native desktop / mobile. No XAML / HTML / JavaScript / CSS required</Description>
15+
<PackageReadmeFile>Readme.md</PackageReadmeFile>
16+
<PackageTags>csharpformarkup,csharpmarkup,markup,csharp,ui,winui,windowsappsdk,uno,webassembly,windows,desktop,flutter</PackageTags>
17+
<Copyright>Copyright © VincentH.NET</Copyright>
18+
<PackageLicenseExpression>MIT</PackageLicenseExpression>
19+
<Authors>VincentH.NET</Authors>
20+
<Owners>VincentH.NET</Owners>
21+
<RepositoryUrl>https://github.com/VincentH-Net/CSharpForMarkup</RepositoryUrl>
22+
<PackageProjectUrl>https://github.com/VincentH-Net/CSharpForMarkup</PackageProjectUrl>
23+
<PackageReleaseNotes>See source repository for release notes</PackageReleaseNotes>
24+
<PackageRequireLicenseAcceptance>false</PackageRequireLicenseAcceptance>
25+
<RepositoryType>git</RepositoryType>
26+
<Product>$(AssemblyName) ($(TargetFramework))</Product>
27+
<Version>$(CSharpMarkupVersion)</Version>
28+
<NeutralLanguage>en</NeutralLanguage>
29+
30+
<NoWarn>CS1591;CS1573;Uno0001</NoWarn>
31+
32+
<GenerateDocumentationFile Condition=" '$(Configuration)' == 'Release' ">true</GenerateDocumentationFile>
33+
<GeneratePackageOnBuild Condition=" '$(Configuration)' == 'Release' ">true</GeneratePackageOnBuild>
34+
35+
<!-- Enable Source Link -->
36+
<PublishRepositoryUrl>true</PublishRepositoryUrl>
37+
<IncludeSymbols>true</IncludeSymbols>
38+
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
39+
40+
<DebugType>portable</DebugType>
41+
<AllowedOutputExtensionsInPackageBuildOutputFolder>$(AllowedOutputExtensionsInPackageBuildOutputFolder);.pdb;.xml</AllowedOutputExtensionsInPackageBuildOutputFolder>
42+
<EmbedUntrackedSources>true</EmbedUntrackedSources>
43+
</PropertyGroup>
44+
45+
<PropertyGroup>
46+
<RootNamespace>CSharpMarkup.WinUI.ScottPlot</RootNamespace>
47+
<TargetFrameworks>net8.0-windows10.0.19041;net8.0;net8.0-android34.0;net8.0-ios18.0;net8.0-maccatalyst18.0</TargetFrameworks> <!-- Identical to ScottPlot.WinUI NuGet target frameworks -->
48+
<EnableDefaultPageItems>false</EnableDefaultPageItems>
49+
</PropertyGroup>
50+
51+
<PropertyGroup Condition="$(IsUno)==false">
52+
<UseWinUI>true</UseWinUI>
53+
</PropertyGroup>
54+
55+
<ItemGroup>
56+
<PackageReference Include="Microsoft.SourceLink.GitHub" PrivateAssets="All" />
57+
<PackageReference Include="CSharpMarkup.WinUI" />
58+
<PackageReference Include="ScottPlot.WinUI" />
59+
</ItemGroup>
60+
</Project>
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
[C# Markup 2](https://github.com/VincentH-Net/CSharpForMarkup) API for [ScottPlot.WinUI](https://www.nuget.org/packages/ScottPlot.WinUI) NuGet
2+
3+
Enjoy a Flutter-like UI development experience with .NET Hot Reload and the best .NET UI frameworks
4+
- Build .NET applications **fully in C#**<br />
5+
- Target browsers and native desktop / mobile<br />
6+
7+
No XAML / HTML / JavaScript / CSS required
8+
9+
This release targets WinUI 3 (Windows App SDK) and Uno Platform - including browser webassembly - with C# 13 and .NET 8.
10+
11+
[Docs](https://github.com/VincentH-Net/CSharpForMarkup#readme)
12+
13+
[Example application](https://github.com/VincentH-Net/CSharpForMarkup/tree/master/src/CSharpMarkup.WinUI.Examples)
14+
15+
[Release Notes](https://github.com/VincentH-Net/CSharpForMarkup/releases/tag/__CSharpMarkupReleaseTag__)
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
using System;
2+
using Xaml = Microsoft.UI.Xaml;
3+
#if GENERATE
4+
using CSharpMarkup.Generate.WinUI;
5+
using Controls = Microsoft.UI.Xaml.Controls;
6+
7+
[assembly: MarkupHelpers(
8+
markupHelpersType: typeof(CSharpMarkup.WinUI.ScottPlot.Helpers)
9+
)]
10+
#endif
11+
12+
namespace CSharpMarkup.WinUI.ScottPlot
13+
{
14+
public static partial class Helpers
15+
{
16+
17+
#if GENERATE
18+
/// <summary>Used by codegen to generate a <see cref="IDefaultBindProperty"/> implementation on markup types. Not used at runtime.</summary>
19+
/// <remarks>Types must be fully specified for codegen to work</remarks>
20+
static Xaml.DependencyProperty[] DefaultBindProperties => new Xaml.DependencyProperty[]
21+
{
22+
// TODO: e.g. ScottPlot...Property,
23+
};
24+
25+
/// <summary>
26+
/// Used by codegen to identify which assemblies to scan for UI types.
27+
/// Markup types will be generated for these UI types (e.g. controls).
28+
/// </summary>
29+
static Type[] UIAssemblies => new Type[] // Assemblies in UI NuGets that contain UI types
30+
{
31+
// TODO: typeof(global::ScottPlot...)
32+
};
33+
#endif
34+
}
35+
}

0 commit comments

Comments
 (0)