OSDN Git Service

first commit
[moreemacs/moreemacs.git] / jp.sourceforge.moreemacs / src / jp / sourceforge / moreemacs / handlers / BackwardKillWordExecution.java
1 package jp.sourceforge.moreemacs.handlers;\r
2 \r
3 import org.eclipse.jface.text.BadLocationException;\r
4 import org.eclipse.swt.dnd.Clipboard;\r
5 import org.eclipse.swt.dnd.TextTransfer;\r
6 import org.eclipse.swt.dnd.Transfer;\r
7 \r
8 public final class BackwardKillWordExecution extends TextEditorExecution {\r
9 \r
10         @Override\r
11         public void execute()throws BadLocationException {\r
12         if(!textEditor.isEditable()) {\r
13             return;\r
14         }\r
15 \r
16                 int current = cursor.offset();\r
17                 int previous = BackwardWordExecution.getPreviousWordPosition(doc, current);\r
18                 String word = doc.get(previous, current - previous);\r
19                 Clipboard c = new Clipboard(window.getShell().getDisplay());\r
20                 c.setContents(new String[] { word },\r
21                                 new Transfer[] { TextTransfer.getInstance() });\r
22                 doc.replace(previous, current - previous, "");\r
23 \r
24         }\r
25 }\r