本文整理汇总了Java中com.intellij.openapi.editor.ex.util.EditorUtil.yPositionToLogicalLine方法的典型用法代码示例。如果您正苦于以下问题:Java EditorUtil.yPositionToLogicalLine方法的具体用法?Java EditorUtil.yPositionToLogicalLine怎么用?Java EditorUtil.yPositionToLogicalLine使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.intellij.openapi.editor.ex.util.EditorUtil
的用法示例。
在下文中一共展示了EditorUtil.yPositionToLogicalLine方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: convertPointToLineNumber
import com.intellij.openapi.editor.ex.util.EditorUtil; //导入方法依赖的package包/类
private int convertPointToLineNumber(final Point p) {
int line = EditorUtil.yPositionToLogicalLine(myEditor, p);
if (line >= myEditor.getDocument().getLineCount()) return -1;
int startOffset = myEditor.getDocument().getLineStartOffset(line);
final FoldRegion region = myEditor.getFoldingModel().getCollapsedRegionAtOffset(startOffset);
if (region != null) {
line = myEditor.getDocument().getLineNumber(region.getEndOffset());
if (line >= myEditor.getDocument().getLineCount()) return -1;
}
return line;
}
示例2: mouseMoved
import com.intellij.openapi.editor.ex.util.EditorUtil; //导入方法依赖的package包/类
@Override
public void mouseMoved(MouseEvent e) {
int line = EditorUtil.yPositionToLogicalLine(editor, e.getPoint());
if (line == lastGutterToolTipLine) {
return;
}
TooltipController controller = TooltipController.getInstance();
if (lastGutterToolTipLine != -1) {
controller.cancelTooltip(TOOLTIP_GROUP, e, true);
}
String toolTip = gutterContentProvider.getToolTip(line, editor);
setCursor(toolTip == null ? Cursor.getDefaultCursor() : Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
if (toolTip == null) {
lastGutterToolTipLine = -1;
controller.cancelTooltip(TOOLTIP_GROUP, e, false);
}
else {
lastGutterToolTipLine = line;
RelativePoint showPoint = new RelativePoint(this, e.getPoint());
controller.showTooltipByMouseMove(editor,
showPoint,
((EditorMarkupModel)editor.getMarkupModel()).getErrorStripTooltipRendererProvider().calcTooltipRenderer(toolTip),
false,
TOOLTIP_GROUP,
new HintHint(this, e.getPoint()).setAwtTooltip(true));
}
}
示例3: runMousePressedCommand
import com.intellij.openapi.editor.ex.util.EditorUtil; //导入方法依赖的package包/类
private void runMousePressedCommand(@NotNull final MouseEvent e) {
myLastMousePressedLocation = xyToLogicalPosition(e.getPoint());
myCaretStateBeforeLastPress = isToggleCaretEvent(e) ? myCaretModel.getCaretsAndSelections() : Collections.<CaretState>emptyList();
myCurrentDragIsSubstantial = false;
clearDraggedRange();
mySelectionTweaked = false;
myMousePressedEvent = e;
EditorMouseEvent event = new EditorMouseEvent(EditorImpl.this, e, getMouseEventArea(e));
myExpectedCaretOffset = logicalPositionToOffset(myLastMousePressedLocation);
try {
for (EditorMouseListener mouseListener : myMouseListeners) {
mouseListener.mousePressed(event);
}
}
finally {
myExpectedCaretOffset = -1;
}
if (event.getArea() == EditorMouseEventArea.LINE_MARKERS_AREA) {
myDragOnGutterSelectionStartLine = EditorUtil.yPositionToLogicalLine(EditorImpl.this, e);
}
// On some systems (for example on Linux) popup trigger is MOUSE_PRESSED event.
// But this trigger is always consumed by popup handler. In that case we have to
// also move caret.
if (event.isConsumed() && !(event.getMouseEvent().isPopupTrigger() || event.getArea() == EditorMouseEventArea.EDITING_AREA)) {
return;
}
if (myCommandProcessor != null) {
Runnable runnable = new Runnable() {
@Override
public void run() {
if (processMousePressed(e) && myProject != null && !myProject.isDefault()) {
IdeDocumentHistory.getInstance(myProject).includeCurrentCommandAsNavigation();
}
}
};
myCommandProcessor
.executeCommand(myProject, runnable, "", DocCommandGroupId.noneGroupId(getDocument()), UndoConfirmationPolicy.DEFAULT,
getDocument());
}
else {
processMousePressed(e);
}
}
示例4: getLineNumAtPoint
import com.intellij.openapi.editor.ex.util.EditorUtil; //导入方法依赖的package包/类
private int getLineNumAtPoint(final Point clickPoint) {
return EditorUtil.yPositionToLogicalLine(myEditor, clickPoint);
}