Re: Drag & Drop from Project View into (JavaFX) Editor

Dmitry Avtonomov <[email protected]>
Newsgroups gmane.comp.java.netbeans.modules.openide.devel
Message-ID <CAMMjtf-W0JD_vjkewTQCacwkNwbbWb8XXpq7WQhRbf9rBvxYcg@mail.gmail.com>
Maybe you should install a custom TransferHandler into your top component?

Here's where you should start, I think:
https://docs.oracle.com/javase/tutorial/uiswing/dnd/transferhandler.html
I'm trying to enable drag & drop for files from the project view to an
editor window. More specifically to a JavaFX TableView.
Even though drag detection seems to work correctly (cursor changes), when I
drop it, I don't get notified and I get this exception:

> java.awt.datatransfer.UnsupportedFlavorException: Unicode String
>       at
org.openide.util.datatransfer.ExTransferable.getTransferData(ExTransferable.java:152)
>       at
sun.awt.dnd.SunDropTargetContextPeer.getTransferData(SunDropTargetContextPeer.java:241)
> ....


My Code:

Code:

        componentTable.setOnDragOver((event) -> {
            if (event.getGestureSource() != componentTable
                    && event.getDragboard().hasFiles()) {
                event.acceptTransferModes(TransferMode.LINK);
            }

            event.consume();
        });
        componentTable.setOnDragEntered((event) -> {
            if (event.getGestureSource() != componentTable
                    && event.getDragboard().hasFiles()) {
                //todo
            }

            event.consume();
        });
        componentTable.setOnDragExited((event) -> {
            //todo
            event.consume();
        });
        componentTable.setOnDragDropped((event) -> {
            Dragboard db = event.getDragboard();
            boolean success = false;
            if (db.hasFiles()) {
                //todo
                success = true;
            }
            event.setDropCompleted(success);

            event.consume();
        });
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.