MCPcopy
hub / github.com/jagenjo/webglstudio.js / updateLineGutter

Function updateLineGutter

editor/js/extra/codemirror/codemirror.js:971–1009  ·  view source on GitHub ↗
(cm, lineView, lineN, dims)

Source from the content-addressed store, hash-verified

969 }
970
971 function updateLineGutter(cm, lineView, lineN, dims) {
972 if (lineView.gutter) {
973 lineView.node.removeChild(lineView.gutter);
974 lineView.gutter = null;
975 }
976 if (lineView.gutterBackground) {
977 lineView.node.removeChild(lineView.gutterBackground);
978 lineView.gutterBackground = null;
979 }
980 if (lineView.line.gutterClass) {
981 var wrap = ensureLineWrapped(lineView);
982 lineView.gutterBackground = elt("div", null, "CodeMirror-gutter-background " + lineView.line.gutterClass,
983 "left: " + (cm.options.fixedGutter ? dims.fixedPos : -dims.gutterTotalWidth) +
984 "px; width: " + dims.gutterTotalWidth + "px");
985 wrap.insertBefore(lineView.gutterBackground, lineView.text);
986 }
987 var markers = lineView.line.gutterMarkers;
988 if (cm.options.lineNumbers || markers) {
989 var wrap = ensureLineWrapped(lineView);
990 var gutterWrap = lineView.gutter = elt("div", null, "CodeMirror-gutter-wrapper", "left: " +
991 (cm.options.fixedGutter ? dims.fixedPos : -dims.gutterTotalWidth) + "px");
992 cm.display.input.setUneditable(gutterWrap);
993 wrap.insertBefore(gutterWrap, lineView.text);
994 if (lineView.line.gutterClass)
995 gutterWrap.className += " " + lineView.line.gutterClass;
996 if (cm.options.lineNumbers && (!markers || !markers["CodeMirror-linenumbers"]))
997 lineView.lineNumber = gutterWrap.appendChild(
998 elt("div", lineNumberFor(cm.options, lineN),
999 "CodeMirror-linenumber CodeMirror-gutter-elt",
1000 "left: " + dims.gutterLeft["CodeMirror-linenumbers"] + "px; width: "
1001 + cm.display.lineNumInnerWidth + "px"));
1002 if (markers) for (var k = 0; k < cm.options.gutters.length; ++k) {
1003 var id = cm.options.gutters[k], found = markers.hasOwnProperty(id) && markers[id];
1004 if (found)
1005 gutterWrap.appendChild(elt("div", [found], "CodeMirror-gutter-elt", "left: " +
1006 dims.gutterLeft[id] + "px; width: " + dims.gutterWidth[id] + "px"));
1007 }
1008 }
1009 }
1010
1011 function updateLineWidgets(cm, lineView, dims) {
1012 if (lineView.alignable) lineView.alignable = null;

Callers 2

updateLineForChangesFunction · 0.85
buildLineElementFunction · 0.85

Calls 3

ensureLineWrappedFunction · 0.85
eltFunction · 0.85
lineNumberForFunction · 0.85

Tested by

no test coverage detected