'Override Qt method'

def mouseMoveEvent(self, event):

    if ((event.buttons() == Qt.MouseButtons(Qt.LeftButton)) and ((event.pos() - self.__drag_start_pos).manhattanLength() > QApplication.startDragDistance())):
        drag = QDrag(self)
        mimeData = QMimeData()
        ancestor_id = to_text_string(id(self.ancestor))
        parent_widget_id = to_text_string(id(self.parentWidget()))
        self_id = to_text_string(id(self))
        source_index = to_text_string(self.tabAt(self.__drag_start_pos))
        mimeData.setData('parent-id', to_binary_string(ancestor_id))
        mimeData.setData('tabwidget-id', to_binary_string(parent_widget_id))
        mimeData.setData('tabbar-id', to_binary_string(self_id))
        mimeData.setData('source-index', to_binary_string(source_index))
        drag.setMimeData(mimeData)
        drag.exec_()
    QTabBar.mouseMoveEvent(self, event)
