Package org.eclipse.jface.text.link

Examples of org.eclipse.jface.text.link.LinkedPosition


        index--;
      index++;

      LinkedModeModel model= LinkedModeModel.getModel(document, offset);
      if (model != null) {
        LinkedPosition linkedPosition= model.findPosition(new LinkedPosition(document, offset, 0));
        if (linkedPosition != null) {
          int linkedPositionEnd= linkedPosition.getOffset() + linkedPosition.getLength();
          int lineOffset;
          try {
            lineOffset= document.getLineInformationOfOffset(offset).getOffset();
            if (offset != linkedPositionEnd && linkedPositionEnd - lineOffset < index)
              index= linkedPositionEnd - lineOffset;
View Full Code Here


      while (index < length && Character.isWhitespace(line.charAt(index)))
        index++;

      LinkedModeModel model= LinkedModeModel.getModel(document, offset);
      if (model != null) {
        LinkedPosition linkedPosition= model.findPosition(new LinkedPosition(document, offset, 0));
        if (linkedPosition != null) {
          int linkedPositionOffset= linkedPosition.getOffset();
          int lineOffset;
          try {
            lineOffset= document.getLineInformationOfOffset(offset).getOffset();
            if (offset != linkedPositionOffset && index < linkedPositionOffset - lineOffset)
              index= linkedPositionOffset - lineOffset;
View Full Code Here

                return true; //it was handled (without the link)
            }

            if (prefs.getAutoLink()) {
                LinkedPositionGroup group = new LinkedPositionGroup();
                group.addPosition(new LinkedPosition(doc, linkOffset, linkLen, LinkedPositionGroup.NO_STOP));

                LinkedModeModel model = new LinkedModeModel();
                model.addGroup(group);
                model.forceInstall();
View Full Code Here

            BracketLevel level = new BracketLevel();
            fBracketLevelStack.push(level);

            LinkedPositionGroup group = new LinkedPositionGroup();
            group.addPosition(new LinkedPosition(document, offset + 1, 0, LinkedPositionGroup.NO_STOP));

            LinkedModeModel model = new LinkedModeModel();
            model.addLinkingListener(this);
            model.addGroup(group);
            model.forceInstall();
View Full Code Here

        LinkedPositionGroup group= new LinkedPositionGroup();

        int[] offsets= variable.getOffsets();
        int length= variable.getLength();

        LinkedPosition first;
        {
          String[] values= variable.getValues();
          ICompletionProposal[] proposals= new ICompletionProposal[values.length];
          for (int j= 0; j < values.length; j++) {
            ensurePositionCategoryInstalled(document, model);
            Position pos= new Position(offsets[0] + start, length);
            document.addPosition(getCategory(), pos);
            proposals[j]= new PositionBasedCompletionProposal(values[j], pos, length);
          }

          if (proposals.length > 1)
            first= new ProposalPosition(document, offsets[0] + start, length, proposals);
          else
            first= new LinkedPosition(document, offsets[0] + start, length);
        }

        for (int j= 0; j != offsets.length; j++)
          if (j == 0)
            group.addPosition(first);
          else
            group.addPosition(new LinkedPosition(document, offsets[j] + start, length));

        model.addGroup(group);
        hasPositions= true;
      }
View Full Code Here

        Position position = (Position) iter.next();
        if (firstPosition == -1) {
          if (position.overlapsWith(offset, 0)) {
            firstPosition = i;
            group
                .addPosition(new LinkedPosition(document, position.getOffset(), position.getLength(),
                    j++));
          }
        } else {
          group.addPosition(new LinkedPosition(document, position.getOffset(), position.getLength(), j++));
        }
        i++;
      }

      for (i = 0; i < firstPosition; i++) {
        Position position = (Position) positions.get(i);
        group.addPosition(new LinkedPosition(document, position.getOffset(), position.getLength(), j++));
      }
    } catch (BadLocationException be) {
      be.printStackTrace();
      // CFMLPlugin.log(be);
    }
View Full Code Here

        Position position = (Position) iter.next();
        if (firstPosition == -1) {
          if (position.overlapsWith(offset, 0)) {
            firstPosition = i;
            group
                .addPosition(new LinkedPosition(document, position.getOffset(), position.getLength(),
                    j++));
          }
        } else {
          group.addPosition(new LinkedPosition(document, position.getOffset(), position.getLength(), j++));
        }
        i++;
      }

      for (i = 0; i < firstPosition; i++) {
        Position position = (Position) positions.get(i);
        group.addPosition(new LinkedPosition(document, position.getOffset(), position.getLength(), j++));
      }
    } catch (BadLocationException be) {
      be.printStackTrace();
      // CFMLPlugin.log(be);
    }
View Full Code Here

    this.project = project;
  }

  @Override
  public void applyQuickFix(final IDocument document) {
    final LinkedPosition position = new LinkedPosition(document, getOffset(), getLength());
    LinkedPositionGroup group = new LinkedPositionGroup();

    LinkedModeModel model = new LinkedModeModel();
    try {
      group.addPosition(position);
      model.addGroup(group);
      model.forceInstall();

      ITextViewer viewer = getViewer(document);
      if (viewer == null) {
        return;
      }

      Point originalSelection = viewer.getSelectedRange();
      LinkedModeUI ui = new LinkedModeUI(model, viewer);
      ui.setExitPosition(viewer, getOffset(), 0, Integer.MAX_VALUE);

      model.addLinkingListener(new ILinkedModeListener() {

        public void left(LinkedModeModel model, int flags) {
          if ((flags & ILinkedModeListener.UPDATE_CARET) > 0) {
            try {
              String newName = position.getContent();
              Shell shell = PlatformUI.getWorkbench().getDisplay().getActiveShell();
              doRename(newName, shell);
            }
            catch (BadLocationException e) {
            }
View Full Code Here

          int nodeOffset = elementImpl.getStartEndOffset() - 1;

          LinkedPositionGroup group = new LinkedPositionGroup();

          try {
            group.addPosition(new LinkedPosition(document, nodeOffset, 0));
            linkModel.addGroup(group);
            hasPositions = true;
          }
          catch (BadLocationException e) {
            StatusHandler.log(new Status(IStatus.ERROR, Activator.PLUGIN_ID,
View Full Code Here

      startPos = startOffset + importOffset + methodStr.length();
      methodStr.append("List<");
      methodStr.append(domainClass.getSimpleName());
      methodStr.append(">");
      length = methodStr.length();
      group.addPosition(new LinkedPosition(document, startPos, length));
      groups.add(group);

      methodStr.append(" ");

      group = new LinkedPositionGroup();
      startPos = startOffset + importOffset + methodStr.length();
      String methodName = getMethodName(propertyName);
      methodStr.append(methodName);
      length = methodName.length();
      group.addPosition(new LinkedPosition(document, startPos, length));
      groups.add(group);

      methodStr.append("(");

      group = new LinkedPositionGroup();
      startPos = startOffset + importOffset + methodStr.length();
      String paramTypeName = propertyClass.getSimpleName();
      length = paramTypeName.length();
      methodStr.append(paramTypeName);
      group.addPosition(new LinkedPosition(document, startPos, length));
      groups.add(group);

      methodStr.append(" ");

      group = new LinkedPositionGroup();
      startPos = startOffset + importOffset + methodStr.length();
      String paramName = propertyName.toLowerCase();
      length = paramName.length();
      methodStr.append(paramName);
      group.addPosition(new LinkedPosition(document, startPos, length));
      groups.add(group);

      methodStr.append(");");

      document.replace(startOffset + importOffset, endOffset - startOffset, methodStr.toString());
View Full Code Here

TOP

Related Classes of org.eclipse.jface.text.link.LinkedPosition

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.