|
Server : LiteSpeed System : Linux srv104790275 5.15.0-161-generic #171-Ubuntu SMP Sat Oct 11 08:17:01 UTC 2025 x86_64 User : dewac4139 ( 1077) PHP Version : 8.0.30 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, Directory : /usr/local/CyberCP/public/static/filemanager/src/display/ |
Upload File : |
import { elt, removeChildren } from "../util/dom.js"
import { regChange } from "./view_tracking.js"
import { alignHorizontally } from "./line_numbers.js"
import { updateGutterSpace } from "./update_display.js"
export function getGutters(gutters, lineNumbers) {
let result = [], sawLineNumbers = false
for (let i = 0; i < gutters.length; i++) {
let name = gutters[i], style = null
if (typeof name != "string") { style = name.style; name = name.className }
if (name == "CodeMirror-linenumbers") {
if (!lineNumbers) continue
else sawLineNumbers = true
}
result.push({className: name, style})
}
if (lineNumbers && !sawLineNumbers) result.push({className: "CodeMirror-linenumbers", style: null})
return result
}
// Rebuild the gutter elements, ensure the margin to the left of the
// code matches their width.
export function renderGutters(display) {
let gutters = display.gutters, specs = display.gutterSpecs
removeChildren(gutters)
display.lineGutter = null
for (let i = 0; i < specs.length; ++i) {
let {className, style} = specs[i]
let gElt = gutters.appendChild(elt("div", null, "CodeMirror-gutter " + className))
if (style) gElt.style.cssText = style
if (className == "CodeMirror-linenumbers") {
display.lineGutter = gElt
gElt.style.width = (display.lineNumWidth || 1) + "px"
}
}
gutters.style.display = specs.length ? "" : "none"
updateGutterSpace(display)
}
export function updateGutters(cm) {
renderGutters(cm.display)
regChange(cm)
alignHorizontally(cm)
}