Skip to content

Commit 1ecfb72

Browse files
committed
Added control for rendering Samples incl. XAML and CSharp syntax highlighted code snippets.
1 parent d09a397 commit 1ecfb72

19 files changed

Lines changed: 490 additions & 110 deletions

File tree

MADE.NET.sln

Lines changed: 0 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MADE.UI.Controls.DropDownLi
4141
EndProject
4242
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "samples", "samples", "{B7EC0D82-6637-45BD-BBB4-62D730C85529}"
4343
EndProject
44-
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MADE.Samples.Windows", "samples\MADE.Samples.Windows\MADE.Samples.Windows.csproj", "{E35E04C2-0687-4800-99C1-48769A3BAFFF}"
45-
EndProject
4644
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MADE.UI.Controls.Validator", "src\MADE.UI.Controls.Validator\MADE.UI.Controls.Validator.csproj", "{E2B20928-DAE2-4A9C-BDAF-D787B4F48391}"
4745
EndProject
4846
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MADE.Web.Mvc", "src\MADE.Web.Mvc\MADE.Web.Mvc.csproj", "{CF632609-DE29-4375-B887-F0EB2EB6FC80}"
@@ -1012,70 +1010,6 @@ Global
10121010
{347CDC37-E140-42FA-8710-A0F3297D2B6B}.Release|x64.Build.0 = Release|Any CPU
10131011
{347CDC37-E140-42FA-8710-A0F3297D2B6B}.Release|x86.ActiveCfg = Release|Any CPU
10141012
{347CDC37-E140-42FA-8710-A0F3297D2B6B}.Release|x86.Build.0 = Release|Any CPU
1015-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Ad-Hoc|Any CPU.ActiveCfg = Release|x64
1016-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Ad-Hoc|Any CPU.Build.0 = Release|x64
1017-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Ad-Hoc|Any CPU.Deploy.0 = Release|x64
1018-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Ad-Hoc|ARM.ActiveCfg = Release|ARM
1019-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Ad-Hoc|ARM.Build.0 = Release|ARM
1020-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Ad-Hoc|ARM.Deploy.0 = Release|ARM
1021-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Ad-Hoc|ARM64.ActiveCfg = Release|ARM64
1022-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Ad-Hoc|ARM64.Build.0 = Release|ARM64
1023-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Ad-Hoc|ARM64.Deploy.0 = Release|ARM64
1024-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Ad-Hoc|iPhone.ActiveCfg = Release|x64
1025-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Ad-Hoc|iPhone.Build.0 = Release|x64
1026-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Ad-Hoc|iPhone.Deploy.0 = Release|x64
1027-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Release|x64
1028-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Ad-Hoc|iPhoneSimulator.Build.0 = Release|x64
1029-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Ad-Hoc|iPhoneSimulator.Deploy.0 = Release|x64
1030-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Ad-Hoc|x64.ActiveCfg = Release|x64
1031-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Ad-Hoc|x64.Build.0 = Release|x64
1032-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Ad-Hoc|x64.Deploy.0 = Release|x64
1033-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Ad-Hoc|x86.ActiveCfg = Release|x86
1034-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Ad-Hoc|x86.Build.0 = Release|x86
1035-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Ad-Hoc|x86.Deploy.0 = Release|x86
1036-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.AppStore|Any CPU.ActiveCfg = Release|x64
1037-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.AppStore|Any CPU.Build.0 = Release|x64
1038-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.AppStore|Any CPU.Deploy.0 = Release|x64
1039-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.AppStore|ARM.ActiveCfg = Release|ARM
1040-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.AppStore|ARM.Build.0 = Release|ARM
1041-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.AppStore|ARM.Deploy.0 = Release|ARM
1042-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.AppStore|ARM64.ActiveCfg = Release|ARM64
1043-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.AppStore|ARM64.Build.0 = Release|ARM64
1044-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.AppStore|ARM64.Deploy.0 = Release|ARM64
1045-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.AppStore|iPhone.ActiveCfg = Release|x64
1046-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.AppStore|iPhone.Build.0 = Release|x64
1047-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.AppStore|iPhone.Deploy.0 = Release|x64
1048-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.AppStore|iPhoneSimulator.ActiveCfg = Release|x64
1049-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.AppStore|iPhoneSimulator.Build.0 = Release|x64
1050-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.AppStore|iPhoneSimulator.Deploy.0 = Release|x64
1051-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.AppStore|x64.ActiveCfg = Release|x64
1052-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.AppStore|x64.Build.0 = Release|x64
1053-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.AppStore|x64.Deploy.0 = Release|x64
1054-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.AppStore|x86.ActiveCfg = Release|x86
1055-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.AppStore|x86.Build.0 = Release|x86
1056-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.AppStore|x86.Deploy.0 = Release|x86
1057-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Debug|Any CPU.ActiveCfg = Debug|x86
1058-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Debug|ARM.ActiveCfg = Debug|ARM
1059-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Debug|ARM.Build.0 = Debug|ARM
1060-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Debug|ARM.Deploy.0 = Debug|ARM
1061-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Debug|ARM64.ActiveCfg = Debug|ARM64
1062-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Debug|ARM64.Build.0 = Debug|ARM64
1063-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Debug|ARM64.Deploy.0 = Debug|ARM64
1064-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Debug|iPhone.ActiveCfg = Debug|x86
1065-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Debug|iPhoneSimulator.ActiveCfg = Debug|x86
1066-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Debug|x64.ActiveCfg = Debug|x64
1067-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Debug|x64.Build.0 = Debug|x64
1068-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Debug|x64.Deploy.0 = Debug|x64
1069-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Debug|x86.ActiveCfg = Debug|x86
1070-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Debug|x86.Build.0 = Debug|x86
1071-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Debug|x86.Deploy.0 = Debug|x86
1072-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Release|Any CPU.ActiveCfg = Release|x86
1073-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Release|ARM.ActiveCfg = Release|ARM
1074-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Release|ARM64.ActiveCfg = Release|ARM64
1075-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Release|iPhone.ActiveCfg = Release|x86
1076-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Release|iPhoneSimulator.ActiveCfg = Release|x86
1077-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Release|x64.ActiveCfg = Release|x64
1078-
{E35E04C2-0687-4800-99C1-48769A3BAFFF}.Release|x86.ActiveCfg = Release|x86
10791013
{E2B20928-DAE2-4A9C-BDAF-D787B4F48391}.Ad-Hoc|Any CPU.ActiveCfg = Release|Any CPU
10801014
{E2B20928-DAE2-4A9C-BDAF-D787B4F48391}.Ad-Hoc|Any CPU.Build.0 = Release|Any CPU
10811015
{E2B20928-DAE2-4A9C-BDAF-D787B4F48391}.Ad-Hoc|ARM.ActiveCfg = Release|Any CPU
@@ -1930,7 +1864,6 @@ Global
19301864
{55930DA1-35A4-445A-8028-02D22AFF20DB} = {69149D0F-BB09-411B-88F0-A1E845058D70}
19311865
{79AFD8FC-7789-47B7-B808-26E03D0F1E05} = {01380FB8-F8A7-4416-AABA-5407574B7723}
19321866
{347CDC37-E140-42FA-8710-A0F3297D2B6B} = {01380FB8-F8A7-4416-AABA-5407574B7723}
1933-
{E35E04C2-0687-4800-99C1-48769A3BAFFF} = {B7EC0D82-6637-45BD-BBB4-62D730C85529}
19341867
{E2B20928-DAE2-4A9C-BDAF-D787B4F48391} = {01380FB8-F8A7-4416-AABA-5407574B7723}
19351868
{CF632609-DE29-4375-B887-F0EB2EB6FC80} = {01380FB8-F8A7-4416-AABA-5407574B7723}
19361869
{774FD8D5-CCC1-4EED-AA14-F7069BFAE5CE} = {01380FB8-F8A7-4416-AABA-5407574B7723}

samples/MADE.Samples/MADE.Samples.Droid/MADE.Samples.Droid.csproj

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,9 @@
6666
<PackageReference Include="Microsoft.Extensions.DependencyInjection">
6767
<Version>5.0.2</Version>
6868
</PackageReference>
69+
<PackageReference Include="Uno.ColorCode.UWP">
70+
<Version>2.0.8-gd42a883502</Version>
71+
</PackageReference>
6972
<PackageReference Include="Uno.Microsoft.Toolkit.Uwp.UI.Controls.Primitives">
7073
<Version>7.0.0</Version>
7174
</PackageReference>

samples/MADE.Samples/MADE.Samples.Shared/Features/Home/Pages/MainPage.xaml

Lines changed: 9 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -11,44 +11,30 @@
1111
Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"
1212
mc:Ignorable="d">
1313

14-
<Grid Padding="12">
14+
<Grid Padding="16">
1515
<controls:AdaptiveGridView
1616
extensions:ListViewBaseExtensions.ItemClickCommand="{x:Bind ViewModel.NavigateToSampleCommand}"
17-
DesiredWidth="340"
17+
DesiredWidth="336"
1818
IsItemClickEnabled="true"
1919
ItemsSource="{x:Bind ViewModel.Samples}"
2020
OneRowModeEnabled="False"
2121
SelectionMode="None"
2222
StretchContentForSingleRow="False">
2323
<controls:AdaptiveGridView.ItemTemplate>
2424
<DataTemplate x:DataType="data:Sample">
25-
<StackPanel Padding="12" Background="Transparent">
25+
<StackPanel Padding="16" Background="Transparent">
2626
<Grid>
2727
<Border>
2828
<Image Source="{Binding IconPath}" />
2929
</Border>
3030
</Grid>
3131

32-
<Grid Margin="0,12,0,0">
33-
<Grid.RowDefinitions>
34-
<RowDefinition Height="Auto" />
35-
<RowDefinition Height="Auto" />
36-
</Grid.RowDefinitions>
37-
38-
<TextBlock
39-
VerticalAlignment="Center"
40-
Style="{StaticResource BodyTextBlockStyle}"
41-
Text="{Binding Name}"
42-
TextTrimming="CharacterEllipsis" />
43-
44-
<TextBlock
45-
Grid.Row="1"
46-
VerticalAlignment="Center"
47-
MaxLines="2"
48-
Style="{StaticResource CaptionTextBlockStyle}"
49-
Text="{Binding Description}"
50-
TextTrimming="CharacterEllipsis" />
51-
</Grid>
32+
<TextBlock
33+
Margin="0,16,0,0"
34+
VerticalAlignment="Center"
35+
Style="{StaticResource BodyTextBlockStyle}"
36+
Text="{Binding Name}"
37+
TextTrimming="CharacterEllipsis" />
5238
</StackPanel>
5339
</DataTemplate>
5440
</controls:AdaptiveGridView.ItemTemplate>

samples/MADE.Samples/MADE.Samples.Shared/Features/Home/ViewModels/MainPageViewModel.cs

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,12 +30,24 @@ public MainPageViewModel(INavigationService navigationService, IMessenger messen
3030
"FilePicker",
3131
typeof(FilePickerPage),
3232
string.Empty,
33-
"/Features/Samples/Assets/FilePicker.png"),
33+
"/Features/Samples/Assets/FilePicker/FilePicker.png"),
3434
new Sample(
3535
"InputValidator",
3636
typeof(InputValidatorPage),
3737
string.Empty,
38-
"/Features/Samples/Assets/InputValidator.png"),
38+
"/Features/Samples/Assets/InputValidator/InputValidator.png")
39+
}
40+
},
41+
new SampleGroup
42+
{
43+
Name = "Helpers",
44+
Samples = new List<Sample>
45+
{
46+
new Sample(
47+
"AppDialog",
48+
typeof(AppDialogPage),
49+
string.Empty,
50+
"/Features/Samples/Assets/AppDialog/AppDialog.png")
3951
}
4052
}
4153
};

samples/MADE.Samples/MADE.Samples.Shared/Features/Samples/Assets/FilePicker.png renamed to samples/MADE.Samples/MADE.Samples.Shared/Features/Samples/Assets/FilePicker/FilePicker.png

File renamed without changes.
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
public ObservableCollection<FilePickerItem> FilePickerFiles { get; } =
2+
new ObservableCollection<FilePickerItem>();
3+
4+
public ICollection<string> FilePickerTypes => new List<string> { ".jpg" };
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
<Page
2+
x:Class="MADE.Samples.Features.Samples.Pages.FilePickerPage"
3+
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
4+
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
5+
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
6+
xmlns:made="using:MADE.UI.Controls"
7+
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
8+
xmlns:win="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
9+
Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"
10+
mc:Ignorable="d">
11+
12+
<Grid>
13+
<made:FilePicker
14+
x:Name="FilePickerControl"
15+
AppendFiles="True"
16+
FileTypes="{x:Bind FilePickerTypes}"
17+
Files="{x:Bind FilePickerFiles}"
18+
Header="FilePicker with multiple item selection"
19+
SelectionMode="Multiple" />
20+
</Grid>
21+
</Page>

samples/MADE.Samples/MADE.Samples.Shared/Features/Samples/Assets/InputValidator.png renamed to samples/MADE.Samples/MADE.Samples.Shared/Features/Samples/Assets/InputValidator/InputValidator.png

File renamed without changes.
Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
<pages:MvvmPage
2+
x:Class="MADE.Samples.Features.Samples.Pages.AppDialogPage"
3+
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
4+
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
5+
xmlns:controls="using:MADE.UI.Controls"
6+
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
7+
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
8+
xmlns:pages="using:MADE.UI.Views.Navigation.Pages"
9+
xmlns:win="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
10+
Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"
11+
mc:Ignorable="d">
12+
13+
<Grid>
14+
<Grid.RowDefinitions>
15+
<RowDefinition Height="Auto" />
16+
<RowDefinition Height="*" />
17+
</Grid.RowDefinitions>
18+
19+
<win:CommandBar>
20+
<win:CommandBar.Content>
21+
<Button
22+
x:Name="BackButton"
23+
VerticalAlignment="Top"
24+
Command="{x:Bind ViewModel.GoBackCommand}"
25+
IsEnabled="{x:Bind Frame.CanGoBack, Mode=OneWay}"
26+
Style="{StaticResource NavigationBackButtonNormalStyle}"
27+
ToolTipService.ToolTip="Back" />
28+
</win:CommandBar.Content>
29+
</win:CommandBar>
30+
31+
<Grid Grid.Row="1" Padding="16">
32+
<Grid.RowDefinitions>
33+
<RowDefinition Height="Auto" />
34+
<RowDefinition Height="Auto" />
35+
<RowDefinition Height="*" />
36+
</Grid.RowDefinitions>
37+
38+
<TextBlock
39+
Margin="0,0,0,16"
40+
Style="{StaticResource TitleTextBlockStyle}"
41+
Text="AppDialog helper" />
42+
43+
<TextBlock
44+
Grid.Row="1"
45+
Margin="0,0,0,48"
46+
Style="{StaticResource BaseTextBlockStyle}"
47+
Text="The FilePicker is a custom-built UI element that provides a file selection user experience. The control works in a similar way to the file input element in web applications." />
48+
49+
<ScrollViewer Grid.Row="2">
50+
<Grid>
51+
<!--<controls:FilePicker
52+
x:Name="FilePickerControl"
53+
Margin="0,16,0,0"
54+
AppendFiles="True"
55+
FileTypes="{x:Bind ViewModel.FilePickerTypes}"
56+
Files="{x:Bind ViewModel.FilePickerFiles}"
57+
Header="FilePicker with multiple item selection"
58+
SelectionMode="Multiple" />-->
59+
</Grid>
60+
</ScrollViewer>
61+
62+
</Grid>
63+
64+
65+
</Grid>
66+
</pages:MvvmPage>
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
namespace MADE.Samples.Features.Samples.Pages
2+
{
3+
using CommunityToolkit.Mvvm.Messaging;
4+
using MADE.Samples.Features.Samples.ViewModels;
5+
using MADE.UI.Views.Navigation;
6+
using MADE.UI.Views.Navigation.Pages;
7+
using Microsoft.Extensions.DependencyInjection;
8+
9+
public sealed partial class AppDialogPage : MvvmPage
10+
{
11+
public AppDialogPage()
12+
{
13+
this.InitializeComponent();
14+
this.DataContext = new AppDialogPageViewModel(
15+
App.Services.GetService<INavigationService>(),
16+
App.Services.GetService<IMessenger>());
17+
}
18+
19+
public AppDialogPageViewModel ViewModel => this.DataContext as AppDialogPageViewModel;
20+
}
21+
}

0 commit comments

Comments
 (0)