def dropEvent(self, event): event.setDropAction(Qt.CopyAction) md = event.mimeData() image_exts = set(image_extensions()) - set(tweaks['cover_drop_exclude']) x, y = dnd_get_image(md, image_exts) if x is not None: # We have an image, set cover event.accept() if y is None: # Local image self.cover_view.paste_from_clipboard(x) self.update_layout() else: self.remote_file_dropped.emit(x, y) # We do not support setting cover *and* adding formats for # a remote drop, anyway, so return return # Now look for ebook files urls, filenames = dnd_get_files(md, BOOK_EXTENSIONS, allow_all_extensions=True, filter_exts=image_exts) if not urls: # Nothing found return if not filenames: # Local files self.files_dropped.emit(event, urls) else: # Remote files, use the first file self.remote_file_dropped.emit(urls[0], filenames[0]) event.accept()
def dropEvent(self, event): event.setDropAction(Qt.DropAction.CopyAction) md = event.mimeData() image_exts = set(image_extensions()) - set(tweaks['cover_drop_exclude']) x, y = dnd_get_image(md, image_exts) if x is not None: # We have an image, set cover event.accept() if y is None: # Local image self.cover_view.paste_from_clipboard(x) self.update_layout() else: self.remote_file_dropped.emit(x, y) # We do not support setting cover *and* adding formats for # a remote drop, anyway, so return return # Now look for ebook files urls, filenames = dnd_get_files(md, BOOK_EXTENSIONS, allow_all_extensions=True, filter_exts=image_exts) if not urls: # Nothing found return if not filenames: # Local files self.files_dropped.emit(event, urls) else: # Remote files, use the first file self.remote_file_dropped.emit(urls[0], filenames[0]) event.accept()
def dropEvent(self, event): event.setDropAction(Qt.CopyAction) md = event.mimeData() # Now look for ebook files urls, filenames = dnd_get_files(md, self.DROPABBLE_EXTENSIONS) if not urls: # Nothing found return if not filenames: # Local files self.formats_dropped.emit(event, urls) else: # Remote files, use the first file d = DownloadDialog(urls[0], filenames[0], self) d.start_download() if d.err is None: self.formats_dropped.emit(event, [d.fpath])