protected virtual void AddFreeformAnnotations(IVwEnv vwenv, int hvoSeg)
{
// Add them in the order specified. Each iteration adds a group with the same flid but (typically)
// different writing systems.
for (int ispec = m_lineChoices.FirstFreeformIndex;
ispec < m_lineChoices.Count;
ispec += m_lineChoices.AdjacentWssAtIndex(ispec).Length)
{
int flid = m_lineChoices[ispec].Flid;
switch(flid)
{
case InterlinLineChoices.kflidFreeTrans:
case InterlinLineChoices.kflidLitTrans:
// These are properties of the current object.
AddFreeformComment(vwenv, hvoSeg, ispec);
break;
case InterlinLineChoices.kflidNote:
// There's a sequence of these, we use a trick with the frag to indicate which
// index into line choices we want to use to display each of them.
vwenv.AddObjVecItems(SegmentTags.kflidNotes, this, kfragSegFfChoices + ispec);
break;
default:
break; // unknown type, ignore it.
}
}
}