in src/org/jetbrains/r/hints/parameterInfo/RParameterInfoHandler.kt [80:110]
override fun updateUI(argumentList: RParameterInfoArgumentList, context: ParameterInfoUIContext) {
var highlightOffsetStart = -1
var highlightOffsetEnd = 0
val isDisabled = argumentList.isDisabled
var text = buildString {
val (names, defaultValues, permutation, currentArgumentIndex) = argumentList
for (i in permutation.indices) {
if (i != 0) append(", ")
if (!isDisabled && currentArgumentIndex == i) highlightOffsetStart = length
val argumentInd = permutation[i]
if (argumentInd != i) append("[")
append(names[argumentInd])
defaultValues[argumentInd]?.let {
val renderedValue = when {
it.length <= MAX_DEFAULT_VALUE_LEN -> it
it.startsWith("\"") -> "\"$DOTS\""
it.startsWith("'") -> "'$DOTS'"
else -> DOTS
}
append(" = $renderedValue")
}
if (argumentInd != i) append("]")
if (!isDisabled && currentArgumentIndex == i) highlightOffsetEnd = length
}
}
if (text.isEmpty()) text = RBundle.message("parameter.info.no.parameters")
context.setupUIComponentPresentation(text, highlightOffsetStart, highlightOffsetEnd, isDisabled,
false, false, context.getDefaultParameterColor())
}