java.awt.dnd.DragSourceEvent#java.awt.dnd.DragGestureEvent源码实例Demo

下面列出了java.awt.dnd.DragSourceEvent#java.awt.dnd.DragGestureEvent 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: pumpernickel   文件: CustomizedToolbar.java
private boolean triggerDrag(JFrame f, Point p, DragGestureEvent dge,
		JComponent c) {
	Rectangle r = new Rectangle(0, 0, c.getWidth(), c.getHeight());
	r = SwingUtilities.convertRectangle(c, r, f);

	if (r.contains(p)) {
		draggingFromToolbar = true;
		draggingDefaults = false;
		draggingComponent = c.getName();
		MockComponent mc = new MockComponent(c);
		Transferable transferable = new MockComponentTransferable(mc);
		BufferedImage bi = mc.getBufferedImage();
		dge.startDrag(DragSource.DefaultMoveDrop, bi, new Point(r.x
				- p.x, r.y - p.y), transferable, dragSourceListener);
		return true;
	}
	return false;
}
 
源代码2 项目: java-swing-tips   文件: MainPanel.java
@Override public void dragGestureRecognized(DragGestureEvent e) {
  Optional.ofNullable(e.getComponent())
      .filter(c -> c instanceof DnDTabbedPane).map(c -> (DnDTabbedPane) c)
      .filter(tabbedPane -> tabbedPane.getTabCount() > 1)
      .ifPresent(tabbedPane -> {
        Point tabPt = e.getDragOrigin();
        int idx = tabbedPane.indexAtLocation(tabPt.x, tabPt.y);
        int selIdx = tabbedPane.getSelectedIndex();
        // When a tab runs rotation occurs, a tab that is not the target is dragged.
        // pointed out by Arjen
        boolean isTabRunsRotated = !(tabbedPane.getUI() instanceof MetalTabbedPaneUI)
            && tabbedPane.getTabLayoutPolicy() == JTabbedPane.WRAP_TAB_LAYOUT
            && idx != selIdx;
        tabbedPane.dragTabIndex = isTabRunsRotated ? selIdx : idx;
        if (tabbedPane.dragTabIndex >= 0 && tabbedPane.isEnabledAt(tabbedPane.dragTabIndex)) {
          tabbedPane.initGlassPane(tabPt);
          try {
            e.startDrag(DragSource.DefaultMoveDrop, new TabTransferable(tabbedPane), new TabDragSourceListener());
          } catch (InvalidDnDOperationException ex) {
            throw new IllegalStateException(ex);
          }
        }
      });
}
 
源代码3 项目: pentaho-reporting   文件: PaletteButton.java
public void dragGestureRecognized( final DragGestureEvent anEvent ) {
  final ElementMetaData elementMetaData = ElementTypeRegistry.getInstance().getElementType( elementName );
  final ElementMetaDataTransferable transferable = new ElementMetaDataTransferable( elementMetaData );
  anEvent.startDrag( DragSource.DefaultCopyNoDrop, EMPTY_DRAG_IMAGE, new Point(), transferable, null );

  final ButtonModel model = getModel();
  model.setArmed( false );
  model.setPressed( false );
}
 
源代码4 项目: openjdk-jdk9   文件: XToolkit.java
@Override
public DragSourceContextPeer createDragSourceContextPeer(DragGestureEvent dge) throws InvalidDnDOperationException {
    final LightweightFrame f = SunToolkit.getLightweightFrame(dge.getComponent());
    if (f != null) {
        return f.createDragSourceContextPeer(dge);
    }

    return XDragSourceContextPeer.createDragSourceContextPeer(dge);
}
 
源代码5 项目: jdk8u_jdk   文件: WToolkit.java
/**
 * create the peer for a DragSourceContext
 */

@Override
public DragSourceContextPeer createDragSourceContextPeer(DragGestureEvent dge) throws InvalidDnDOperationException {
    final LightweightFrame f = SunToolkit.getLightweightFrame(dge.getComponent());
    if (f != null) {
        return f.createDragSourceContextPeer(dge);
    }

    return WDragSourceContextPeer.createDragSourceContextPeer(dge);
}
 
源代码6 项目: jdk8u_jdk   文件: XToolkit.java
public DragSourceContextPeer createDragSourceContextPeer(DragGestureEvent dge) throws InvalidDnDOperationException {
    final LightweightFrame f = SunToolkit.getLightweightFrame(dge.getComponent());
    if (f != null) {
        return f.createDragSourceContextPeer(dge);
    }

    return XDragSourceContextPeer.createDragSourceContextPeer(dge);
}
 
源代码7 项目: openjdk-8   文件: SourceFileListFrame.java
public void dragGestureRecognized(DragGestureEvent dge) {
    String [] filesAsStringArray = list.getItems();
    File [] files = new File[filesAsStringArray.length];
    for (int fileNumber=0; fileNumber<filesAsStringArray.length ; fileNumber++ ) {
        files[fileNumber]=new File(filesAsStringArray[fileNumber]);
    }
    dge.startDrag(null, new FileListTransferable(Arrays.asList(files)));
}
 
源代码8 项目: jdk8u-jdk   文件: SourceFileListFrame.java
public void dragGestureRecognized(DragGestureEvent dge) {
    String [] filesAsStringArray = list.getItems();
    File [] files = new File[filesAsStringArray.length];
    for (int fileNumber=0; fileNumber<filesAsStringArray.length ; fileNumber++ ) {
        files[fileNumber]=new File(filesAsStringArray[fileNumber]);
    }
    dge.startDrag(null, new FileListTransferable(Arrays.asList(files)));
}
 
/**
 * construct a new SunDragSourceContextPeer
 */

public SunDragSourceContextPeer(DragGestureEvent dge) {
    trigger = dge;
    if (trigger != null) {
        component = trigger.getComponent();
    } else {
        component = null;
    }
}
 
源代码10 项目: jaamsim   文件: EntityPallet.java
@Override
public void dragGestureRecognized(DragGestureEvent event) {

	TreePath path = tree.getSelectionPath();
	if (path != null) {

		// Dragged node is a DefaultMutableTreeNode
		if(path.getLastPathComponent() instanceof DefaultMutableTreeNode) {
			DefaultMutableTreeNode treeNode = (DefaultMutableTreeNode) path.getLastPathComponent();

			// This is an ObjectType node
			if(treeNode.getUserObject() instanceof ObjectType) {
				ObjectType type = (ObjectType) treeNode.getUserObject();
				Cursor cursor = null;

				if (event.getDragAction() == DnDConstants.ACTION_COPY) {
					cursor = DragSource.DefaultCopyDrop;
				}
				if (RenderManager.isGood()) {
					// The new renderer is initialized
					RenderManager.inst().startDragAndDrop(type);
					event.startDrag(cursor,new TransferableObjectType(type), RenderManager.inst());

				} else {
					event.startDrag(cursor,new TransferableObjectType(type));
				}
			}
		}
	}
}
 
源代码11 项目: openjdk-jdk8u   文件: SourceFileListFrame.java
public void dragGestureRecognized(DragGestureEvent dge) {
    java.util.List<URI> uriList = Stream.of(list.getItems())
                                            .map(File::new)
                                            .map(File::toURI)
                                            .collect(Collectors.toList());

    dge.startDrag(null, new URIListTransferable(uriList));
}
 
源代码12 项目: gcs   文件: TreePanel.java
@Override
public void dragGestureRecognized(DragGestureEvent event) {
    mDropReceived = false;
    int   dragAction = event.getDragAction();
    Point where      = new Point(event.getDragOrigin());
    switch (checkAndConvertToArea(where)) {
    case CONTENT:
        if (!mIgnoreNextDragGesture && mDragColumnDivider == -1 && !mSelectedRows.isEmpty() && (dragAction & mAllowedRowDragTypes) != 0) {
            TreeRowSelection selection = new TreeRowSelection(getSelectedRows(), mOpenRows);
            if (DragSource.isDragImageSupported()) {
                Img       dragImage = createDragImage(where);
                Point     imageOffset;
                Rectangle dragClip  = getDragClip();
                imageOffset = dragClip != null ? new Point(dragClip.x - where.x, dragClip.y - where.y) : new Point();
                event.startDrag(null, dragImage, imageOffset, selection, this);
            } else {
                event.startDrag(null, selection, this);
            }
        }
        break;
    case HEADER:
        if (mAllowColumnDrag && dragAction == DnDConstants.ACTION_MOVE && mSortColumn != null) {
            setSourceDragColumn(mSortColumn);
            if (DragSource.isDragImageSupported()) {
                event.startDrag(null, createColumnDragImage(mSortColumn), new Point(-(where.x - getColumnStart(mSortColumn)), -where.y), mSortColumn, this);
            } else {
                event.startDrag(null, mSortColumn, this);
            }
        }
        mSortColumn = null;
        break;
    default:
        break;
    }
}
 
源代码13 项目: hottub   文件: SunDragSourceContextPeer.java
/**
 * construct a new SunDragSourceContextPeer
 */

public SunDragSourceContextPeer(DragGestureEvent dge) {
    trigger = dge;
    if (trigger != null) {
        component = trigger.getComponent();
    } else {
        component = null;
    }
}
 
源代码14 项目: openjdk-8   文件: SourceFileListFrame.java
public void dragGestureRecognized(DragGestureEvent dge) {
    String [] filesAsStringArray = list.getItems();
    File [] files = new File[filesAsStringArray.length];
    for (int fileNumber=0; fileNumber<filesAsStringArray.length ; fileNumber++ ) {
        files[fileNumber]=new File(filesAsStringArray[fileNumber]);
    }
    dge.startDrag(null, new FileListTransferable(Arrays.asList(files)));
}
 
源代码15 项目: TencentKona-8   文件: SourceFileListFrame.java
public void dragGestureRecognized(DragGestureEvent dge) {
    String [] filesAsStringArray = list.getItems();
    File [] files = new File[filesAsStringArray.length];
    for (int fileNumber=0; fileNumber<filesAsStringArray.length ; fileNumber++ ) {
        files[fileNumber]=new File(filesAsStringArray[fileNumber]);
    }
    dge.startDrag(null, new FileListTransferable(Arrays.asList(files)));
}
 
protected synchronized void setTrigger(DragGestureEvent dge) {
    trigger = dge;
    if (trigger != null) {
        component = trigger.getComponent();
    } else {
        component = null;
    }
}
 
源代码17 项目: jdk8u60   文件: SunDragSourceContextPeer.java
protected synchronized void setTrigger(DragGestureEvent dge) {
    trigger = dge;
    if (trigger != null) {
        component = trigger.getComponent();
    } else {
        component = null;
    }
}
 
源代码18 项目: jdk8u60   文件: WToolkit.java
/**
 * create the peer for a DragSourceContext
 */

@Override
public DragSourceContextPeer createDragSourceContextPeer(DragGestureEvent dge) throws InvalidDnDOperationException {
    final LightweightFrame f = SunToolkit.getLightweightFrame(dge.getComponent());
    if (f != null) {
        return f.createDragSourceContextPeer(dge);
    }

    return WDragSourceContextPeer.createDragSourceContextPeer(dge);
}
 
源代码19 项目: jdk8u_jdk   文件: SourceFileListFrame.java
public void dragGestureRecognized(DragGestureEvent dge) {
    java.util.List<URI> uriList = Stream.of(list.getItems())
                                            .map(File::new)
                                            .map(File::toURI)
                                            .collect(Collectors.toList());

    dge.startDrag(null, new URIListTransferable(uriList));
}
 
源代码20 项目: gcs   文件: Outline.java
@Override
public void dragGestureRecognized(DragGestureEvent dge) {
    if (mDividerDrag == null && mModel.hasSelection() && allowRowDrag() && hasFocus()) {
        Point        pt        = dge.getDragOrigin();
        RowSelection selection = new RowSelection(mModel, mModel.getSelectionAsList(true).toArray(new Row[0]));
        if (DragSource.isDragImageSupported()) {
            Img   dragImage   = getDragImage(pt.x, pt.y);
            Point imageOffset = new Point(mDragClip.x - pt.x, mDragClip.y - pt.y);
            dge.startDrag(null, dragImage, imageOffset, selection, null);
        } else {
            dge.startDrag(null, selection);
        }
    }
}
 
源代码21 项目: openjdk-jdk9   文件: SourceFileListFrame.java
public void dragGestureRecognized(DragGestureEvent dge) {
    java.util.List<URI> uriList = Stream.of(list.getItems())
                                            .map(File::new)
                                            .map(File::toURI)
                                            .collect(Collectors.toList());

    dge.startDrag(null, new URIListTransferable(uriList));
}
 
源代码22 项目: openjdk-jdk8u   文件: SunDragSourceContextPeer.java
/**
 * construct a new SunDragSourceContextPeer
 */

public SunDragSourceContextPeer(DragGestureEvent dge) {
    trigger = dge;
    if (trigger != null) {
        component = trigger.getComponent();
    } else {
        component = null;
    }
}
 
源代码23 项目: jdk8u-jdk   文件: XToolkit.java
public DragSourceContextPeer createDragSourceContextPeer(DragGestureEvent dge) throws InvalidDnDOperationException {
    final LightweightFrame f = SunToolkit.getLightweightFrame(dge.getComponent());
    if (f != null) {
        return f.createDragSourceContextPeer(dge);
    }

    return XDragSourceContextPeer.createDragSourceContextPeer(dge);
}
 
源代码24 项目: jdk8u_jdk   文件: SourceFileListFrame.java
public void dragGestureRecognized(DragGestureEvent dge) {
    String [] filesAsStringArray = list.getItems();
    File [] files = new File[filesAsStringArray.length];
    for (int fileNumber=0; fileNumber<filesAsStringArray.length ; fileNumber++ ) {
        files[fileNumber]=new File(filesAsStringArray[fileNumber]);
    }
    dge.startDrag(null, new FileListTransferable(Arrays.asList(files)));
}
 
源代码25 项目: constellation   文件: DragAction.java
@Override
public void dragGestureRecognized(DragGestureEvent dge) {
    final Point offset = new Point(DRAG_DROP_ICON.getWidth(null), DRAG_DROP_ICON.getHeight(null));
    source.startDrag(dge, DragSource.DefaultCopyDrop, DRAG_DROP_ICON, offset, this, null);
}
 
源代码26 项目: jdk8u-jdk   文件: WDragSourceContextPeer.java
/**
 * construct a new WDragSourceContextPeer. package private
 */

private WDragSourceContextPeer(DragGestureEvent dge) {
    super(dge);
}
 
源代码27 项目: openjdk-8-source   文件: XDragSourceContextPeer.java
static XDragSourceContextPeer createDragSourceContextPeer(DragGestureEvent dge)
  throws InvalidDnDOperationException {
theInstance.setTrigger(dge);
    return theInstance;
}
 
源代码28 项目: openjdk-8   文件: WDragSourceContextPeer.java
static WDragSourceContextPeer createDragSourceContextPeer(DragGestureEvent dge) throws InvalidDnDOperationException {
    theInstance.setTrigger(dge);
    return theInstance;
}
 
源代码29 项目: dragonwell8_jdk   文件: SunDragSourceContextPeer.java
protected DragGestureEvent getTrigger() {
    return trigger;
}
 
源代码30 项目: openjdk-jdk9   文件: XDragSourceContextPeer.java
private XDragSourceContextPeer(DragGestureEvent dge) {
    super(dge);
}