diff --git a/src/OpenSilver.TemplateWizards/AppCustomizationWindow/AppConfigurationWindow.xaml b/src/OpenSilver.TemplateWizards/AppCustomizationWindow/AppConfigurationWindow.xaml index cb3b6a7..4e36534 100644 --- a/src/OpenSilver.TemplateWizards/AppCustomizationWindow/AppConfigurationWindow.xaml +++ b/src/OpenSilver.TemplateWizards/AppCustomizationWindow/AppConfigurationWindow.xaml @@ -7,49 +7,77 @@ WindowStartupLocation="CenterScreen" ResizeMode="NoResize" mc:Ignorable="d" - Title="OpenSilver Configuration" Height="300" Width="350" Icon="Icon.ico"> + Title="OpenSilver Configuration" Height="600" Width="660" Icon="Icon.ico"> - + + + + + + + - - - - + + + + + + + + + + + + + + + + + + + + + + .NET 7 .NET 8 .NET 9 - - - - - - - - - + + - - - - + + + + - + + + - + + + + + diff --git a/src/OpenSilver.TemplateWizards/AppCustomizationWindow/AppConfigurationWindow.xaml.cs b/src/OpenSilver.TemplateWizards/AppCustomizationWindow/AppConfigurationWindow.xaml.cs index 7d51dfa..279a4f4 100644 --- a/src/OpenSilver.TemplateWizards/AppCustomizationWindow/AppConfigurationWindow.xaml.cs +++ b/src/OpenSilver.TemplateWizards/AppCustomizationWindow/AppConfigurationWindow.xaml.cs @@ -1,4 +1,5 @@ -using System; +using OpenSilver.TemplateWizards.AppCustomizationWindow.Models; +using System; using System.Collections.Generic; using System.Windows; using System.Windows.Controls; @@ -45,7 +46,7 @@ public AppConfigurationWindow(string openSilverType) InitializeComponent(); if (openSilverType == "Library") { - DotNetVersionStackPanel.Visibility = Visibility.Collapsed; + DotNetVersionPanel.Visibility = Visibility.Collapsed; } } @@ -78,5 +79,11 @@ private void OnThemSelected(object sender, RoutedEventArgs e) } } + + private void ThemeCollectionView_SelectionChanged(object sender, EventArgs e) + { + SelectedTheme= (sender as ThemeOptions).Name; + continueBtn.IsEnabled = true; + } } } diff --git a/src/OpenSilver.TemplateWizards/AppCustomizationWindow/Models/ThemeOption.cs b/src/OpenSilver.TemplateWizards/AppCustomizationWindow/Models/ThemeOption.cs new file mode 100644 index 0000000..fba3b48 --- /dev/null +++ b/src/OpenSilver.TemplateWizards/AppCustomizationWindow/Models/ThemeOption.cs @@ -0,0 +1,22 @@ +using System.Collections.Generic; +using System.Runtime.CompilerServices; + +namespace OpenSilver.TemplateWizards.AppCustomizationWindow.Models +{ + public class ThemeOptions + { + public string ThumbnailUri { get; set; } + public string Name { get; set; } + public string Title { get; set; } + public string BackgroundColor { get; set; } + + public static IEnumerable GeThemes() + { + var themes = new List(); + themes.Add(new ThemeOptions { Name="Light",Title = "Modern - Light", ThumbnailUri = "/OpenSilver.TemplateWizards;component/Assets/Images/light_theme.png", BackgroundColor = "#FFFFFF" }); + themes.Add(new ThemeOptions { Name="Dark",Title = "Modern - Dark", ThumbnailUri = "/OpenSilver.TemplateWizards;component/Assets/Images/dark_theme.png", BackgroundColor = "#111111" }); + themes.Add(new ThemeOptions { Name="Classic",Title = "Classic - Silverlight", ThumbnailUri = "/OpenSilver.TemplateWizards;component/Assets/Images/classic_theme.png", BackgroundColor = "#FFFFFF" }); + return themes; + } + } +} diff --git a/src/OpenSilver.TemplateWizards/AppCustomizationWindow/ThemeCollectionView.xaml b/src/OpenSilver.TemplateWizards/AppCustomizationWindow/ThemeCollectionView.xaml new file mode 100644 index 0000000..1730f68 --- /dev/null +++ b/src/OpenSilver.TemplateWizards/AppCustomizationWindow/ThemeCollectionView.xaml @@ -0,0 +1,145 @@ + + + + + + + + + + + + + + diff --git a/src/OpenSilver.TemplateWizards/AppCustomizationWindow/ThemeCollectionView.xaml.cs b/src/OpenSilver.TemplateWizards/AppCustomizationWindow/ThemeCollectionView.xaml.cs new file mode 100644 index 0000000..3bf4426 --- /dev/null +++ b/src/OpenSilver.TemplateWizards/AppCustomizationWindow/ThemeCollectionView.xaml.cs @@ -0,0 +1,38 @@ +using OpenSilver.TemplateWizards.AppCustomizationWindow.Models; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows; +using System.Windows.Controls; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Input; +using System.Windows.Media; +using System.Windows.Media.Imaging; +using System.Windows.Navigation; +using System.Windows.Shapes; + +namespace OpenSilver.TemplateWizards.AppCustomizationWindow +{ + /// + /// Interaction logic for ThemeCollectionView.xaml + /// + public partial class ThemeCollectionView : UserControl + { + public event EventHandler SelectionChanged; + public ThemeCollectionView() + { + InitializeComponent(); + themeList.ItemsSource = ThemeOptions.GeThemes(); + themeList.SelectionChanged += ThemeList_SelectionChanged; + } + + private void ThemeList_SelectionChanged(object sender, SelectionChangedEventArgs e) + { + + SelectionChanged?.Invoke(themeList.SelectedItem, e); + } + } +} diff --git a/src/OpenSilver.TemplateWizards/Assets/Images/classic_theme.png b/src/OpenSilver.TemplateWizards/Assets/Images/classic_theme.png new file mode 100644 index 0000000..ee5f2ac Binary files /dev/null and b/src/OpenSilver.TemplateWizards/Assets/Images/classic_theme.png differ diff --git a/src/OpenSilver.TemplateWizards/Assets/Images/dark_theme.png b/src/OpenSilver.TemplateWizards/Assets/Images/dark_theme.png new file mode 100644 index 0000000..3ff1f03 Binary files /dev/null and b/src/OpenSilver.TemplateWizards/Assets/Images/dark_theme.png differ diff --git a/src/OpenSilver.TemplateWizards/Assets/Images/light_theme.png b/src/OpenSilver.TemplateWizards/Assets/Images/light_theme.png new file mode 100644 index 0000000..62bfa68 Binary files /dev/null and b/src/OpenSilver.TemplateWizards/Assets/Images/light_theme.png differ diff --git a/src/OpenSilver.TemplateWizards/OpenSilver.TemplateWizards.csproj b/src/OpenSilver.TemplateWizards/OpenSilver.TemplateWizards.csproj index c538b9d..05c814d 100644 --- a/src/OpenSilver.TemplateWizards/OpenSilver.TemplateWizards.csproj +++ b/src/OpenSilver.TemplateWizards/OpenSilver.TemplateWizards.csproj @@ -49,7 +49,11 @@ AppConfigurationWindow.xaml + + + ThemeCollectionView.xaml + @@ -59,6 +63,10 @@ MSBuild:Compile Designer + + Designer + MSBuild:Compile + @@ -67,5 +75,11 @@ + + + + + + \ No newline at end of file