48 lines
1.3 KiB
C#
48 lines
1.3 KiB
C#
using System.Collections.Generic;
|
|
using System.IO;
|
|
using System.Linq;
|
|
|
|
namespace HeadMeld
|
|
{
|
|
internal class ConfigManager
|
|
{
|
|
private readonly string configPath = @"C:\Program Files\EqualizerAPO\config\config.txt";
|
|
internal List<string> configFile = new();
|
|
public ConfigManager()
|
|
{
|
|
configFile = File.ReadAllLines(configPath).ToList();
|
|
/*
|
|
ToggleProfiles(new List<string>
|
|
{
|
|
"# Include: ATH-M50x.txt",
|
|
"Include: 900ProX.txt"
|
|
}, false);
|
|
Write();
|
|
*/
|
|
}
|
|
|
|
public void Write()
|
|
{
|
|
File.WriteAllLines(configPath, configFile);
|
|
}
|
|
|
|
public void ToggleProfiles(List<string> profiles, bool enableProfile)
|
|
{
|
|
foreach (var profile in profiles)
|
|
{
|
|
string rawProfile = profile.Replace("# ", string.Empty);
|
|
var filter = configFile.FindIndex(x => x.Contains(rawProfile));
|
|
|
|
if (enableProfile)
|
|
{
|
|
configFile[filter] = rawProfile.Replace("# ", string.Empty);
|
|
}
|
|
else
|
|
{
|
|
configFile[filter] = rawProfile.Insert(0, "# ");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|