Examples of ITokenScanner


Examples of at.bestsolution.efxclipse.text.jface.rules.ITokenScanner

    ITypedRegion[] regions = partitioner.computePartitioning(0, document.getLength());
   
    List<StyleRange> styleRanges = new ArrayList<>();
   
    for( ITypedRegion r : regions ) {
      ITokenScanner scanner = tokenScanners.get(r.getType());
//      System.err.println("REGION: " + System.identityHashCode(r) + " => " + r.getOffset() + "/" + r.getLength());
      if( scanner != null ) {
        int lastStart= r.getOffset();
        int length= 0;
        boolean firstToken= true;
        TextAttribute lastAttribute = null;
       
        scanner.setRange(document, r.getOffset(), r.getLength());
       
        while( true ) {
          IToken token= scanner.nextToken();
          if (token.isEOF())
            break;
         
          TextAttribute attribute = getTokenTextAttribute(token);
          if (lastAttribute != null && lastAttribute.equals(attribute)) {
            length += scanner.getTokenLength();
            firstToken= false;
          } else {
            if (!firstToken) {
//              try {
//                System.err.println("TOKEN: " + lastStart + "/" + length + " => " + document.get(lastStart, length));
//              } catch (BadLocationException e) {
//                // TODO Auto-generated catch block
//                e.printStackTrace();
//              }
              styleRanges.add(createStyleRange(lastStart, length, lastAttribute));
            }
             
            firstToken= false;
            lastAttribute= attribute;
            lastStart= scanner.getTokenOffset();
            length= scanner.getTokenLength();
          }
        }
       
//        try {
//          System.err.println("TOKEN: " + lastStart + "/" + length + " => " + document.get(lastStart, length));
View Full Code Here

Examples of org.eclipse.jface.text.rules.ITokenScanner

    public IPresentationReconciler getPresentationReconciler(
            final ISourceViewer sourceViewer) {
        final PresentationReconciler reconciler = new PresentationReconciler();
        DefaultDamagerRepairer dr;

        final ITokenScanner scan = new ErlCodeScanner(colorManager);
        dr = new ErlDamagerRepairer(scan);
        reconciler.setDamager(dr, IoRequestKind.INPUT.name());
        reconciler.setRepairer(dr, IoRequestKind.INPUT.name());

        final ITokenScanner scan3 = new ConsoleOutputScanner(colorManager);
        dr = new ErlDamagerRepairer(scan3);
        reconciler.setDamager(dr, IoRequestKind.OUTPUT.name());
        reconciler.setRepairer(dr, IoRequestKind.OUTPUT.name());

        reconciler.setDamager(dr, IoRequestKind.PROMPT.name());
        reconciler.setRepairer(dr, IoRequestKind.PROMPT.name());

        reconciler.setDamager(dr, IoRequestKind.STDOUT.name());
        reconciler.setRepairer(dr, IoRequestKind.STDOUT.name());

        reconciler.setDamager(dr, IoRequestKind.STDERR.name());
        reconciler.setRepairer(dr, IoRequestKind.STDERR.name());

        reconciler.setDamager(dr, IoRequestKind.HEADER.name());
        reconciler.setRepairer(dr, IoRequestKind.HEADER.name());

        // this is for the input field
        final ITokenScanner scan2 = new ErlCodeScanner(colorManager);
        dr = new ErlDamagerRepairer(scan2);
        reconciler.setDamager(dr, IDocument.DEFAULT_CONTENT_TYPE);
        reconciler.setRepairer(dr, IDocument.DEFAULT_CONTENT_TYPE);

        return reconciler;
View Full Code Here

Examples of org.eclipse.jface.text.rules.ITokenScanner

        final PresentationReconciler reconciler = new ErlangPresentationReconciler();
        reconciler
                .setDocumentPartitioning(getConfiguredDocumentPartitioning(sourceViewer));
        DefaultDamagerRepairer dr = new ErlDamagerRepairer(codeScanner);

        final ITokenScanner scan2 = new ErlCodeScanner(colorManager);
        dr = new ErlDamagerRepairer(scan2);
        reconciler.setDamager(dr, IDocument.DEFAULT_CONTENT_TYPE);
        reconciler.setRepairer(dr, IDocument.DEFAULT_CONTENT_TYPE);

        dr = new ErlDamagerRepairer(commentScanner);
View Full Code Here

Examples of org.eclipse.jface.text.rules.ITokenScanner

    reconciler.setRepairer(tagDR, ATGPartitions.INLINE_CODE_START);
    reconciler.setDamager(tagDR, ATGPartitions.INLINE_CODE_END);
    reconciler.setRepairer(tagDR, ATGPartitions.INLINE_CODE_END);

    // inline code
    ITokenScanner javaCodeScanner = getJavaCodeScanner();
    fEditor.fJavaCodeScanner = (JavaCodeScanner)javaCodeScanner;
    dr = new DefaultDamagerRepairer(javaCodeScanner);
    reconciler.setDamager(dr, ATGPartitions.IMPORTS);
    reconciler.setRepairer(dr, ATGPartitions.IMPORTS);
View Full Code Here

Examples of org.eclipse.jface.text.rules.ITokenScanner

    return new StyledTextRepresentation(rtfText);
  }

  private String getStyledText(String plainText, EMFTextRepresentation emftextRep, IPlainText2StyledTextMapping mapping){
    String rtfText = "";
    ITokenScanner scanner = emftextRep.getTokenScanner();
    IToken token = scanner.nextToken();
    mapping.init();
    while (token != null && !token.isEOF()) {
      int start = scanner.getTokenOffset();
      int end = start + scanner.getTokenLength();
      String tokText = emftextRep.getSourceText().substring(start, end);
      Object ob = token.getData();
      mapping.nextString(tokText);
      if(ob != null){
        if(ob instanceof TextAttribute){
          TextAttribute attr = (TextAttribute) ob;
          Color color = attr.getForeground();
          if(color != null){
            mapping.setForeground(color.getRed(), color.getGreen(), color.getBlue());
          }
          int style = attr.getStyle();
          if(SWT.BOLD == (style & SWT.BOLD)){
            mapping.setBold();
          }
          if(SWT.ITALIC == (style & SWT.ITALIC)){
            mapping.setItalic();
          }
          if(TextAttribute.STRIKETHROUGH == (style & TextAttribute.STRIKETHROUGH)){
            mapping.setStrikeThrough();
          }
          if(TextAttribute.UNDERLINE == (style & TextAttribute.UNDERLINE)){
            mapping.setUnderline();
          }
        }
      }
      token = scanner.nextToken();
    }
    mapping.finish();
    rtfText = mapping.getStyledText();
    if(rtfText == null || "".equals(rtfText)){
      rtfText = plainText;
View Full Code Here

Examples of org.eclipse.jface.text.rules.ITokenScanner

   *
   * @param partitionType the target language partition type
   * @return see above
   */
  private ITokenScanner getColoringScanner(String partitionType) {
    ITokenScanner result = coloringScanners.get(partitionType);
    if (result == null) {
      ensureInitialized();
      result = targetLanguageSupport.createColoringScanner(partitionType);
      coloringScanners.put(partitionType, result);
    }
View Full Code Here

Examples of org.eclipse.jface.text.rules.ITokenScanner

    ensureInitialized();
    IToken token = partitionScanner.nextToken();
    if (token.isEOF()) {
      return partitionScanner;
    }
    ITokenScanner result = TargetColoringScanner.this
        .getColoringScanner((String) token.getData());
    result.setRange(TargetColoringScanner.this.document,
        partitionScanner.getTokenOffset(),
        partitionScanner.getTokenLength());
    return result;
  }
View Full Code Here

Examples of org.eclipse.jface.text.rules.ITokenScanner

        }
        ITypedRegion region = doc.getPartition(index);
        PartitionType partitionType = PartitionType.fastValueOf(region
            .getType());
        if (partitionType != null) {
          ITokenScanner scanner = itemParsers.get(partitionType);
          if (scanner != null) {
            if (newMode != this.syntaxMode
                && scanner instanceof SyntaxModeListener) {
              ((SyntaxModeListener) scanner)
                  .syntaxModeChanged(newMode);
            }
            scanner.setRange(doc, region.getOffset(),
                region.getLength());
            for (IToken token = scanner.nextToken(); !token.isEOF(); token = scanner
                .nextToken()) {
              if (canceled()) {
                return null;
              }
              if (monitor != null) {
                monitor.worked(index);
              }
              Object itemType = token.getData();
              if (!token.isUndefined() && !token.isWhitespace()
                  && itemType instanceof String) {
                TypedRegion itemRegion = new TypedRegion(
                    scanner.getTokenOffset(),
                    scanner.getTokenLength(),
                    (String) itemType);
                regions.add(itemRegion);
              }
            }
          } else {
View Full Code Here

Examples of org.eclipse.jface.text.rules.ITokenScanner

  public IPresentationReconciler getPresentationReconciler(ISourceViewer sourceViewer) {
    PresentationReconciler reconciler = new PresentationReconciler();

    PartitionType[] partitionTypes = PartitionType.values();
    for (PartitionType partitionType : partitionTypes) {
      ITokenScanner scanner = partitionType.createColoringTokenizer(editor);
      if (scanner != null) {
        DefaultDamagerRepairer dr = new DefaultDamagerRepairer(scanner);
        reconciler.setDamager(dr, partitionType.name());
        reconciler.setRepairer(dr, partitionType.name());
      }
View Full Code Here

Examples of org.eclipse.jface.text.rules.ITokenScanner

    private StyleRange createRange(Tokens tokens) {
        return tokens.styleRange(colorCache.get(COLOR_KEY));
    }

    private void colorOtherMatches(IDocument document, Tokens tokens, String original) {
        ITokenScanner tokenScanner = tokens.getTokenScanner();
        tokenScanner.setRange(document, 0, document.getLength());
        IToken token = tokenScanner.nextToken();
        while (!token.isEOF()) {
            if (token.getData() == null) {
                String tokenContents = tokens.tokenContents();
                if (tokenContents.equals(original)) {
                    StyleRange range = tokens.styleRange(colorCache.get(OTHER_MATCHES_COLOR_KEY));
                    editor.sourceViewer().getTextWidget().setStyleRange(range);
                }
            }
            token = tokenScanner.nextToken();
        }
    }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. 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.