private void ParseKey(IXmlNode element, MasterBar masterBar)
{
int fifths = int.MinValue;
int keyStep = int.MinValue;
int keyAlter = int.MinValue;
element.IterateChildren(c =>
{
if (c.NodeType == XmlNodeType.Element)
{
switch (c.LocalName)
{
case "fifths":
fifths = Std.ParseInt(Std.GetNodeValue(c));
break;
case "key-step":
keyStep = Std.ParseInt(Std.GetNodeValue(c));
break;
case "key-alter":
keyAlter = Std.ParseInt(Std.GetNodeValue(c));
break;
}
}
});
if (fifths != int.MinValue)
{
// TODO: check if this is conrrect
masterBar.KeySignature = fifths;
}
else
{
// TODO: map keyStep/keyAlter to internal keysignature
}
}