DropTarget target = new DropTarget(shell, DND.DROP_LINK);
DropTarget target = new DropTarget(shell, DND.DROP_LINK | DND.DROP_MOVE);
  public void createDropTarget() {    DropTarget target = new DropTarget(shell, DND.DROP_LINK);    target.setTransfer(new Transfer[] { FileTransfer.getInstance() } );    target.addDropListener(new DropTargetListener() {      public void dragEnter(DropTargetEvent e) {};      public void dragOver(DropTargetEvent e) {};      public void dragLeave(DropTargetEvent e) {};      public void dragOperationChanged(DropTargetEvent e) {};      public void dropAccept(DropTargetEvent e) {};      public void drop(DropTargetEvent e) {        if (e.data == null)          e.detail = DND.DROP_NONE;        else {          String[] filenames = (String[]) e.data;          for (int i = 0; i < filenames.length; i++) {            File file = new File(filenames[i]);            if (file.exists()) {               System.out.println("Import: " + file);              try {                Track track = new Track(file.toURL());                if (trackDatabase.getTrack(track) == null)                  trackDatabase.add(track);              }              catch (MalformedURLException mue) {                mue.printStackTrace();              }              trackTable.updateTable();            }          }        }      }    });   }