Example usage for org.eclipse.jface.util TransferDropTargetListener TransferDropTargetListener

List of usage examples for org.eclipse.jface.util TransferDropTargetListener TransferDropTargetListener

Introduction

In this page you can find the example usage for org.eclipse.jface.util TransferDropTargetListener TransferDropTargetListener.

Prototype

TransferDropTargetListener

Source Link

Usage

From source file:com.architexa.org.eclipse.gef.ui.palette.FlyoutPaletteComposite.java

License:Open Source License

/**
 * This method hooks a DropTargetListener that collapses the flyout patette when the user
 * drags something from  the palette and moves the cursor to the primary viewer's
 * control.  If the auto-hide feature of the palette is to work properly when dragging, 
 * this method should be called before any other drop target listeners are added to the 
 * primary viewer.//ww  w.  j  av  a2  s.co m
 * 
 * @param   viewer   the primary viewer
 */
public void hookDropTargetListener(GraphicalViewer viewer) {
    viewer.addDropTargetListener(new TransferDropTargetListener() {
        public void dragEnter(DropTargetEvent event) {
        }

        public void dragLeave(DropTargetEvent event) {
        }

        public void dragOperationChanged(DropTargetEvent event) {
        }

        public void dragOver(DropTargetEvent event) {
        }

        public void drop(DropTargetEvent event) {
        }

        public void dropAccept(DropTargetEvent event) {
        }

        public Transfer getTransfer() {
            return TemplateTransfer.getInstance();
        }

        public boolean isEnabled(DropTargetEvent event) {
            if (isInState(STATE_EXPANDED))
                setState(STATE_COLLAPSED);
            return false;
        }
    });
}

From source file:de.tub.tfs.henshin.editor.editparts.flow_diagram.graphical.ActivityEditPart.java

License:Open Source License

@Override
public void activate() {
    super.activate();

    GraphicalViewer viewer = (GraphicalViewer) getViewer();

    viewer.addDropTargetListener(new TransferDropTargetListener() {

        @Override/*  w  ww. j a v a  2 s  . com*/
        public void dropAccept(DropTargetEvent event) {
            // TODO Auto-generated method stub

        }

        @Override
        public void drop(DropTargetEvent event) {
            // TODO Auto-generated method stub

        }

        @Override
        public void dragOver(DropTargetEvent event) {
            // TODO Auto-generated method stub

        }

        @Override
        public void dragOperationChanged(DropTargetEvent event) {
            // TODO Auto-generated method stub

        }

        @Override
        public void dragLeave(DropTargetEvent event) {
            // TODO Auto-generated method stub

        }

        @Override
        public void dragEnter(DropTargetEvent event) {
            // TODO Auto-generated method stub

        }

        @Override
        public boolean isEnabled(DropTargetEvent event) {
            System.out.println("askdjflasjdfl;asjf;lja;slf");
            return true;
        }

        @Override
        public Transfer getTransfer() {
            // TODO Auto-generated method stub
            return null;
        }
    });
}

From source file:net.sf.eclipsensis.installoptions.editor.InstallOptionsGraphicalViewer.java

License:Open Source License

@Override
public void addDropTargetListener(final TransferDropTargetListener listener) {
    if (listener.getTransfer() instanceof TemplateTransfer) {
        super.addDropTargetListener(new TransferDropTargetListener() {
            public void dragEnter(DropTargetEvent event) {
                listener.dragEnter(event);
            }//from  ww w . j  a v a2 s .  com

            public void dragLeave(DropTargetEvent event) {
                listener.dragLeave(event);
            }

            public void dragOperationChanged(DropTargetEvent event) {
                listener.dragOperationChanged(event);
            }

            public void dragOver(DropTargetEvent event) {
                listener.dragOver(event);
            }

            public void drop(DropTargetEvent event) {
                listener.drop(event);
            }

            public void dropAccept(DropTargetEvent event) {
                listener.dropAccept(event);
            }

            public Transfer getTransfer() {
                return InstallOptionsTemplateTransfer.INSTANCE;
            }

            public boolean isEnabled(DropTargetEvent event) {
                return listener.isEnabled(event);
            }
        });
    } else {
        super.addDropTargetListener(listener);
    }
}

From source file:org.eclipse.wst.dtd.ui.views.contentoutline.DTDContentOutlineConfiguration.java

License:Open Source License

public TransferDropTargetListener[] getTransferDropTargetListeners(final TreeViewer treeViewer) {
    if (fTransferDropTargetListeners == null) {
        fTransferDropTargetListeners = new TransferDropTargetListener[] { new TransferDropTargetListener() {
            public void dragEnter(DropTargetEvent event) {
            }/*  w  w w.j a  va  2  s . co  m*/

            public void dragLeave(DropTargetEvent event) {
            }

            public void dragOperationChanged(DropTargetEvent event) {
            }

            public void dragOver(DropTargetEvent event) {
                event.feedback = DND.FEEDBACK_SELECT;
                float feedbackFloat = getHeightInItem(event);
                if (feedbackFloat > 0.75) {
                    event.feedback = DND.FEEDBACK_INSERT_AFTER;
                } else if (feedbackFloat < 0.25) {
                    event.feedback = DND.FEEDBACK_INSERT_BEFORE;
                }
                event.feedback |= DND.FEEDBACK_EXPAND | DND.FEEDBACK_SCROLL;
            }

            public void drop(DropTargetEvent event) {
                if (event.operations != DND.DROP_NONE && LocalSelectionTransfer.getTransfer()
                        .getSelection() instanceof IStructuredSelection) {
                    IStructuredSelection selection = (IStructuredSelection) LocalSelectionTransfer.getTransfer()
                            .getSelection();
                    if (selection != null && !selection.isEmpty() && event.item != null
                            && event.item.getData() != null) {
                        /*
                         * the command uses these numbers instead of the
                         * feedback constants (even though it converts in
                         * the other direction as well)
                         */
                        float feedbackFloat = getHeightInItem(event);

                        final DragAndDropCommand command = new DTDDragAndDropManager().createCommand(
                                event.item.getData(), feedbackFloat, event.operations, event.detail,
                                selection.toList());
                        if (command != null && command.canExecute()) {
                            SafeRunnable.run(new SafeRunnable() {
                                public void run() throws Exception {
                                    command.execute();
                                }
                            });
                        }
                    }
                }
            }

            public void dropAccept(DropTargetEvent event) {
            }

            private float getHeightInItem(DropTargetEvent event) {
                if (event.item == null)
                    return .5f;
                if (event.item instanceof TreeItem) {
                    TreeItem treeItem = (TreeItem) event.item;
                    Control control = treeItem.getParent();
                    Point point = control.toControl(new Point(event.x, event.y));
                    Rectangle bounds = treeItem.getBounds();
                    return (float) (point.y - bounds.y) / (float) bounds.height;
                } else if (event.item instanceof TableItem) {
                    TableItem tableItem = (TableItem) event.item;
                    Control control = tableItem.getParent();
                    Point point = control.toControl(new Point(event.x, event.y));
                    Rectangle bounds = tableItem.getBounds(0);
                    return (float) (point.y - bounds.y) / (float) bounds.height;
                } else {
                    return 0.0F;
                }
            }

            public Transfer getTransfer() {
                return LocalSelectionTransfer.getTransfer();
            }

            public boolean isEnabled(DropTargetEvent event) {
                return getTransfer().isSupportedType(event.currentDataType);
            }
        } };
    }
    return fTransferDropTargetListeners;
}

From source file:org.eclipse.wst.xml.ui.views.contentoutline.AbstractXMLContentOutlineConfiguration.java

License:Open Source License

public TransferDropTargetListener[] getTransferDropTargetListeners(final TreeViewer treeViewer) {
    if (fTransferDropTargetListeners == null) {
        fTransferDropTargetListeners = new TransferDropTargetListener[] { new TransferDropTargetListener() {
            public void dragEnter(DropTargetEvent event) {
            }//from   www .  j  ava  2  s.  co m

            public void dragLeave(DropTargetEvent event) {
            }

            public void dragOperationChanged(DropTargetEvent event) {
            }

            public void dragOver(DropTargetEvent event) {
                event.feedback = DND.FEEDBACK_SELECT;
                float feedbackFloat = getHeightInItem(event);
                if (feedbackFloat > 0.75) {
                    event.feedback = DND.FEEDBACK_INSERT_AFTER;
                } else if (feedbackFloat < 0.25) {
                    event.feedback = DND.FEEDBACK_INSERT_BEFORE;
                }
                event.feedback |= DND.FEEDBACK_EXPAND | DND.FEEDBACK_SCROLL;
            }

            public void drop(DropTargetEvent event) {
                if (event.operations != DND.DROP_NONE
                        && LocalSelectionTransfer.getTransfer().getSelection() != null
                        && !LocalSelectionTransfer.getTransfer().getSelection().isEmpty()) {
                    IStructuredSelection selection = (IStructuredSelection) LocalSelectionTransfer.getTransfer()
                            .getSelection();
                    if (selection != null && !selection.isEmpty() && event.item != null
                            && event.item.getData() != null) {
                        /*
                         * the command uses these numbers instead of the
                         * feedback constants (even though it converts in
                         * the other direction as well)
                         */
                        float feedbackFloat = getHeightInItem(event);

                        final DragNodeCommand command = new DragNodeCommand(event.item.getData(), feedbackFloat,
                                event.operations, event.detail, selection.toList(), treeViewer);
                        if (command != null && command.canExecute()) {
                            SafeRunnable.run(new SafeRunnable() {
                                public void run() throws Exception {
                                    command.execute();
                                }
                            });
                        }
                    }
                }
            }

            public void dropAccept(DropTargetEvent event) {
            }

            private float getHeightInItem(DropTargetEvent event) {
                if (event.item == null)
                    return .5f;
                if (event.item instanceof TreeItem) {
                    TreeItem treeItem = (TreeItem) event.item;
                    Control control = treeItem.getParent();
                    Point point = control.toControl(new Point(event.x, event.y));
                    Rectangle bounds = treeItem.getBounds();
                    return (float) (point.y - bounds.y) / (float) bounds.height;
                } else if (event.item instanceof TableItem) {
                    TableItem tableItem = (TableItem) event.item;
                    Control control = tableItem.getParent();
                    Point point = control.toControl(new Point(event.x, event.y));
                    Rectangle bounds = tableItem.getBounds(0);
                    return (float) (point.y - bounds.y) / (float) bounds.height;
                } else {
                    return 0.0F;
                }
            }

            public Transfer getTransfer() {
                return LocalSelectionTransfer.getTransfer();
            }

            public boolean isEnabled(DropTargetEvent event) {
                return getTransfer().isSupportedType(event.currentDataType);
            }
        } };
    }
    return fTransferDropTargetListeners;
}

From source file:org.fusesource.ide.camel.editor.internal.CamelDesignEditorFlyoutPaletteComposite.java

License:Open Source License

/**
 * This method hooks a DropTargetListener that collapses the flyout patette
 * when the user drags something from the palette and moves the cursor to
 * the primary viewer's control. If the auto-hide feature of the palette is
 * to work properly when dragging, this method should be called before any
 * other drop target listeners are added to the primary viewer.
 * //  w w  w .j a v  a 2s.  co m
 * @param viewer
 *            the primary viewer
 */
@Override
public void hookDropTargetListener(GraphicalViewer viewer) {
    viewer.addDropTargetListener(new TransferDropTargetListener() {
        @Override
        public void dragEnter(DropTargetEvent event) {
        }

        @Override
        public void dragLeave(DropTargetEvent event) {
        }

        @Override
        public void dragOperationChanged(DropTargetEvent event) {
        }

        @Override
        public void dragOver(DropTargetEvent event) {
        }

        @Override
        public void drop(DropTargetEvent event) {
        }

        @Override
        public void dropAccept(DropTargetEvent event) {
        }

        @Override
        public Transfer getTransfer() {
            return TemplateTransfer.getInstance();
        }

        @Override
        public boolean isEnabled(DropTargetEvent event) {
            if (isInState(STATE_EXPANDED))
                setState(STATE_COLLAPSED);
            return false;
        }
    });
}

From source file:org.jboss.tools.vpe.editor.VpeDropWindow.java

License:Open Source License

public TransferDropTargetListener[] getTransferDropTargetListeners() {
    TransferDropTargetListener[] fTransferDropTargetListeners = null;
    if (fTransferDropTargetListeners == null) {
        Transfer[] transfers = new Transfer[] { ModelTransfer.getInstance(), TextTransfer.getInstance(),
                HTMLTransfer.getInstance(), ObjectTransfer.getInstance(), FileTransfer.getInstance(), };
        fTransferDropTargetListeners = new TransferDropTargetListener[transfers.length];
        for (int i = 0; i < transfers.length; i++) {
            final Transfer transfer = transfers[i];
            DropContext dropContext = new DropContext();
            final ViewerDropAdapter dropAdapter = new JSPViewerDropAdapter(transfer, treeViewer, editor,
                    transfer, dropContext);
            fTransferDropTargetListeners[i] = new TransferDropTargetListener() {
                public void dragEnter(DropTargetEvent event) {
                    dropAdapter.dragEnter(event);
                }//  w  ww  .  ja v a  2s  . c  o  m

                public void dragLeave(DropTargetEvent event) {
                    dropAdapter.dragLeave(event);
                    Display.getDefault().asyncExec(new Runnable() {
                        public void run() {
                            close();
                        }
                    });
                }

                public void dragOperationChanged(DropTargetEvent event) {
                    dropAdapter.dragOperationChanged(event);
                }

                public void dragOver(DropTargetEvent event) {
                    dropAdapter.dragOver(event);
                }

                public void drop(DropTargetEvent event) {
                    dropAdapter.drop(event);
                }

                public void dropAccept(DropTargetEvent event) {
                    dropAdapter.dropAccept(event);
                }

                public Transfer getTransfer() {
                    return transfer;
                }

                public boolean isEnabled(DropTargetEvent event) {
                    return getTransfer().isSupportedType(event.currentDataType);
                }
            };
        }
    }
    return fTransferDropTargetListeners;
}

From source file:org.peprframework.ide.views.pages.input.InputPage.java

License:Apache License

private void createMappingTextViewer() {
    DelegatingDropAdapter dropAdapter = new DelegatingDropAdapter();
    dropAdapter.addDropTargetListener(new TransferDropTargetListener() {

        public void dropAccept(DropTargetEvent event) {
        }//from  ww w  .  j  av  a2s.  c  om

        public void drop(DropTargetEvent event) {
            StyledText textWidget = textViewer.getTextWidget();
            String text = (String) event.data;
            int caretOffset = textWidget.getCaretOffset();
            textWidget.insert(text);
            textWidget.setCaretOffset(caretOffset + text.length());
            textWidget.setFocus();

        }

        public void dragOver(DropTargetEvent event) {
        }

        public void dragOperationChanged(DropTargetEvent event) {
        }

        public void dragLeave(DropTargetEvent event) {
        }

        public void dragEnter(DropTargetEvent event) {
        }

        public boolean isEnabled(DropTargetEvent event) {
            return true;
        }

        public Transfer getTransfer() {
            return TextTransfer.getInstance();
        }
    });

    textViewerDocumentProvider = new AbstractDocumentProvider() {

        @Override
        protected IRunnableContext getOperationRunner(IProgressMonitor monitor) {
            // TODO Auto-generated method stub
            return null;
        }

        @Override
        protected void doSaveDocument(IProgressMonitor monitor, Object element, IDocument document,
                boolean overwrite) throws CoreException {
        }

        @SuppressWarnings("unchecked")
        @Override
        protected IDocument createDocument(Object element) throws CoreException {
            if (!(element instanceof ActivityEditPart))
                return null;

            Activity activity = ((ActivityEditPart) element).getActivity();
            InputFilter inputFilter = (InputFilter) activity.getInputFilter();

            if (inputFilter == null)
                inputFilter = new GroovyInputFilter();

            if (!(inputFilter instanceof GroovyInputFilter))
                return null;

            GroovyInputFilter groovyInputFilter = (GroovyInputFilter) inputFilter;
            String script = groovyInputFilter.getScript();
            IDocument document = null;

            if (script == null || script.trim().length() == 0) {
                document = new Document("");
            } else {
                document = new Document(script);
            }

            return document;
        }

        @Override
        public IContentType getContentType(Object element) throws CoreException {
            return Platform.getContentTypeManager().getContentType(IContentTypeManager.CT_TEXT);
        }

        @Override
        protected IAnnotationModel createAnnotationModel(Object element) throws CoreException {
            return null;
        }
    };

    Section section = toolkit.createSection(panel,
            Section.SHORT_TITLE_BAR | Section.EXPANDED | Section.CLIENT_INDENT);
    GridData data = new GridData(SWT.FILL, SWT.FILL, true, true, 1, 2);
    section.setLayoutData(data);
    section.setText("Mapping");

    textViewer = new TextViewer(section, SWT.MULTI | SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL);
    section.setClient(textViewer.getTextWidget());

    DropTarget textViewerDropTarget = new DropTarget(textViewer.getTextWidget(), DND.DROP_COPY | DND.DROP_MOVE);
    textViewerDropTarget.setTransfer(dropAdapter.getTransfers());
    textViewerDropTarget.addDropListener(dropAdapter);

    textViewer.addTextListener(new ITextListener() {

        public void textChanged(TextEvent event) {
            if (event.getDocumentEvent() == null) {
                return;
            }

            modificationHook.modified();
        }
    });
}