Esempio n. 1
0
 def dropEvent(self, event: QtGui.QDropEvent) -> None:
     if event.mimeData().hasUrls():
         for url in event.mimeData().urls():
             self.files.addItem(url.toLocalFile())
         event.acceptProposedAction()
     else:
         super().dropEvent(event)
Esempio n. 2
0
File: laser.py Progetto: djdt/pewpew
    def dropEvent(self, event: QtGui.QDropEvent) -> None:
        if not event.mimeData().hasUrls():  # pragma: no cover
            return super().dropEvent(event)

        paths = [Path(url.toLocalFile()) for url in event.mimeData().urls()]
        event.acceptProposedAction()

        self.openDocument(paths)
Esempio n. 3
0
 def dropEvent(self, event: QtGui.QDropEvent) -> None:
     if event.mimeData().hasUrls():
         urls = event.mimeData().urls()
         for url in urls:
             if url.isLocalFile():
                 path = Path(url.toLocalFile())
                 if self.validPath(path):
                     self.addPath(path)
         event.acceptProposedAction()
     else:  # pragma: no cover
         super().dropEvent(event)
Esempio n. 4
0
    def dropEvent(self, event: QtGui.QDropEvent):
        if (event.mimeData().hasUrls()):
            cursor = None
            working_path = None

            for cur_path in event.mimeData().urls():
                if (cur_path.isLocalFile()):
                    path = cur_path.path(options=QtCore.QUrl.FullyDecoded)

                    if (isinstance(pathlib.PurePath(), pathlib.PureWindowsPath)
                            and path.startswith("/")):
                        path = path[1:]

                    with open(path, "rb") as f:
                        try:
                            cursor = load_cursor(f)
                            working_path = path
                        except ValueError as e:
                            print(e)
                else:
                    try:
                        req = urlopen(cur_path.url())
                        data = BytesIO(req.read())
                        data.seek(0)
                        cursor = load_cursor(data)
                        working_path = None
                    except (URLError, ValueError) as e:
                        print(e)

            if (cursor is not None):
                self.current_cursor = cursor
                self._current_file = working_path
                event.acceptProposedAction()
                return

        if (event.mimeData().hasImage()):
            mem_img = BytesIO()
            buffer = QtCore.QBuffer()
            image = QtGui.QImage(event.mimeData().imageData())
            image.save(buffer, "PNG")

            mem_img.write(buffer)
            mem_img.seek(0)

            self.current_cursor = load_cursor(mem_img)
            self._current_file = None
            event.acceptProposedAction()
            return
Esempio n. 5
0
    def dropEvent(self, event: QtGui.QDropEvent) -> None:  # pragma: no cover
        dest = self.tabAt(event.pos())
        src, ok = event.mimeData().data("application/x-pew2tabbar").toInt()
        if ok and event.source() == self:
            self.moveTab(src, dest)
            event.acceptProposedAction()
        elif ok and isinstance(event.source(), ViewTabBar):
            text = event.source().tabText(src)
            widget = event.source().view.stack.widget(src)

            event.source().view.removeTab(src)

            index = self.view.insertTab(dest, text, widget)
            self.setCurrentIndex(index)
            widget.activate()
            event.acceptProposedAction()
        else:
            event.rejectProposedAction()
Esempio n. 6
0
    def dropEvent(self, event: QtGui.QDropEvent) -> None:
        if event.mimeData().hasUrls():
            for url in event.mimeData().urls():
                self.loadFile(url.toLocalFile())
                break
            event.acceptProposedAction()
        elif event.mimeData().hasText():
            text = event.mimeData().text()
            data = np.genfromtxt(text.split("\n"), usecols=0, dtype=np.float64)
            data = data[~np.isnan(data)]
            if data.size == 0:
                event.ignore()
                return

            self.loadData(data)
            event.acceptProposedAction()
        elif event.mimeData().hasHtml():
            pass
        else:
            super().dropEvent(event)
Esempio n. 7
0
 def dropEvent(self, a0: QtGui.QDropEvent) -> None:
     drag_end_row = self.indexAt(a0.pos()).row()
     self.model().moveRow(QModelIndex(), self.drag_start_row, QModelIndex(),
                          drag_end_row)
     a0.acceptProposedAction()
Esempio n. 8
0
 def dropEvent(self, event: QDropEvent):
     if not self.terrain_mode and event.mimeData().hasFormat(
             "application/fe14-spawn"):
         event.acceptProposedAction()
     else:
         event.ignore()