Returns a line for the cursor as position *pos*

        :param pos: mouse cursor position
        :type pos: :qtdoc:`QPoint`
        :returns: :qtdoc:`QLine` -- position between items (indicates where drops will go)

def cursor(self, pos):
        """Returns a line for the cursor as position *pos*

        :param pos: mouse cursor position
        :type pos: :qtdoc:`QPoint`
        :returns: :qtdoc:`QLine` -- position between items (indicates where drops will go)
        """
        index = self.splitAt(pos)

        if len(self._rects[index[0]])-1 < index[1]:
            if index[1] == 0:
                # empty row
                x = 0
            else:
                rect = self._rects[index[0]][index[1]-1]
                x = rect.x() + rect.width()
        else:
            rect = self._rects[index[0]][index[1]]
            x = rect.x()

        y0 = index[0]*(ROW_HEIGHT + ROW_SPACE) + ROW_SPACE
        y1 = y0 + ROW_HEIGHT

        # adjust for scrolled viewport
        x -= self.horizontalScrollBar().value()
        y0 -= self.verticalScrollBar().value()
        y1 -= self.verticalScrollBar().value()
        
        return QtCore.QLine(x,y0,x,y1)