public override bool HitTestCore(HitChain hitChain)
 {
     if ((layerFlags & IS_LAYER_HIDDEN) == 0)
     {
         if ((layerFlags & FLOWLAYER_HAS_MULTILINE) != 0)
         {
             List <EditableTextLine> lines = (List <EditableTextLine>)lineCollection;
             int j        = lines.Count;
             int testYPos = hitChain.TestPoint.Y;
             for (int i = 0; i < j; ++i)
             {
                 EditableTextLine line = lines[i];
                 if (line.LineBottom < testYPos)
                 {
                     continue;
                 }
                 else if (line.HitTestCore(hitChain))
                 {
                     return(true);
                 }
                 else if (line.LineTop > testYPos)
                 {
                     return(false);
                 }
             }
         }
         else
         {
             EditableTextLine onlyLine = (EditableTextLine)lineCollection;
             return(onlyLine.HitTestCore(hitChain));
         }
     }
     return(false);
 }