2020-04-18 06:25:08 +08:00
|
|
|
|
// Copyright (c) Microsoft Corporation
|
|
|
|
|
// The Microsoft Corporation licenses this file to you under the MIT license.
|
|
|
|
|
// See the LICENSE file in the project root for more information.
|
|
|
|
|
|
|
|
|
|
using System.Text.Json;
|
2020-10-23 00:45:48 +08:00
|
|
|
|
using Microsoft.PowerToys.Settings.UI.Library.Interfaces;
|
2020-04-18 06:25:08 +08:00
|
|
|
|
|
2020-10-23 00:45:48 +08:00
|
|
|
|
namespace Microsoft.PowerToys.Settings.UI.Library
|
2020-04-18 06:25:08 +08:00
|
|
|
|
{
|
2020-09-24 04:20:32 +08:00
|
|
|
|
public class PowerRenameLocalProperties : ISettingsConfig
|
2020-04-18 06:25:08 +08:00
|
|
|
|
{
|
|
|
|
|
public PowerRenameLocalProperties()
|
|
|
|
|
{
|
|
|
|
|
PersistState = false;
|
|
|
|
|
MRUEnabled = false;
|
|
|
|
|
MaxMRUSize = 0;
|
|
|
|
|
ShowIcon = false;
|
|
|
|
|
ExtendedContextMenuOnly = false;
|
2020-11-10 02:13:43 +08:00
|
|
|
|
UseBoostLib = false;
|
2020-04-18 06:25:08 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private int _maxSize;
|
|
|
|
|
|
|
|
|
|
public bool PersistState { get; set; }
|
|
|
|
|
|
|
|
|
|
public bool MRUEnabled { get; set; }
|
|
|
|
|
|
|
|
|
|
public int MaxMRUSize
|
|
|
|
|
{
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
return _maxSize;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
set
|
|
|
|
|
{
|
|
|
|
|
if (value < 0)
|
|
|
|
|
{
|
|
|
|
|
_maxSize = 0;
|
|
|
|
|
}
|
2020-05-11 20:37:29 +08:00
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
_maxSize = value;
|
|
|
|
|
}
|
2020-04-18 06:25:08 +08:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public bool ShowIcon { get; set; }
|
|
|
|
|
|
|
|
|
|
public bool ExtendedContextMenuOnly { get; set; }
|
|
|
|
|
|
2020-11-10 02:13:43 +08:00
|
|
|
|
public bool UseBoostLib { get; set; }
|
|
|
|
|
|
2020-04-18 06:25:08 +08:00
|
|
|
|
public string ToJsonString()
|
|
|
|
|
{
|
|
|
|
|
return JsonSerializer.Serialize(this);
|
|
|
|
|
}
|
2020-09-24 04:20:32 +08:00
|
|
|
|
|
|
|
|
|
// This function is required to implement the ISettingsConfig interface and obtain the settings configurations.
|
|
|
|
|
public string GetModuleName()
|
|
|
|
|
{
|
|
|
|
|
string moduleName = PowerRenameSettings.ModuleName;
|
|
|
|
|
return moduleName;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// This can be utilized in the future if the settings.json file is to be modified/deleted.
|
|
|
|
|
public bool UpgradeSettingsConfiguration()
|
|
|
|
|
{
|
|
|
|
|
return false;
|
|
|
|
|
}
|
2020-04-18 06:25:08 +08:00
|
|
|
|
}
|
|
|
|
|
}
|