use of org.eclipse.swt.dnd.TextTransfer in project erlide_eclipse by erlang.
the class ClipboardAction method run.
@Override
public void run() {
final Clipboard cb = new Clipboard(display);
final TextTransfer textTransfer = TextTransfer.getInstance();
cb.setContents(new Object[] { text }, new TextTransfer[] { textTransfer });
}
use of org.eclipse.swt.dnd.TextTransfer in project liferay-ide by liferay.
the class KaleoPaletteHelper method updateDragSource.
protected void updateDragSource() {
Transfer[] supportedTypes = { TextTransfer.getInstance() };
/*
* TRH suggested use of the event's doit field by the fListeners, but
* there's no other way to guarantee that TextTransfer is considered
* last
*/
Iterator<TransferDragSourceListener> iterator = getTransferDragSourceListeners().iterator();
ArrayList<TransferDragSourceListener> oldListeners = new ArrayList<>();
while (iterator.hasNext()) {
TransferDragSourceListener listener = iterator.next();
oldListeners.add(listener);
iterator.remove();
}
boolean addTextTransfer = false;
for (int i = 0; i < supportedTypes.length; i++) {
if (TextTransfer.class.equals(supportedTypes[i].getClass())) {
addTextTransfer = true;
} else {
TransferDragSourceListener listener = new TransferDragSourceListenerImpl(supportedTypes[i]);
_getPaletteViewer().addDragSourceListener(listener);
getTransferDragSourceListeners().add(listener);
}
}
iterator = oldListeners.iterator();
while (iterator.hasNext()) {
TransferDragSourceListener listener = iterator.next();
_getPaletteViewer().removeDragSourceListener(listener);
iterator.remove();
}
if (addTextTransfer) {
addTextTransferListener();
}
}
use of org.eclipse.swt.dnd.TextTransfer in project pentaho-kettle by pentaho.
the class TableView method pasteSelected.
private void pasteSelected() {
int rownr = getCurrentRownr();
if (clipboard != null) {
clipboard.dispose();
clipboard = null;
}
clipboard = new Clipboard(getDisplay());
TextTransfer tran = TextTransfer.getInstance();
String text = (String) clipboard.getContents(tran);
if (text != null) {
String[] lines = text.split(Const.CR);
if (lines.length > 1) {
// ALlocate complete paste grid!
String[][] grid = new String[lines.length - 1][];
int[] idx = new int[lines.length - 1];
for (int i = 1; i < lines.length; i++) {
grid[i - 1] = lines[i].split("\t");
idx[i - 1] = rownr + i;
addItem(idx[i - 1], grid[i - 1]);
}
TransAction ta = new TransAction();
ta.setNew(grid, idx);
addUndo(ta);
}
if (rownr == 0 && table.getItemCount() > rownr + 1) {
if (isEmpty(rownr, -1)) {
table.remove(rownr);
}
}
setRowNums();
unEdit();
setModified();
}
}
use of org.eclipse.swt.dnd.TextTransfer in project pentaho-kettle by pentaho.
the class StyledTextComp method checkPaste.
// Check if something is stored inside the Clipboard
private boolean checkPaste() {
try {
Clipboard clipboard = new Clipboard(xParent.getDisplay());
TextTransfer transfer = TextTransfer.getInstance();
String text = (String) clipboard.getContents(transfer);
if (text != null && text.length() > 0) {
return true;
} else {
return false;
}
} catch (Exception e) {
return false;
}
}
use of org.eclipse.swt.dnd.TextTransfer in project xtext-eclipse by eclipse.
the class TraceEditor method createPageContainer.
@Override
protected Composite createPageContainer(final Composite parent) {
Composite tree = new Composite(parent, SWT.NONE);
final Sash sash = new Sash(parent, SWT.HORIZONTAL);
text = new StyledText(parent, SWT.READ_ONLY | SWT.V_SCROLL | SWT.H_SCROLL);
text.setFont(JFaceResources.getTextFont());
final FormLayout form = new FormLayout();
parent.setLayout(form);
FormData treeData = new FormData();
treeData.left = new FormAttachment(0, 0);
treeData.right = new FormAttachment(100, 0);
treeData.top = new FormAttachment(0, 0);
treeData.bottom = new FormAttachment(sash, 0);
tree.setLayoutData(treeData);
final int limit = 20, percent = 50;
final FormData sashData = new FormData();
sashData.left = new FormAttachment(0, 0);
sashData.top = new FormAttachment(percent, 0);
sashData.right = new FormAttachment(100, 0);
sash.setLayoutData(sashData);
sash.addListener(SWT.Selection, new Listener() {
@Override
public void handleEvent(Event e) {
Rectangle sashRect = sash.getBounds();
Rectangle parentRect = parent.getClientArea();
int bottom = parentRect.height - sashRect.height - limit;
e.y = Math.max(Math.min(e.y, bottom), limit);
if (e.y != sashRect.y) {
sashData.top = new FormAttachment(0, e.y);
parent.layout();
}
}
});
FormData textData = new FormData();
textData.left = new FormAttachment(0, 0);
textData.right = new FormAttachment(100, 0);
textData.top = new FormAttachment(sash, 0);
textData.bottom = new FormAttachment(100, 0);
text.setLayoutData(textData);
addSelectionChangedListener(new ISelectionChangedListener() {
@Override
public void selectionChanged(SelectionChangedEvent event) {
ISelection selection = event.getSelection();
if (selection instanceof IStructuredSelection) {
try {
Object x = ((IStructuredSelection) selection).getFirstElement();
if (x instanceof EObject)
updateText((EObject) x);
if (x instanceof Resource)
updateText(((Resource) x).getContents().get(0));
} catch (Exception e) {
text.setText(Throwables.getStackTraceAsString(e));
}
}
}
});
Menu contextMenu = new Menu(text);
MenuItem copyItem = new MenuItem(contextMenu, SWT.PUSH);
copyItem.setText("&Copy");
copyItem.setAccelerator(SWT.MOD1 | 'C');
copyItem.setEnabled(false);
final Clipboard cb = new Clipboard(Display.getDefault());
copyItem.addSelectionListener(new SelectionListener() {
@Override
public void widgetSelected(SelectionEvent e) {
String textData = text.getSelectionText();
TextTransfer textTransfer = TextTransfer.getInstance();
cb.setContents(new Object[] { textData }, new Transfer[] { textTransfer });
}
@Override
public void widgetDefaultSelected(SelectionEvent e) {
}
});
text.setMenu(contextMenu);
text.addSelectionListener(new SelectionListener() {
@Override
public void widgetSelected(SelectionEvent e) {
final String selectionText = text.getSelectionText();
copyItem.setEnabled(!"".equals(selectionText));
final Point range = text.getSelectionRange();
TraceEditor.super.setSelection(new ITextSelection() {
@Override
public boolean isEmpty() {
return "".equals(selectionText);
}
@Override
public String getText() {
return selectionText;
}
@Override
public int getStartLine() {
return -1;
}
@Override
public int getOffset() {
return range.x;
}
@Override
public int getLength() {
return range.y;
}
@Override
public int getEndLine() {
return -1;
}
});
}
@Override
public void widgetDefaultSelected(SelectionEvent e) {
}
});
return tree;
}
Aggregations