private void ChangeSetting(object sender, string key, object val)
{
GetSettings()[key].Value = val;
switch (key)
{
case "Animation":
onItem.Checked = (bool)val;
offItem.Checked = !onItem.Checked;
if (onItem.Checked)
{
MapViewPanel.Start();
}
else
{
MapViewPanel.Stop();
}
break;
case "Doors":
if (MapViewPanel.Instance.Map != null)
{
if ((bool)val)
{
foreach (XCTile t in MapViewPanel.Instance.Map.Tiles)
{
if (t.Info.UFODoor || t.Info.HumanDoor)
{
t.MakeAnimate();
}
}
}
else
{
foreach (XCTile t in MapViewPanel.Instance.Map.Tiles)
{
if (t.Info.UFODoor || t.Info.HumanDoor)
{
t.StopAnimate();
}
}
}
}
break;
case "SaveWindowPositions":
PathsEditor.SaveRegistry = (bool)val;
break;
case "UseGrid":
MapViewPanel.Instance.MapView.UseGrid = (bool)val;
break;
case "GridColor":
MapViewPanel.Instance.MapView.GridColor = (Color)val;
break;
case "GridLineColor":
MapViewPanel.Instance.MapView.GridLineColor = (Color)val;
break;
case "GridLineWidth":
MapViewPanel.Instance.MapView.GridLineWidth = (int)val;
break;
}
}