'Reimplement Qt method
Unpack dropped data and handle it'

def dropEvent(self, event):

    source = event.mimeData()
    if source.hasUrls():
        pathlist = mimedata2url(source)
        self.shell.drop_pathlist(pathlist)
    elif source.hasText():
        lines = to_text_string(source.text())
        self.shell.set_cursor_position('eof')
        self.shell.execute_lines(lines)
    event.acceptProposedAction()
