mirror of
https://github.com/microsoft/PowerToys.git
synced 2026-04-07 03:36:44 +02:00
User/lamotile/add powerrename settings (#1813)
* added powerrename settings * removed pop-up message * removed unused files * revrted changes to old settings * updated solution file * added ToJsonString() method * added JSON property for the powertoy name
This commit is contained in:
@@ -32,7 +32,7 @@ namespace Microsoft.PowerToys.Settings.UI.Views
|
||||
{
|
||||
this.InitializeComponent();
|
||||
}
|
||||
|
||||
|
||||
/// <inheritdoc/>
|
||||
protected override void OnNavigatedTo(NavigationEventArgs e)
|
||||
{
|
||||
@@ -52,7 +52,7 @@ namespace Microsoft.PowerToys.Settings.UI.Views
|
||||
{
|
||||
// create settings file if one is not found.
|
||||
settings = new GeneralSettings();
|
||||
SettingsUtils.SaveSettings<GeneralSettings>(settings, string.Empty);
|
||||
SettingsUtils.SaveSettings(settings.ToJsonString(), string.Empty);
|
||||
// load and apply theme settings
|
||||
this.ReLoadTheme(settings.theme);
|
||||
|
||||
@@ -103,7 +103,7 @@ namespace Microsoft.PowerToys.Settings.UI.Views
|
||||
break;
|
||||
}
|
||||
|
||||
SettingsUtils.SaveSettings<GeneralSettings>(settings, string.Empty);
|
||||
SettingsUtils.SaveSettings(settings.ToJsonString(), string.Empty);
|
||||
OutGoingGeneralSettings outsettings = new OutGoingGeneralSettings(settings);
|
||||
|
||||
if (ShellPage.Default_SndMSG_Callback != null)
|
||||
@@ -129,16 +129,16 @@ namespace Microsoft.PowerToys.Settings.UI.Views
|
||||
{
|
||||
RadioButton rb = sender as RadioButton;
|
||||
|
||||
//if (rb != null)
|
||||
//{
|
||||
// string themeName = rb.Tag.ToString();
|
||||
// this.ReLoadTheme(themeName);
|
||||
if (rb != null)
|
||||
{
|
||||
string themeName = rb.Tag.ToString();
|
||||
this.ReLoadTheme(themeName);
|
||||
|
||||
// // update and save settings to file.
|
||||
// GeneralSettings settings = SettingsUtils.GetSettings<GeneralSettings>(string.Empty);
|
||||
// settings.theme = themeName;
|
||||
// SettingsUtils.SaveSettings<GeneralSettings>(settings, string.Empty);
|
||||
//}
|
||||
// update and save settings to file.
|
||||
GeneralSettings settings = SettingsUtils.GetSettings<GeneralSettings>(string.Empty);
|
||||
settings.theme = themeName;
|
||||
SettingsUtils.SaveSettings(settings.ToJsonString(), string.Empty);
|
||||
}
|
||||
}
|
||||
|
||||
private async void CheckForUpdates_Click(object sender, RoutedEventArgs e)
|
||||
@@ -146,4 +146,4 @@ namespace Microsoft.PowerToys.Settings.UI.Views
|
||||
await Launcher.LaunchUriAsync(new Uri("https://github.com/microsoft/PowerToys/releases"));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -46,7 +46,7 @@ namespace Microsoft.PowerToys.Settings.UI.Views
|
||||
catch(Exception exp)
|
||||
{
|
||||
settings = new PowerPreviewSettings(POWERTOY_NAME);
|
||||
SettingsUtils.SaveSettings<PowerPreviewSettings>(settings, POWERTOY_NAME);
|
||||
SettingsUtils.SaveSettings(settings.ToJsonString(), POWERTOY_NAME);
|
||||
ToggleSwitch_Preview_SVG.IsOn = settings.properties.IDS_PREVPANE_SVG_BOOL_TOGGLE_CONTROLL.value;
|
||||
ToggleSwitch_Preview_MD.IsOn = settings.properties.PREVPANE_MD_BOOL_TOGGLE_CONTROLL_ID.value;
|
||||
}
|
||||
@@ -61,11 +61,11 @@ namespace Microsoft.PowerToys.Settings.UI.Views
|
||||
PowerPreviewSettings settings = SettingsUtils.GetSettings<PowerPreviewSettings>(POWERTOY_NAME);
|
||||
settings.properties.IDS_PREVPANE_SVG_BOOL_TOGGLE_CONTROLL.value = swt.IsOn;
|
||||
|
||||
SndModuleSettings<PowerPreviewSettings> moduleSettings = new SndModuleSettings<PowerPreviewSettings>(settings);
|
||||
|
||||
if (ShellPage.Default_SndMSG_Callback != null)
|
||||
{
|
||||
ShellPage.Default_SndMSG_Callback(moduleSettings.ToString());
|
||||
SndPowerPreviewSettings snd = new SndPowerPreviewSettings(settings);
|
||||
SndModuleSettings<SndPowerPreviewSettings> ipcMessage = new SndModuleSettings<SndPowerPreviewSettings>(snd);
|
||||
ShellPage.Default_SndMSG_Callback(ipcMessage.ToJsonString());
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -79,13 +79,14 @@ namespace Microsoft.PowerToys.Settings.UI.Views
|
||||
PowerPreviewSettings settings = SettingsUtils.GetSettings<PowerPreviewSettings>(POWERTOY_NAME);
|
||||
settings.properties.PREVPANE_MD_BOOL_TOGGLE_CONTROLL_ID.value = swt.IsOn;
|
||||
|
||||
SndModuleSettings<PowerPreviewSettings> moduleSettings = new SndModuleSettings<PowerPreviewSettings>(settings);
|
||||
|
||||
if (ShellPage.Default_SndMSG_Callback != null)
|
||||
{
|
||||
ShellPage.Default_SndMSG_Callback(moduleSettings.ToString());
|
||||
SndPowerPreviewSettings snd = new SndPowerPreviewSettings(settings);
|
||||
SndModuleSettings<SndPowerPreviewSettings> ipcMessage = new SndModuleSettings<SndPowerPreviewSettings>(snd);
|
||||
ShellPage.Default_SndMSG_Callback(ipcMessage.ToJsonString());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
x:Class="Microsoft.PowerToys.Settings.UI.Views.PowerRenamePage"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:local="using:Microsoft.PowerToys.Settings.UI.Views"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:muxc="using:Microsoft.UI.Xaml.Controls"
|
||||
@@ -44,37 +43,43 @@
|
||||
<TextBlock Text="A Windows Shell Extension for more advanced bulk renaming using search and replace or regular expressions."
|
||||
TextWrapping="Wrap"/>
|
||||
|
||||
<ToggleSwitch Header="Enable PowerRename"
|
||||
IsOn="True"
|
||||
Margin="{StaticResource SmallTopMargin}" />
|
||||
<ToggleSwitch x:Name="Toggle_PowerRename_Enable"
|
||||
Header="Enable PowerRename"
|
||||
Margin="{StaticResource SmallTopMargin}"
|
||||
Toggled="Toggle_PowerRename_Enable_Toggled"
|
||||
/>
|
||||
|
||||
<TextBlock Text="Shell integration"
|
||||
Style="{StaticResource SettingsGroupTitleStyle}"/>
|
||||
<TextBlock Text="Shell integration"
|
||||
Style="{StaticResource SettingsGroupTitleStyle}"/>
|
||||
|
||||
<CheckBox Content="Show on default context menu"
|
||||
IsChecked="True"
|
||||
Margin="{StaticResource SmallTopMargin}"/>
|
||||
<ToggleSwitch x:Name="Toggle_PowerRename_EnableOnContextMenu"
|
||||
Header="Show on default context menu"
|
||||
Margin="{StaticResource SmallTopMargin}"
|
||||
Toggled="Toggle_PowerRename_EnableOnContextMenu_Toggled"
|
||||
/>
|
||||
|
||||
<CheckBox Content="Only show on extended context menu (Shift + Right-click)"
|
||||
IsChecked="True"
|
||||
Margin="{StaticResource SmallTopMargin}" />
|
||||
<ToggleSwitch x:Name="Toggle_PowerRename_EnableOnExtendedContextMenu"
|
||||
Header="Only show on extended context menu (Shift + Right-click)"
|
||||
Margin="{StaticResource SmallTopMargin}"
|
||||
Toggled="Toggle_PowerRename_EnableOnExtendedContextMenu_Toggled"
|
||||
/>
|
||||
|
||||
<TextBlock Text="Miscellaneous"
|
||||
Style="{StaticResource SettingsGroupTitleStyle}"/>
|
||||
|
||||
<CheckBox Content="Enable autocomplete and autosuggest of recently used inputs for search and replace values"
|
||||
IsChecked="True"
|
||||
Margin="{StaticResource SmallTopMargin}"/>
|
||||
<ToggleSwitch x:Name="Toggle_PowerRename_RestoreFlagsOnLaunch"
|
||||
Header="Restore search, replace and flags values on launch from previous run"
|
||||
Margin="{StaticResource SmallTopMargin}"
|
||||
Toggled="Toggle_PowerRename_RestoreFlagsOnLaunch_Toggled"
|
||||
/>
|
||||
|
||||
<CheckBox Content="Restore search, replace and flags values on launch from previous run"
|
||||
IsChecked="True"
|
||||
Margin="{StaticResource SmallTopMargin}" />
|
||||
|
||||
<muxc:NumberBox Header="Maximum numbers of items to show in recently used list"
|
||||
Value="10"
|
||||
<muxc:NumberBox x:Name="Toggle_PowerRename_MaxDispListNum"
|
||||
Header="Maximum numbers of items to show in recently used list"
|
||||
SpinButtonPlacementMode="Inline"
|
||||
HorizontalAlignment="Left"
|
||||
Margin="{StaticResource SmallTopMargin}" />
|
||||
Margin="{StaticResource SmallTopMargin}"
|
||||
ValueChanged="Toggle_PowerRename_MaxDispListNum_ValueChanged"
|
||||
/>
|
||||
</StackPanel>
|
||||
|
||||
|
||||
@@ -91,12 +96,14 @@
|
||||
<HyperlinkButton Content="Module overview" NavigateUri="https://github.com/microsoft/PowerToys/tree/master/src/modules/powerrename"/>
|
||||
<HyperlinkButton Content="Give feedback"/>
|
||||
|
||||
<!--
|
||||
<TextBlock Text="Contributors"
|
||||
Style="{StaticResource SettingsGroupTitleStyle}"/>
|
||||
|
||||
<HyperlinkButton Content="Contributor name"/>
|
||||
<HyperlinkButton Content="Contributor name"/>
|
||||
<HyperlinkButton Content="Contributor name"/>
|
||||
-->
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</Page>
|
||||
@@ -1,11 +1,15 @@
|
||||
using Microsoft.PowerToys.Settings.UI.ViewModels;
|
||||
using Microsoft.PowerToys.Settings.UI.Lib;
|
||||
using Microsoft.PowerToys.Settings.UI.ViewModels;
|
||||
using Microsoft.UI.Xaml.Controls;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Runtime.InteropServices.WindowsRuntime;
|
||||
using System.ServiceModel.Channels;
|
||||
using Windows.Foundation;
|
||||
using Windows.Foundation.Collections;
|
||||
using Windows.UI.Popups;
|
||||
using Windows.UI.Xaml;
|
||||
using Windows.UI.Xaml.Controls;
|
||||
using Windows.UI.Xaml.Controls.Primitives;
|
||||
@@ -19,10 +23,128 @@ namespace Microsoft.PowerToys.Settings.UI.Views
|
||||
public sealed partial class PowerRenamePage : Page
|
||||
{
|
||||
public PowerRenameViewModel ViewModel { get; } = new PowerRenameViewModel();
|
||||
private const string POWERTOY_NAME = "PowerRename";
|
||||
|
||||
public PowerRenamePage()
|
||||
{
|
||||
this.InitializeComponent();
|
||||
}
|
||||
|
||||
/// <inheritdoc/>
|
||||
protected override void OnNavigatedTo(NavigationEventArgs e)
|
||||
{
|
||||
base.OnNavigatedTo(e);
|
||||
PowerRenameSettings settings;
|
||||
try
|
||||
{
|
||||
settings = SettingsUtils.GetSettings<PowerRenameSettings>(POWERTOY_NAME);
|
||||
UpdateView(settings);
|
||||
}
|
||||
catch (Exception exp)
|
||||
{
|
||||
settings = new PowerRenameSettings(POWERTOY_NAME);
|
||||
SettingsUtils.SaveSettings(settings.ToJsonString(), POWERTOY_NAME);
|
||||
UpdateView(settings);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private void UpdateView(PowerRenameSettings settings)
|
||||
{
|
||||
this.Toggle_PowerRename_Enable.IsOn = settings.properties.bool_mru_enabled.value;
|
||||
this.Toggle_PowerRename_EnableOnExtendedContextMenu.IsOn = settings.properties.bool_show_extended_menu.value;
|
||||
this.Toggle_PowerRename_MaxDispListNum.Value = settings.properties.int_max_mru_size.value;
|
||||
this.Toggle_PowerRename_EnableOnContextMenu.IsOn = settings.properties.bool_show_icon_on_menu.value;
|
||||
this.Toggle_PowerRename_RestoreFlagsOnLaunch.IsOn = settings.properties.bool_persist_input.value;
|
||||
}
|
||||
|
||||
private void Toggle_PowerRename_Enable_Toggled(object sender, RoutedEventArgs e)
|
||||
{
|
||||
ToggleSwitch swt = sender as ToggleSwitch;
|
||||
|
||||
if (swt != null)
|
||||
{
|
||||
PowerRenameSettings settings = SettingsUtils.GetSettings<PowerRenameSettings>(POWERTOY_NAME);
|
||||
settings.properties.bool_mru_enabled.value = swt.IsOn;
|
||||
|
||||
if (ShellPage.Default_SndMSG_Callback != null)
|
||||
{
|
||||
SndPowerRenameSettings snd = new SndPowerRenameSettings(settings);
|
||||
SndModuleSettings<SndPowerRenameSettings> ipcMessage = new SndModuleSettings<SndPowerRenameSettings>(snd);
|
||||
ShellPage.Default_SndMSG_Callback(ipcMessage.ToJsonString());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void Toggle_PowerRename_EnableOnContextMenu_Toggled(object sender, RoutedEventArgs e)
|
||||
{
|
||||
ToggleSwitch swt = sender as ToggleSwitch;
|
||||
|
||||
if (swt != null)
|
||||
{
|
||||
PowerRenameSettings settings = SettingsUtils.GetSettings<PowerRenameSettings>(POWERTOY_NAME);
|
||||
settings.properties.bool_show_icon_on_menu.value = swt.IsOn;
|
||||
|
||||
if (ShellPage.Default_SndMSG_Callback != null)
|
||||
{
|
||||
SndPowerRenameSettings snd = new SndPowerRenameSettings(settings);
|
||||
SndModuleSettings<SndPowerRenameSettings> ipcMessage = new SndModuleSettings<SndPowerRenameSettings>(snd);
|
||||
ShellPage.Default_SndMSG_Callback(ipcMessage.ToJsonString());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void Toggle_PowerRename_EnableOnExtendedContextMenu_Toggled(object sender, RoutedEventArgs e)
|
||||
{
|
||||
ToggleSwitch swt = sender as ToggleSwitch;
|
||||
|
||||
if (swt != null)
|
||||
{
|
||||
PowerRenameSettings settings = SettingsUtils.GetSettings<PowerRenameSettings>(POWERTOY_NAME);
|
||||
settings.properties.bool_show_extended_menu.value = swt.IsOn;
|
||||
|
||||
if (ShellPage.Default_SndMSG_Callback != null)
|
||||
{
|
||||
SndPowerRenameSettings snd = new SndPowerRenameSettings(settings);
|
||||
SndModuleSettings<SndPowerRenameSettings> ipcMessage = new SndModuleSettings<SndPowerRenameSettings>(snd);
|
||||
ShellPage.Default_SndMSG_Callback(ipcMessage.ToJsonString());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void Toggle_PowerRename_RestoreFlagsOnLaunch_Toggled(object sender, RoutedEventArgs e)
|
||||
{
|
||||
ToggleSwitch swt = sender as ToggleSwitch;
|
||||
|
||||
if (swt != null)
|
||||
{
|
||||
PowerRenameSettings settings = SettingsUtils.GetSettings<PowerRenameSettings>(POWERTOY_NAME);
|
||||
settings.properties.bool_persist_input.value = swt.IsOn;
|
||||
|
||||
if (ShellPage.Default_SndMSG_Callback != null)
|
||||
{
|
||||
SndPowerRenameSettings snd = new SndPowerRenameSettings(settings);
|
||||
SndModuleSettings<SndPowerRenameSettings> ipcMessage = new SndModuleSettings<SndPowerRenameSettings>(snd);
|
||||
ShellPage.Default_SndMSG_Callback(ipcMessage.ToJsonString());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void Toggle_PowerRename_MaxDispListNum_ValueChanged(NumberBox sender, NumberBoxValueChangedEventArgs args)
|
||||
{
|
||||
if (sender != null)
|
||||
{
|
||||
PowerRenameSettings settings = SettingsUtils.GetSettings<PowerRenameSettings>(POWERTOY_NAME);
|
||||
settings.properties.int_max_mru_size.value = Convert.ToInt32(sender.Value);
|
||||
|
||||
if (ShellPage.Default_SndMSG_Callback != null)
|
||||
{
|
||||
SndPowerRenameSettings snd = new SndPowerRenameSettings(settings);
|
||||
SndModuleSettings<SndPowerRenameSettings> ipcMessage = new SndModuleSettings<SndPowerRenameSettings>(snd);
|
||||
ShellPage.Default_SndMSG_Callback(ipcMessage.ToJsonString());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user