diff options
author | Nitin Dahyabhai | 2020-01-09 14:19:05 +0000 |
---|---|---|
committer | Nitin Dahyabhai | 2020-01-09 14:20:18 +0000 |
commit | 8676d10752dea7dda5a26db61b8de314a1ec4fbc (patch) | |
tree | 5598a761985b04e33b569047502195ff571f324e /core/bundles/org.eclipse.wst.sse.ui | |
parent | f780b8a7ac93ad53785359fe6ab0617e34724b07 (diff) | |
download | webtools.sourceediting-8676d10752dea7dda5a26db61b8de314a1ec4fbc.tar.gz webtools.sourceediting-8676d10752dea7dda5a26db61b8de314a1ec4fbc.tar.xz webtools.sourceediting-8676d10752dea7dda5a26db61b8de314a1ec4fbc.zip |
[195655] restore protected method for binary compatibility
Diffstat (limited to 'core/bundles/org.eclipse.wst.sse.ui')
-rwxr-xr-x | core/bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/StructuredTextEditor.java | 54 |
1 files changed, 35 insertions, 19 deletions
diff --git a/core/bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/StructuredTextEditor.java b/core/bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/StructuredTextEditor.java index 21668b1b31..09a4280f30 100755 --- a/core/bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/StructuredTextEditor.java +++ b/core/bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/StructuredTextEditor.java @@ -2717,6 +2717,14 @@ public class StructuredTextEditor extends TextEditor { } } + /** + * @deprecated since 1.6.300 - no longer used in favor of platform text + * drag and drop, left for binary compatibility + * @param textViewer + */ + protected void initializeDrop(ITextViewer textViewer) { + } + /* * (non-Javadoc) * @@ -2791,25 +2799,33 @@ public class StructuredTextEditor extends TextEditor { @Override protected void installTextDragAndDrop(final ISourceViewer textViewer) { - super.installTextDragAndDrop(textViewer); - IDragAndDropService dndService = getSite().getService(IDragAndDropService.class); - Object dropTarget = textViewer.getTextWidget().getData(DND.DROP_TARGET_KEY); - int operations = DND.DROP_COPY | DND.DROP_MOVE; - if (dropTarget instanceof DropTarget) { - DropTargetListener[] dropListeners = ((DropTarget)dropTarget).getDropListeners(); - fDropAdapter = new DefaultTextTransferDropTargetAdapterProxy(dropListeners[dropListeners.length-1]); - } else { - fDropAdapter = new ReadOnlyAwareDropTargetAdapter(true); - } - fDropAdapter.setTargetEditor(this); - fDropAdapter.setTargetIDs(getConfigurationPoints()); - fDropAdapter.setTextViewer(textViewer); - Transfer[] transfers = fDropAdapter.getTransfers(); - if (dropTarget instanceof DropTarget) { - transfers = Arrays.copyOf(transfers, transfers.length + 1); - transfers[transfers.length - 1] = TextTransfer.getInstance(); - } - dndService.addMergedDropTarget(textViewer.getTextWidget(), operations, transfers, fDropAdapter); + /** + * For compatibility, let subclasses install their own support and + * supersede the default + */ + initializeDrop(textViewer); + if (textViewer.getTextWidget().getData(DND.DROP_TARGET_KEY) == null) { + super.installTextDragAndDrop(textViewer); + IDragAndDropService dndService = getSite().getService(IDragAndDropService.class); + Object dropTarget = textViewer.getTextWidget().getData(DND.DROP_TARGET_KEY); + int operations = DND.DROP_COPY | DND.DROP_MOVE; + if (dropTarget instanceof DropTarget) { + DropTargetListener[] dropListeners = ((DropTarget) dropTarget).getDropListeners(); + fDropAdapter = new DefaultTextTransferDropTargetAdapterProxy(dropListeners[dropListeners.length - 1]); + } + else { + fDropAdapter = new ReadOnlyAwareDropTargetAdapter(true); + } + fDropAdapter.setTargetEditor(this); + fDropAdapter.setTargetIDs(getConfigurationPoints()); + fDropAdapter.setTextViewer(textViewer); + Transfer[] transfers = fDropAdapter.getTransfers(); + if (dropTarget instanceof DropTarget) { + transfers = Arrays.copyOf(transfers, transfers.length + 1); + transfers[transfers.length - 1] = TextTransfer.getInstance(); + } + dndService.addMergedDropTarget(textViewer.getTextWidget(), operations, transfers, fDropAdapter); + } } /* |