Esempio n. 1
0
 def startDrag(self, event):
     """
     Starts a drag using the given event.
     
     :type event: QtCore.QEvent
     :rtype: None
     """
     if not self.dragEnabled():
         return
     if self._dragStartPos and hasattr(event, 'pos'):
         item = self.itemAt(event.pos())
         if item and item.dragEnabled():
             self._dragStartIndex = self.indexAt(event.pos())
             point = self._dragStartPos - event.pos()
             dt = self.dragThreshold()
             if point.x() > dt or point.y() > dt or point.x() < -dt or point.y() < -dt:
                 items = self.selectedItems()
                 mimeData = self.mimeData(items)
                 pixmap = self.dragPixmap(item, items)
                 hotSpot = QtCore.QPoint(pixmap.width() / 2, pixmap.height() / 2)
                 self._drag = QtGui.QDrag(self)
                 self._drag.setPixmap(pixmap)
                 self._drag.setHotSpot(hotSpot)
                 self._drag.setMimeData(mimeData)
                 self._drag.start(QtCore.Qt.MoveAction)
Esempio n. 2
0
 def _libraryContextMenu(libPaths, lineEditAction, event):
     menu = LibrarySelectMenu(libPaths, parent=lineEditAction.line())
     menu.menu().setStyleSheet('background-color:black;')
     point = lineEditAction.line().mapToGlobal(
         QtCore.QPoint(lineEditAction.line().width(), 0))
     menu.show(point)
     lineEditAction.line().setText(menu.selected(full=False))
     lineEditAction.line().clearFocus()
Esempio n. 3
0
 def _onclicked(self):
     point = self._pushButton.mapToGlobal(QtCore.QPoint(0, 0))
     self._menu.show(point)
     if self._menu.selected() != "":
         self._label.setText(self._menu.selected())