- [Core] Added export option to include materials with models in /Materials.

- [GUI] fix issue with `Reset` button causing unintended behaviour.
- [Core] fix bug where `Logger` causes performance issues.
This commit is contained in:
Razmoth
2024-01-30 19:57:10 +04:00
parent f2d65e458c
commit 92d7470082
14 changed files with 144 additions and 152 deletions

View File

@@ -20,27 +20,18 @@ namespace AssetStudio
public interface ILogger
{
public bool Silent { get; set; }
public LoggerEvent Flags { get; set; }
void Log(LoggerEvent loggerEvent, string message);
}
public sealed class DummyLogger : ILogger
{
public bool Silent { get; set; }
public LoggerEvent Flags { get; set; }
public void Log(LoggerEvent loggerEvent, string message) { }
}
public sealed class ConsoleLogger : ILogger
{
public bool Silent { get; set; }
public LoggerEvent Flags { get; set; }
public void Log(LoggerEvent loggerEvent, string message)
{
if (!Flags.HasFlag(loggerEvent) || Silent)
return;
Console.WriteLine("[{0}] {1}", loggerEvent, message);
}
}
@@ -51,9 +42,6 @@ namespace AssetStudio
private const string PrevLogFileName = "log_prev.txt";
private readonly object LockWriter = new object();
private StreamWriter Writer;
public bool Silent { get; set; }
public LoggerEvent Flags { get; set; }
public FileLogger()
{
var logPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, LogFileName);
@@ -71,9 +59,6 @@ namespace AssetStudio
}
public void Log(LoggerEvent loggerEvent, string message)
{
if (!Flags.HasFlag(loggerEvent) || Silent)
return;
lock (LockWriter)
{
Writer.WriteLine($"[{DateTime.Now}][{loggerEvent}] {message}");