public MainForm()
{
const string GuiConfig = "gui_settings.xml";
string cfgPath;
if (File.Exists(GuiConfig))
cfgPath = GuiConfig;
else {
var localAppDir = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "CNCMaps");
cfgPath = Path.Combine(localAppDir, GuiConfig);
}
Settings.Default.SettingsKey = cfgPath;
InitializeComponent();
ConfigurationItemFactory.Default.Targets.RegisterDefinition("GuiTarget", typeof(GuiTarget));
if (LogManager.Configuration == null) {
// init default config
var target = new GuiTarget();
target.TargetControl = this.rtbLog;
target.Name = "rtbLogger";
target.Layout = "${processtime:format=s\\.ffff} [${level}] ${message}";
LogManager.Configuration = new LoggingConfiguration();
LogManager.Configuration.AddTarget("gui", target);
LogManager.Configuration.LoggingRules.Add(new LoggingRule("*", LogLevel.Debug, target));
LogManager.ReconfigExistingLoggers();
}
}