MCPcopy Create free account
hub / github.com/witheve/Eve / updateLineClasses

Function updateLineClasses

src/ide/spans.ts:32–53  ·  view source on GitHub ↗
(start:number, end:number, editor:Editor, {lineBackgroundClass, lineTextClass}:LineStyle)

Source from the content-addressed store, hash-verified

30interface LineStyle { lineBackgroundClass?: string, lineTextClass?: string }
31
32function updateLineClasses(start:number, end:number, editor:Editor, {lineBackgroundClass, lineTextClass}:LineStyle) {
33 let cm = editor.cm;
34 if(start === end) {
35 let line = start
36 let info = cm.lineInfo(line);
37 if(lineBackgroundClass && (!info || !info.bgClass || info.bgClass.indexOf(lineBackgroundClass) === -1)) {
38 cm.addLineClass(line, "background", lineBackgroundClass);
39 }
40 if(lineTextClass && (!info || !info.textClass || info.textClass.indexOf(lineTextClass) === -1)) {
41 cm.addLineClass(line, "text", lineTextClass);
42 }
43 }
44 for(let line = start; line < end; line++) {
45 let info = cm.lineInfo(line);
46 if(lineBackgroundClass && (!info || !info.bgClass || info.bgClass.indexOf(lineBackgroundClass) === -1)) {
47 cm.addLineClass(line, "background", lineBackgroundClass);
48 }
49 if(lineTextClass && (!info || !info.textClass || info.textClass.indexOf(lineTextClass) === -1)) {
50 cm.addLineClass(line, "text", lineTextClass);
51 }
52 }
53}
54
55function clearLineClasses(start:number, end:number, editor:Editor, {lineBackgroundClass, lineTextClass}:LineStyle) {
56 let cm = editor.cm;

Callers 6

refreshMethod · 0.70
refreshMethod · 0.70
refreshMethod · 0.70
refreshMethod · 0.70
refreshMethod · 0.70
refreshMethod · 0.70

Calls 2

lineInfoMethod · 0.80
addLineClassMethod · 0.80

Tested by

no test coverage detected