def onMouseUp(self, sender, x, y): # event = DOM.eventGetCurrentEvent() self.dragging = NOT_DRAGGING if self.draggingImage: GlassWidget.hide() if (self.currentDragOperation == 'none' or not self.currentTargetElement): if self.currentTargetElement: # leave_event = self.makeDragEvent(event, 'dragleave', # self.currentTargetElement) self.fireDNDEvent('dragleave', self.currentTargetElement, self.currentDropWidget) # self.currentDropWidget.onDragLeave(leave_event) # self.finalize(leave_event) else: self.currentDragOperation = 'none' self.returnDrag() else: # self.dragDataStore.mode = READ_ONLY # drop_event = self.makeDragEvent(event, 'drop', # self.currentTargetElement) drop_event = self.fireDNDEvent('drop', self.currentTargetElement, self.currentDropWidget) #self.dropEffect = self.currentDragOperation # self.currentDropWidget.onDrop(drop_event) # self.finalize(drop_event) if isCanceled(drop_event): self.currentDragOperation = drop_event.dataTransfer.dropEffect else: self.currentDragOperation = 'none' self.zapDragImage() #self.dropEffect = self.currentDragOperation self.fireDNDEvent('dragend', None, self.dragWidget)
def _stopDragging(self): if self._drag_start is not None: # we are no longer dragging self._drag_start = None # deactivate the transparent overlay GlassWidget.hide() # don't let a mouse-up become a click event DOM.eventCancelBubble(DOM.eventGetCurrentEvent(), True)
def endDragging(self): if not self.dragging: return self.dragging = False GlassWidget.hide()