Package com.google.collide.shared.document

Examples of com.google.collide.shared.document.LineFinder


  public void testSetTextBetweenAnchors() {
    AnchorType bottomType = AnchorType.create(EditorTests.class, "bottom");
    AnchorType topType = AnchorType.create(EditorTests.class, "top");

    Document doc = Document.createFromString("qwerty\nasdfgh\nzxcvbn\n");
    LineFinder lineFinder = doc.getLineFinder();
    AnchorManager anchorManager = doc.getAnchorManager();
    LineInfo lineInfo = lineFinder.findLine(1);

    Editor editor = Editor.create(new MockAppContext());
    editor.setDocument(doc);

    Anchor topAnchor = anchorManager.createAnchor(topType, lineInfo.line(), lineInfo.number(),
View Full Code Here


    PathUtil path = new PathUtil("test.css");
    DocumentParser documentParser = createDocumentParser(path);
    Autoindenter autoindenter = Autoindenter.create(documentParser, editor);

    LineFinder lineFinder = editor.getDocument().getLineFinder();
    editor.getSelection().setSelection(
        lineFinder.findLine(line1), column1, lineFinder.findLine(line2), column2);

    final JsonArray<Scheduler.ScheduledCommand> scheduled = JsonCollections.createArray();

    TestSchedulerImpl.AngryScheduler scheduler = new TestSchedulerImpl.AngryScheduler() {
      @Override
View Full Code Here

        }
        analyzer.onLinesDeleted(deletedLines);
      }
    });

    LineFinder lineFinder = document.getLineFinder();
    LineInfo line2 = lineFinder.findLine(2);
    LineInfo line4 = lineFinder.findLine(4);
    String textToDelete = LineUtils.getText(line2.line(), 0, line4.line(), 0);
    helper.editor.getEditorDocumentMutator().deleteText(line2.line(), 2, 0, textToDelete.length());
    remover.remove();

    JsonArray<IncrementalScheduler.Task> parseRequests = helper.parseScheduler.requests;
View Full Code Here

  static void checkAutoindenter(int line1, int column1, int line2, int column2,
      final SignalEvent trigger, String expected, boolean allowScheduling,
      DocumentParser documentParser, Document document, final Editor editor) {
    Autoindenter autoindenter = Autoindenter.create(documentParser, editor);

    LineFinder lineFinder = document.getLineFinder();
    editor.getSelection().setSelection(
        lineFinder.findLine(line1), column1,
        lineFinder.findLine(line2), column2);

    Runnable triggerClicker = new Runnable() {
      @Override
      public void run() {
        editor.getInput().processSignalEvent(trigger);
View Full Code Here

    MockAutocompleterEnvironment helper = new MockAutocompleterEnvironment();
    helper.setup(new PathUtil("test.js"), text, line1, column1, false);
    final Editor editor = helper.editor;
    editor.getInput().getActionExecutor().addDelegate(
        LanguageHelperResolver.getHelper(SyntaxType.JS).getActionExecutor());
    LineFinder lineFinder = editor.getDocument().getLineFinder();
    editor.getSelection().setSelection(
        lineFinder.findLine(line1), column1, lineFinder.findLine(line2), column2);

    final JsonArray<Scheduler.ScheduledCommand> scheduled = JsonCollections.createArray();

    TestSchedulerImpl.AngryScheduler scheduler = new TestSchedulerImpl.AngryScheduler() {
      @Override
View Full Code Here

  private void detachHandlers() {
    removerManager.remove();
  }

  private void moveViewportToLineNumber(int topLineNumber, int numLinesToShow) {
    LineFinder lineFinder = buffer.getDocument().getLineFinder();

    LineInfo newTop = lineFinder.findLine(getTop(), topLineNumber);

    int targetBottomLineNumber = newTop.number() + numLinesToShow - 1;
    LineInfo newBottom =
        lineFinder.findLine(getBottom(),
            Math.min(document.getLastLineNumber(), targetBottomLineNumber));

    setRange(newTop, newBottom);
  }
View Full Code Here

    if (selection == null) {
      return;
    }

    Document document = editor.getDocument();
    LineFinder lineFinder = document.getLineFinder();
   
    LineInfo baseLineInfo =
        lineFinder.findLine(Math.min(selection.baseLineNumber, document.getLastLineNumber()));
    int baseColumn = LineUtils.rubberbandColumn(baseLineInfo.line(), selection.baseColumn);

    final LineInfo cursorLineInfo =
      lineFinder.findLine(Math.min(selection.cursorLineNumber, document.getLastLineNumber()));
    int cursorColumn = LineUtils.rubberbandColumn(cursorLineInfo.line(), selection.cursorColumn);
   
    editor.getSelection().setSelection(baseLineInfo, baseColumn, cursorLineInfo, cursorColumn);   

    // Defer to match editor's initially deferred scrolling
View Full Code Here

    }
    editor.getRenderer().renderChanges();
  }

  private void getLinesOfErrorsInViewport(JsonArray<CodeError> errors, JsonArray<Line> lines) {
    LineFinder lineFinder = editor.getDocument().getLineFinder();
    int topLineNumber = editor.getViewport().getTopLineNumber();
    int bottomLineNumber = editor.getViewport().getBottomLineNumber();
    for (int i = 0; i < errors.size(); i++) {
      CodeError error = errors.get(i);
      for (int j = error.getErrorStart().getLineNumber();
           j <= error.getErrorEnd().getLineNumber(); j++) {
        if (j >= topLineNumber && j <= bottomLineNumber) {
          lines.add(lineFinder.findLine(j).line());
        }
      }
    }
  }
View Full Code Here

    // At least root node is listed
    Preconditions.checkState(!allNodes.isEmpty());

    AnchorManager anchorManager = target.getAnchorManager();

    LineFinder lineFinder = target.getLineFinder();
    LineInfo cursor = lineFinder.findLine(0);
    int lastLineNumber = target.getLastLineNumber();

    for (int i = 0, size = allNodes.size(); i < size; ++i) {
      OutlineNode node = allNodes.get(i);
      int lineNumber = node.getLineNumber();
      if (lineNumber > lastLineNumber) {
        break;
      }

      // TODO: we should create method that reuses cursor object!
      cursor = lineFinder.findLine(cursor, lineNumber);

      maybeBindNode(node, cursor.line(), anchorManager);
    }
  }
View Full Code Here

      // TODO: check that item is still there,
      //               see comments in OutlineNodeBuilder.
      Line line = anchor.getLine();
      if (line.getText().contains(data.getName())) {
        editor.getFocusManager().focus();
        LineFinder lineFinder = editor.getDocument().getLineFinder();
        editor.scrollTo(lineFinder.findLine(line).number(), anchor.getColumn());
        return;
      }
    }
    // If we didn't find what we were looking for, then:
    // 1) render node as disabled
View Full Code Here

TOP

Related Classes of com.google.collide.shared.document.LineFinder

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.