diff --git a/InstaSoftOfficeTool.csproj b/InstaSoftOfficeTool.csproj index 9b5d997..d923c82 100644 --- a/InstaSoftOfficeTool.csproj +++ b/InstaSoftOfficeTool.csproj @@ -9,9 +9,9 @@ InstaSoft Zrt. InstaSoft Office Tool Copyright (c) InstaSoft Zrt. 2026 - 1.1.0 - 1.1.0.0 - 1.1.0.0 + 1.1.1 + 1.1.1.0 + 1.1.1.0 app.manifest latest diff --git a/MainWindow.xaml b/MainWindow.xaml index 6c8171d..e6c9866 100644 --- a/MainWindow.xaml +++ b/MainWindow.xaml @@ -45,7 +45,7 @@ Foreground="{StaticResource TextSecondaryBrush}" Margin="0,-2,0,0"/> - diff --git a/Models/InstallConfig.cs b/Models/InstallConfig.cs index 1760657..127ad6e 100644 --- a/Models/InstallConfig.cs +++ b/Models/InstallConfig.cs @@ -69,14 +69,18 @@ namespace InstaSoftOfficeTool.Models public static class ExcludableApps { // Id, DisplayName, DefaultChecked (true = telep\u00edt, false = kiz\u00e1r) - public static readonly (string Id, string DisplayName, bool DefaultChecked)[] Apps = new[] + // MinEdition: "all", "standard+" (Standard \u00e9s ProPlus), "proplus" (csak ProPlus) + public static readonly (string Id, string DisplayName, bool DefaultChecked, string MinEdition)[] Apps = new[] { - ("Access", "Access", true), - ("Teams", "Teams", true), - ("OneNote", "OneNote", true), - ("Publisher", "Publisher", true), - ("Outlook", "Outlook", true), - ("Lync", "Skype for Business", false), + ("Word", "Word", true, "all"), + ("Excel", "Excel", true, "all"), + ("PowerPoint", "PowerPoint", true, "all"), + ("Outlook", "Outlook", true, "all"), + ("OneNote", "OneNote", true, "all"), + ("Access", "Access", true, "proplus"), + ("Publisher", "Publisher", true, "standard+"), + ("Teams", "Teams", false, "all"), + ("Lync", "Skype for Business", false, "all"), }; } } diff --git a/Pages/ConfigPage.xaml.cs b/Pages/ConfigPage.xaml.cs index 24e29eb..136ae5b 100644 --- a/Pages/ConfigPage.xaml.cs +++ b/Pages/ConfigPage.xaml.cs @@ -55,13 +55,20 @@ namespace InstaSoftOfficeTool.Pages bool isProPlus = _config.Edition != null && _config.Edition.ProductId.Contains("ProPlus"); - bool accessOnly = app.Id == "Access"; + bool isStandard = _config.Edition != null && + _config.Edition.ProductId.Contains("Standard"); + + bool unavailable = false; + if (app.MinEdition == "proplus" && !isProPlus) + unavailable = true; + else if (app.MinEdition == "standard+" && !isProPlus && !isStandard) + unavailable = true; var cb = new CheckBox { Content = app.DisplayName, - IsChecked = accessOnly && !isProPlus ? false : isChecked, - IsEnabled = !(accessOnly && !isProPlus), + IsChecked = unavailable ? false : isChecked, + IsEnabled = !unavailable, Tag = app.Id, Style = (Style)FindResource("FluentCheckBox"), Margin = new Thickness(0, 4, 24, 4),