LayoutFarm.Text.EditableTextFlowLayer.HitTestCore C# (CSharp) Method

HitTestCore() public method

public HitTestCore ( HitChain hitChain ) : bool
hitChain HitChain
return bool
        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;
        }