// SPDX-License-Identifier: Unlicense
// If text contains key, make it stand out; otherwise, append [key] to text.
function addShortcut(text, key) {
if (!key)
return text
else if (text.indexOf(key) < 0)
return `${text} [${key}]`
else
return text.replace(new RegExp('\(' + key + '\)'), '$1')
}
// Set alpha value for color.
function alphize(color, alpha) {
return Qt.hsla(color.hslHue, color.hslSaturation, color.hslLightness, alpha)
}
// Return the last event in list with property not greater than value.
function find(list, property, value) {
var low = 0
var high = list.count - 1
while (low <= high) {
var mid = Math.floor((low + high) / 2)
if (list.get(mid)[property] <= value)
low = mid + 1
else
high = mid - 1
}
return low
}