11from PyQt5 import QtCore , QtGui
22from PyQt5 import QtQuick
33
4+
45class ExternDropArea (QtQuick .QQuickItem ):
56 # QGraphicsSceneDragDropEvent:
6- #Qt::MouseButtons buttons, Qt::DropAction dropAction, const QMimeData mimeData, Qt::KeyboardModifiers modifiers, QPointF pos, Qt::DropActions possibleActions, Qt::DropAction proposedAction, QWidget source
7+ # Qt::MouseButtons buttons, Qt::DropAction dropAction,
8+ # const QMimeData mimeData, Qt::KeyboardModifiers modifiers,
9+ # QPointF pos, Qt::DropActions possibleActions, Qt::DropAction proposedAction, QWidget source
710 internDragEnter = QtCore .pyqtSignal (
8- bool , str , # text
9- bool , str , # html
10- bool , str , # urls
11+ bool , str , # text
12+ bool , str , # html
13+ bool , str , # urls
1114 QtCore .Qt .MouseButtons , QtCore .Qt .DropAction ,
1215 QtCore .Qt .KeyboardModifiers , QtCore .QPointF ,
1316 QtCore .Qt .DropActions , QtCore .Qt .DropAction ,
1417 str )
1518 internDragMove = QtCore .pyqtSignal (
16- bool , str , # text
17- bool , str , # html
18- bool , str , # urls
19+ bool , str , # text
20+ bool , str , # html
21+ bool , str , # urls
1922 QtCore .Qt .MouseButtons , QtCore .Qt .DropAction ,
2023 QtCore .Qt .KeyboardModifiers , QtCore .QPointF ,
2124 QtCore .Qt .DropActions , QtCore .Qt .DropAction ,
2225 str )
2326 internDragLeave = QtCore .pyqtSignal (
24- bool , str , # text
25- bool , str , # html
26- bool , str , # urls
27+ bool , str , # text
28+ bool , str , # html
29+ bool , str , # urls
2730 QtCore .Qt .MouseButtons , QtCore .Qt .DropAction ,
2831 QtCore .Qt .KeyboardModifiers , QtCore .QPointF ,
2932 QtCore .Qt .DropActions , QtCore .Qt .DropAction ,
3033 str )
3134 internDrop = QtCore .pyqtSignal (
32- bool , str , # text
33- bool , str , # html
34- bool , str , # urls
35+ bool , str , # text
36+ bool , str , # html
37+ bool , str , # urls
3538 QtCore .Qt .MouseButtons , QtCore .Qt .DropAction ,
3639 QtCore .Qt .KeyboardModifiers , QtCore .QPointF ,
3740 QtCore .Qt .DropActions , QtCore .Qt .DropAction ,
3841 str )
3942
40- def __init__ (self , parent = None ):
41- super ( ExternDropArea , self ). __init__ (parent )
43+ def __init__ (self , parent = None ):
44+ QtQuick . QQuickItem . __init__ (self , parent )
4245 #self.setAcceptDrops(True)
4346
4447 def dragEnterEvent (self , event ):
45- #print 'dragEnterEvent'
46-
4748 urls = event .mimeData ().urls ()
48- firstUrl = urls [0 ].toLocalFile () if len (urls ) else ""
49+ firstUrl = urls [0 ].toLocalFile () if len (urls ) else '' \
50+ ''
4951 self .internDragEnter .emit (
5052 event .mimeData ().hasText (), event .mimeData ().text (),
5153 event .mimeData ().hasHtml (), event .mimeData ().html (),
@@ -66,10 +68,9 @@ def dragEnterEvent(self, event):
6668 event .setAccepted (self ._acceptDropValue )
6769
6870 def dragMoveEvent (self , event ):
69- #print 'dragMoveEvent'
70-
7171 urls = event .mimeData ().urls ()
72- firstUrl = urls [0 ].toLocalFile () if len (urls ) else ""
72+ firstUrl = urls [0 ].toLocalFile () if len (urls ) else ''
73+
7374 self .internDragMove .emit (
7475 event .mimeData ().hasText (), event .mimeData ().text (),
7576 event .mimeData ().hasHtml (), event .mimeData ().html (),
@@ -86,10 +87,9 @@ def dragMoveEvent(self, event):
8687 event .setAccepted (self ._acceptDropValue )
8788
8889 def dragLeaveEvent (self , event ):
89- #print 'dragLeaveEvent'
90-
9190 urls = event .mimeData ().urls ()
9291 firstUrl = urls [0 ].toLocalFile () if len (urls ) else ""
92+
9393 self .internDragLeave .emit (
9494 event .mimeData ().hasText (), event .mimeData ().text (),
9595 event .mimeData ().hasHtml (), event .mimeData ().html (),
@@ -107,8 +107,6 @@ def dragLeaveEvent(self, event):
107107 self .unsetCursor ()
108108
109109 def dropEvent (self , event ):
110- #print 'dropEvent'
111-
112110 # hasText() text() text/plain
113111 # hasHtml() html() text/html
114112 # hasUrls() urls() text/uri-list
@@ -134,7 +132,6 @@ def dropEvent(self, event):
134132 event .possibleActions (), event .proposedAction (),
135133 "" )
136134 #event.source().accessibleName() if event.source() else "")
137-
138135
139136 if self ._acceptDropValue :
140137 event .acceptProposedAction ()
@@ -154,7 +151,6 @@ def setAcceptDrop(self, acceptDrop):
154151 self .acceptDropChanged .emit ()
155152
156153 acceptDropChanged = QtCore .pyqtSignal ()
157-
158154 _acceptDropValue = True
159155 acceptDrop = QtCore .pyqtProperty (bool , getAcceptDrop , setAcceptDrop , notify = acceptDropChanged )
160156
0 commit comments