Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
60 commits
Select commit Hold shift + click to select a range
e21b4df
Create README WinUI3.md
tajbender Feb 13, 2025
7675772
Merge branch 'dahall:nullableenabled' into WinUI-3
tajbender Mar 12, 2026
8393cdf
Merge branch 'dahall:nullableenabled' into WinUI-3
tajbender Mar 13, 2026
be98187
Merge branch 'dahall:nullableenabled' into WinUI-3
tajbender Mar 23, 2026
ed2211f
Inital Import of Samples Browser
tajbender Mar 23, 2026
c335430
Update README.md
tajbender Mar 23, 2026
2dc1b76
Bump version to `5.1.0`
tajbender Mar 23, 2026
3385fe7
Merge branch 'WinUI-3' of https://github.com/tajbender/WinClassicSamp…
tajbender Mar 23, 2026
804f3be
Comment out `Vanara.CodeGen` to fix build issues
tajbender Mar 23, 2026
897ef41
Downgrade to `net6.0-windows10.0.19041`.
tajbender Mar 23, 2026
e97acfc
Add `Microsoft.WindowsAppSDK` - version `1.5.250108004`
tajbender Mar 23, 2026
c7020e1
Add project sructure including stubs
tajbender Mar 23, 2026
7a2cd13
Add `CustomControlTemplate`.
tajbender Mar 23, 2026
11913c5
Add `HomePage`
tajbender Mar 24, 2026
661b020
Redesign `HomePage`
tajbender Mar 26, 2026
1c4ab54
Update `README.md`
tajbender Mar 27, 2026
97aa645
Add package `CommunityToolkit.Mvvm`
tajbender Mar 27, 2026
0a158bd
prj: Rename folder `Pages` to `Views`
tajbender Mar 27, 2026
4864b04
Import missing Services, ViewModels, Helpers
tajbender Mar 28, 2026
40ede34
Add Activation Handlers
tajbender Mar 28, 2026
371f03b
Add `Behaviors`, `Services`
tajbender Mar 28, 2026
86d20a1
Merge pull request #5 from dahall/nullableenabled
tajbender Apr 10, 2026
bfc0b7c
Overhaul folder structure
tajbender Apr 10, 2026
0701e64
Remove orphaned Samples Browser
tajbender Apr 10, 2026
a57d42a
Add Solution
tajbender Apr 10, 2026
d5f9a52
Add Build script
tajbender Apr 10, 2026
a8c01b6
Add app skeleton
tajbender Apr 10, 2026
a0ac75f
Update Solution, Cleanup
tajbender Apr 10, 2026
0eb9fc4
Opening `MainWindow` now
tajbender Apr 11, 2026
b1155b8
Add Vanara Packages. Apply `Vanara.CodeGen` while build
tajbender Apr 11, 2026
a7ee956
Add `AboutPage`
tajbender Apr 11, 2026
cd86e6d
Overhaul `MainPage`
tajbender Apr 11, 2026
d387c14
Fix styles. Refactor
tajbender Apr 11, 2026
afeb242
Update `READNE.md`
tajbender Apr 11, 2026
f4c0529
Cleanup
tajbender Apr 12, 2026
cb28360
Add more Styles to `ResourceDictionary`
tajbender Apr 12, 2026
7834803
Add Styles for `NavigationView`
tajbender Apr 13, 2026
bffe61e
Remove `NavigationBar`
tajbender Apr 13, 2026
a75830a
Add Template for `RyderShell`
tajbender Apr 13, 2026
0a1f5e9
Add `Assets` and `I18N` folders
tajbender Apr 13, 2026
2e0e340
Add `Models`, 'Views' and `ViewModels`
tajbender Apr 13, 2026
2cf269e
Add `ApiExplorerPage` and `StartPage`
tajbender Apr 13, 2026
0e14be3
Cleanup
tajbender Apr 13, 2026
9af60c9
Merge branch 'nullableenabled' into gui-refactored-april-26
tajbender Apr 13, 2026
156e96b
Add assets
tajbender Apr 13, 2026
37030c7
More Assets. Refactor
tajbender Apr 13, 2026
b18be33
Merge branch 'gui-refactored-april-26' of https://github.com/tajbende…
tajbender Apr 13, 2026
2337b12
Assets
tajbender Apr 13, 2026
8a0d562
Refactor
tajbender Apr 13, 2026
cc8bc75
Update `README.md`
tajbender Apr 13, 2026
5cae760
Refactor `usings`
tajbender Apr 13, 2026
895bf8d
Refactor Ressources
tajbender Apr 13, 2026
fe364c7
Refactor
tajbender Apr 13, 2026
ddc53c9
Cleanup.
tajbender Apr 14, 2026
c707734
Rename `MainPage` to `StartPage`
tajbender Apr 14, 2026
34cea33
Refactor `StartPage`, add initial Layout
tajbender Apr 14, 2026
98a4754
Add `SwapChainPanel` and other `DirectX` stuff
tajbender Apr 14, 2026
3dbc3ff
Disable `DirectX stuff`
tajbender Apr 14, 2026
336c46b
Overhaul `StartPage`
tajbender Apr 14, 2026
e39f516
Cleanup
tajbender Apr 14, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions Directory.Build.props
Original file line number Diff line number Diff line change
Expand Up @@ -23,10 +23,10 @@
<Using Include="System.Threading"/>
<Using Include="System.Runtime.InteropServices.ComTypes.FILETIME" Alias="FILETIME"/>
</ItemGroup>
<ItemGroup>
<!-- <ItemGroup>
<PackageReference Include="Vanara.CodeGen">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
</ItemGroup>
</ItemGroup> -->
</Project>
8 changes: 7 additions & 1 deletion Directory.Packages.props
Original file line number Diff line number Diff line change
Expand Up @@ -8,15 +8,20 @@
<ItemGroup>
<PackageVersion Include="AvalonEdit" Version="6.3.1.120" />
<PackageVersion Include="CommandLineParser" Version="2.9.1" />
<PackageVersion Include="CommunityToolkit.Mvvm" Version="8.1.0" />
<PackageVersion Include="ConEmu.Control.WinForms" Version="1.21.9.5" />
<PackageVersion Include="DirectShowLib.Standard" Version="2.1.0" />
<PackageVersion Include="Markdig" Version="1.1.2" />
<PackageVersion Include="Microsoft.Direct3D.D3D12" Version="1.619.1" />
<PackageVersion Include="Microsoft.Extensions.Hosting" Version="6.0.1" />
<PackageVersion Include="Microsoft.Toolkit.Uwp.Notifications" Version="7.1.3" />
<PackageVersion Include="Microsoft.Win32.Registry" Version="5.0.0" />
<PackageVersion Include="Microsoft.Windows.CsWinRT" Version="2.2.0" />
<PackageVersion Include="Microsoft.Windows.SDK.BuildTools" Version="10.0.26100.7705" />
<PackageVersion Include="Microsoft.Windows.SDK.Contracts" Version="10.0.26100.7705" />
<PackageVersion Include="Microsoft.WindowsAppSDK" Version="1.5.250108004" />
<PackageVersion Include="Microsoft.Xaml.Behaviors.WinUI.Managed" Version="2.0.9" />
<PackageVersion Include="Newtonsoft.Json" Version="13.0.1" />
<PackageVersion Include="Microsoft.WindowsAppSDK" Version="1.8.260209005" />
<PackageVersion Include="NuGet.Commands" Version="7.3.0" />
<PackageVersion Include="NuGet.Versioning" Version="7.3.0" />
Expand All @@ -26,7 +31,7 @@
<PackageVersion Include="System.Management" Version="10.0.4" />
<PackageVersion Include="Vanara.BITS" Version="$(VanaraVer)" />
<PackageVersion Include="Vanara.CodeGen" Version="$(VanaraVer)" />
<PackageVersion Include="Vanara.Core" Version="$(VanaraVer)" />
<PackageVersion Include="Vanara.Core" Version="4.2.1" />
<PackageVersion Include="Vanara.DirectoryServices" Version="$(VanaraVer)" />
<PackageVersion Include="Vanara.Library" Version="$(VanaraVer)" />
<PackageVersion Include="Vanara.PInvoke.AclUI" Version="$(VanaraVer)" />
Expand Down Expand Up @@ -112,5 +117,6 @@
<PackageVersion Include="Vanara.Windows.Forms" Version="$(VanaraVer)" />
<PackageVersion Include="Vanara.Windows.Shell" Version="$(VanaraVer)" />
<PackageVersion Include="Vanara.Windows.Shell.Common" Version="$(VanaraVer)" />
<PackageVersion Include="WinUIEx" Version="2.3.2" />
</ItemGroup>
</Project>
3,790 changes: 0 additions & 3,790 deletions WinClassicSamplesCS.sln

This file was deleted.

30 changes: 30 additions & 0 deletions WinUiClassicSamplesBrowser/.github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
name: Build WinUI 3 App

on:
push:
branches: [ main ]
pull_request:
branches: [ main ]

jobs:
build:
runs-on: windows-latest

steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: 8.0.x

- name: Restore dependencies
run: dotnet restore

- name: Build solution
run: dotnet build --configuration Release --no-restore

- name: Publish (optional for unpackaged)
if: ${{ false }} # set to true if you want publish output
run: dotnet publish -c Release
22 changes: 22 additions & 0 deletions WinUiClassicSamplesBrowser/App.xaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
<Application
x:Class="ClassicSamplesBrowser.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:system="using:System"
xmlns:ui="using:Microsoft.UI.Xaml"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Application.Resources>
<ResourceDictionary>
<CornerRadius x:Key="ControlCornerRadius">4</CornerRadius>
<SolidColorBrush x:Key="MicaBaseAltFillColorDefaultBrush" Color="{ThemeResource SystemBaseLowColor}" />
<SolidColorBrush x:Key="MicaBaseFillColorDefaultBrush" Color="{ThemeResource SystemBaseMediumColor}" />
<SolidColorBrush x:Key="MicaBaseFillColorSecondaryBrush" Color="{ThemeResource SystemBaseHighColor}" />
<SolidColorBrush x:Key="TabViewButtonBackground" Color="{ThemeResource SystemBaseLowColor}" />
<SolidColorBrush x:Key="TabViewButtonForeground" Color="{ThemeResource SystemBaseMediumColor}" />
<SolidColorBrush x:Key="TabViewScrollButtonBackground" Color="{ThemeResource SystemBaseLowColor}" />
<SolidColorBrush x:Key="TabViewScrollButtonForeground" Color="{ThemeResource SystemBaseMediumColor}" />
<SolidColorBrush x:Key="TextFillColorPrimaryBrush" Color="{ThemeResource SystemBaseHighColor}" />
<system:Double x:Key="TabViewItemAddButtonFontSize">14</system:Double>
<system:Double x:Key="TabViewItemScrollButtonFontSize">14</system:Double>
</ResourceDictionary>
</Application.Resources>
</Application>
17 changes: 17 additions & 0 deletions WinUiClassicSamplesBrowser/App.xaml.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
using Microsoft.UI.Xaml;

namespace ClassicSamplesBrowser;

public partial class App : Application
{
public App()
{
this.InitializeComponent();
}

protected override void OnLaunched(LaunchActivatedEventArgs args)
{
var window = new MainWindow();
window.Activate();
}
}
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
76 changes: 76 additions & 0 deletions WinUiClassicSamplesBrowser/ClassicSamplesBrowser.csproj
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<EnableMsixTooling>true</EnableMsixTooling>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<OutputType>WinExe</OutputType>
<TargetFramework>net8.0-windows10.0.19041.0</TargetFramework>
<UseWinUI>true</UseWinUI>
</PropertyGroup>
<ItemGroup>
<Content Remove="Assets\Vanara\Insert-Amiga-Disk.png" />
</ItemGroup>
<ItemGroup>
<None Remove="Assets\Vanara\WinUi Sailing in the Seas of Cheese.png" />
<None Remove="Views\AboutPage.xaml" />
<None Remove="Views\SamplesPage.xaml" />
<None Remove="Views\SettingsPage.xaml" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.WindowsAppSDK" Version="1.8.260317003" />
<PackageReference Include="Vanara.Core" Version="5.0.3" />
<PackageReference Include="Vanara.PInvoke.Shell32" Version="5.0.3" />
<PackageReference Include="Vanara.Windows.Shell" Version="5.0.3" />
<PackageReference Include="Vortice.Direct3D11" Version="3.8.3" />
<PackageReference Include="Vortice.DirectX" Version="3.8.3" />
<PackageReference Include="Vortice.Dxc.Native" Version="1.0.5" />
<PackageReference Include="Vortice.DXGI" Version="3.8.3" />
<PackageReference Include="Vortice.Pix.Native" Version="1.0.1" />
<PackageReference Include="Vortice.Win32" Version="2.0.0" />
<PackageReference Include="Vortice.WinUI" Version="3.8.3" />
</ItemGroup>
<ItemGroup>
<Folder Include="Resources\I18N\" />
<Folder Include="Services\" />
<Folder Include="Templates\RyderShell\Project\" />
</ItemGroup>
<ItemGroup>
<Content Update="Assets\Vanara\WinUi Sailing in the Seas of Cheese.png">
<CopyToOutputDirectory>Never</CopyToOutputDirectory>
</Content>
</ItemGroup>
<ItemGroup>
<Page Update="Templates\RyderShell\Styles\MainPage.xaml">
<SubType>Designer</SubType>
</Page>
<Page Update="Templates\RyderShell\Views\MainPage.xaml">
<SubType>Designer</SubType>
</Page>
<Page Update="Views\ApiExplorerPage.xaml">
<SubType>Designer</SubType>
</Page>
<Page Update="Views\SettingsPage.xaml">
<Generator>MSBuild:Compile</Generator>
</Page>
</ItemGroup>
<ItemGroup>
<Page Update="Views\AboutPage.xaml">
<Generator>MSBuild:Compile</Generator>
</Page>
</ItemGroup>
<ItemGroup>
<Page Update="Views\SamplesPage.xaml">
<Generator>MSBuild:Compile</Generator>
</Page>
</ItemGroup>
<ItemGroup>
<Page Update="Views\DocumentationPage.xaml">
<Generator>MSBuild:Compile</Generator>
</Page>
</ItemGroup>
<ItemGroup>
<Page Update="Views\StartPage.xaml">
<Generator>MSBuild:Compile</Generator>
</Page>
</ItemGroup>
</Project>
Empty file.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
12 changes: 12 additions & 0 deletions WinUiClassicSamplesBrowser/Directory.Packages.props
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
<Project>
<ItemGroup>
<PackageReference Include="Vanara.CodeGen" Version="5.0.3">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
</ItemGroup>
<ItemGroup>
<PackageVersion Include="Microsoft.Web.WebView2" Version="1.0.2592.51" />
<PackageVersion Include="Microsoft.WindowsAppSDK" Version="1.8.0" />
</ItemGroup>
</Project>
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
using Microsoft.UI.Dispatching;

namespace ClassicSamplesBrowser.Helpers;

public class WindowsSystemDispatcherQueueHelper
{
[StructLayout(LayoutKind.Sequential)]
struct DispatcherQueueOptions
{
public int dwSize;
public int threadType;
public int apartmentType;
}

[DllImport("CoreMessaging.dll")]
private static extern int CreateDispatcherQueueController(
DispatcherQueueOptions options,
out IntPtr dispatcherQueueController);

private IntPtr _dispatcherQueueController = IntPtr.Zero;

public void EnsureWindowsSystemDispatcherQueueController()
{
if (DispatcherQueue.GetForCurrentThread() != null)
{
// Already initialized
return;
}

if (_dispatcherQueueController == IntPtr.Zero)
{
DispatcherQueueOptions options = new()
{
dwSize = Marshal.SizeOf(typeof(DispatcherQueueOptions)),
threadType = 2, // INFO: TODO: Use Vanara' enum here: `DQTYPE_THREAD_CURRENT`
apartmentType = 2 // INFO: TODO: Use Vanara' enum here: `DQTAT_COM_STA`
};

CreateDispatcherQueueController(options, out _dispatcherQueueController);
}
}
}
18 changes: 18 additions & 0 deletions WinUiClassicSamplesBrowser/MainWindow.xaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
<Window
x:Class="ClassicSamplesBrowser.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:ClassicSamplesBrowser"
xmlns:muxc="using:Microsoft.UI.Xaml.Controls"
Title="Classic Samples Browser"
Activated="Window_Activated">

<Grid x:Name="RootGrid">
<Grid.RowDefinitions>
<RowDefinition Height="256" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<muxc:SwapChainPanel x:Name="SwapChainHost" Grid.Row="0" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" />
<Frame Grid.Row="1" x:Name="RootFrame" />
</Grid>
</Window>
Loading