Mega Code Archive
Copy and Paste
/******************************************************************************
* All Right Reserved.
* Copyright (c) 1998, 2004 Jackwind Li Guojie
*
* Created on 2004-4-28 10:43:40 by JACK
* $Id$
*
*****************************************************************************/
import org.eclipse.swt.SWT;
import org.eclipse.swt.dnd.Clipboard;
import org.eclipse.swt.dnd.RTFTransfer;
import org.eclipse.swt.dnd.TextTransfer;
import org.eclipse.swt.dnd.Transfer;
import org.eclipse.swt.dnd.TransferData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Event;
import org.eclipse.swt.widgets.Listener;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.ToolBar;
import org.eclipse.swt.widgets.ToolItem;
public class CopyPaste {
Display display = new Display();
Shell shell = new Shell(display);
public CopyPaste() {
shell.setLayout(new GridLayout());
ToolBar toolBar = new ToolBar(shell, SWT.FLAT);
ToolItem itemCopy = new ToolItem(toolBar, SWT.PUSH);
ToolItem itemPaste = new ToolItem(toolBar, SWT.PUSH);
itemCopy.setText("Copy");
itemPaste.setText("Paste");
itemCopy.addListener(SWT.Selection, new Listener() {
public void handleEvent(Event event) {
Clipboard clipboard = new Clipboard(display);
String plainText = "Hello World";
String rtfText = "{\\rtf1\\b Hello World}";
TextTransfer textTransfer = TextTransfer.getInstance();
RTFTransfer rftTransfer = RTFTransfer.getInstance();
clipboard.setContents(new String[]{plainText, rtfText}, new Transfer[]{textTransfer, rftTransfer});
clipboard.dispose();
}
});
itemPaste.addListener(SWT.Selection, new Listener() {
public void handleEvent(Event event) {
Clipboard clipboard = new Clipboard(display);
TransferData[] transferDatas = clipboard.getAvailableTypes();
for(int i=0; i