Skip to content
Snippets Groups Projects
Commit a1af8e1a authored by Andreas Bayha's avatar Andreas Bayha
Browse files

YELLOW

Issue-ref: 4299
Issue-Url: af3#4299



Signed-off-by: default avatarAndreas Bayha <bayha@fortiss.org>
parent 3d26d413
No related branches found
No related tags found
1 merge request!2034299: Add comment handling to source editor (for highlighting)
Pipeline #38578 passed
Pipeline: maven-releng

#38579

    ......@@ -2,6 +2,6 @@ AdvancedTreeViewerEditorBase.java 9d9eded6848ee78991d1416592d1136efd71d2b7 GREEN
    FormsEditorBase.java b113501b98ffffcac362ca9f474ad02a42bde186 GREEN
    GEFEditorBase.java e668f596f45f07215994cbbd3929a9438331718f GREEN
    SourceEditorBase.java 47e69e2e6788b9897339c384cd03f9a22755037c GREEN
    SourceEditorConfigurationBase.java edb5eaa20d3f6c060600422b841c668b5efccabf YELLOW
    SourceEditorConfigurationBase.java f7cf7c51d7a5ef5ab997ad842e7255995aae9a60 YELLOW
    SourceEditorUndoRedo.java 08127a8e0afb4f9c2f4c21294ca3220282c25bf0 GREEN
    TreeViewerEditorBase.java 1c59689ff57c4f3cc180d85f13021fc03461ecb0 GREEN
    ......@@ -22,7 +22,6 @@ import static org.eclipse.wb.swt.SWTResourceManager.getColor;
    import java.util.ArrayList;
    import java.util.List;
    import org.apache.commons.lang3.ArrayUtils;
    import org.eclipse.emf.ecore.EObject;
    import org.eclipse.jface.text.presentation.IPresentationReconciler;
    import org.eclipse.jface.text.presentation.PresentationReconciler;
    ......@@ -114,24 +113,26 @@ public abstract class SourceEditorConfigurationBase<T extends EObject>
    /*
    * FIXME (AB): Wouldn't it be cleaner and more efficient, to collect all rules in one List
    * that can be converted to an array at once?
    *
    * Answer (SeBe): Yes, but you cannot directly cast the whole list to the more generic
    * IRule. Either, I would need to go through all lists and cast each WordRule and each
    * PatternRule separately to an IRule before I could merge them in one List, or I would need
    * to turn every initial List directly into an array and then concatenate these arrays. Both
    * needs more effort and computation power than the current solution.
    * I would therefore suggest to leave it like it is now.
    *
    * Answer (AB): Isn't this equivalent? This way, there is no cast necessary.
    */
    List<IRule> allRules = new ArrayList<IRule>();
    // word rules
    List<WordRule> wordRules = getCommonRules();
    wordRules.add(getRuleSpecificToEditor());
    allRules.addAll(getCommonRules());
    allRules.add(getRuleSpecificToEditor());
    // pattern rules
    List<PatternRule> patternRules = new ArrayList<>();
    patternRules.add(getCommentRuleSpecificToEditor());
    allRules.add(getCommentRuleSpecificToEditor());
    IRule[] wordRuleArray = wordRules.toArray(new IRule[0]);
    IRule[] patternRuleArray = patternRules.toArray(new IRule[0]);
    IRule[] rules = ArrayUtils.addAll(wordRuleArray, patternRuleArray);
    IRule[] rules = allRules.toArray(new IRule[0]);
    RuleBasedScanner scanner = new RuleBasedScanner();
    scanner.setRules(rules);
    ......
    0% Loading or .
    You are about to add 0 people to the discussion. Proceed with caution.
    Finish editing this message first!
    Please register or to comment