code: def cursor(self, pos):
          
          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)
docs: 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)