-package jp.sourceforge.moreemacs.handlers;\r
-\r
-import org.eclipse.jface.text.ITextSelection;\r
-import org.eclipse.jface.text.ITextViewer;\r
-import org.eclipse.jface.text.ITextViewerExtension5;\r
-import org.eclipse.swt.custom.StyledText;\r
-import org.eclipse.ui.texteditor.ITextEditor;\r
-\r
-final class Cursor {\r
- private final ITextEditor textEditor;\r
- private final ITextViewerExtension5 textViewerEx5;\r
- private final StyledText styledText;\r
- private final ITextViewer textViewer;\r
- \r
- Cursor(ITextEditor textEditor, ITextViewer textViewer) {\r
- this.textEditor = textEditor;\r
- this.textViewer = textViewer;\r
- this.styledText = textViewer.getTextWidget();\r
- this.textViewerEx5 = (textViewer instanceof ITextViewerExtension5)\r
- ? (ITextViewerExtension5) textViewer: null;\r
- }\r
- \r
- int offset() {\r
- if(textViewerEx5 != null) {\r
- return textViewerEx5.widgetOffset2ModelOffset(\r
- styledText.getCaretOffset());\r
- }\r
-\r
- ITextSelection selectoin =\r
- (ITextSelection) textEditor.getSelectionProvider().getSelection();\r
- int selectionBegin = selectoin.getOffset();\r
- return selectionBegin;\r
- }\r
- \r
- void move(int offset) {\r
- textViewer.setSelectedRange(offset, 0);\r
- textViewer.revealRange(offset, 0);\r
-\r
-// workaround for ISourceViewer\r
-// sourceViewer.setRangeIndication(offset, 0, true);\r
-\r
-// workaround for ITextViewerExtension5\r
-// if(textViewerEx5 != null) {\r
-// styledText.setCaretOffset(textViewerEx5.modelOffset2WidgetOffset(offset));\r
-//\r
-// return;\r
-// }\r
-\r
-// workaround for ITextEditor\r
-// textEditor.resetHighlightRange();\r
-// textEditor.setHighlightRange(offset, 0, true);\r
- }\r
-}\r
+package jp.sourceforge.moreemacs.handlers;
+
+import org.eclipse.jface.text.ITextSelection;
+import org.eclipse.jface.text.ITextViewer;
+import org.eclipse.jface.text.ITextViewerExtension5;
+import org.eclipse.swt.custom.StyledText;
+import org.eclipse.ui.texteditor.ITextEditor;
+
+final class Cursor {
+ private final ITextEditor textEditor;
+ private final ITextViewerExtension5 textViewerEx5;
+ private final StyledText styledText;
+ private final ITextViewer textViewer;
+
+ Cursor(ITextEditor textEditor, ITextViewer textViewer) {
+ this.textEditor = textEditor;
+ this.textViewer = textViewer;
+ this.styledText = textViewer.getTextWidget();
+ this.textViewerEx5 = (textViewer instanceof ITextViewerExtension5)
+ ? (ITextViewerExtension5) textViewer: null;
+ }
+
+ int offset() {
+ if(textViewerEx5 != null) {
+ return textViewerEx5.widgetOffset2ModelOffset(
+ styledText.getCaretOffset());
+ }
+
+ ITextSelection selectoin =
+ (ITextSelection) textEditor.getSelectionProvider().getSelection();
+ int selectionBegin = selectoin.getOffset();
+ return selectionBegin;
+ }
+
+ void move(int offset) {
+ textViewer.setSelectedRange(offset, 0);
+ textViewer.revealRange(offset, 0);
+
+// workaround for ISourceViewer
+// sourceViewer.setRangeIndication(offset, 0, true);
+
+// workaround for ITextViewerExtension5
+// if(textViewerEx5 != null) {
+// styledText.setCaretOffset(textViewerEx5.modelOffset2WidgetOffset(offset));
+//
+// return;
+// }
+
+// workaround for ITextEditor
+// textEditor.resetHighlightRange();
+// textEditor.setHighlightRange(offset, 0, true);
+ }
+}