protected StaveGroup CreateEmptyStaveGroup()
{
var group = new StaveGroup();
group.Layout = this;
var isFirstTrack = true;
for (var i = 0; i < Renderer.Tracks.Length; i++)
{
var track = Renderer.Tracks[i];
for (var j = 0; j < Renderer.Settings.Staves.Count; j++)
{
var s = Renderer.Settings.Staves[j];
if (Environment.StaveFactories.ContainsKey(s.Id))
{
var factory = Environment.StaveFactories[s.Id](this);
if (factory.CanCreate(track) && (isFirstTrack || !factory.HideOnMultiTrack))
{
group.AddStave(track, new Stave(s.Id, factory, s.AdditionalSettings));
}
}
}
isFirstTrack = false;
}
return group;
}