Path: blob/master/javascript/ui_settings_hints.js
3055 views
// various hints and extra info for the settings tab12var settingsHintsSetup = false;34onOptionsChanged(function() {5if (settingsHintsSetup) return;6settingsHintsSetup = true;78gradioApp().querySelectorAll('#settings [id^=setting_]').forEach(function(div) {9var name = div.id.substr(8);10var commentBefore = opts._comments_before[name];11var commentAfter = opts._comments_after[name];1213if (!commentBefore && !commentAfter) return;1415var span = null;16if (div.classList.contains('gradio-checkbox')) span = div.querySelector('label span');17else if (div.classList.contains('gradio-checkboxgroup')) span = div.querySelector('span').firstChild;18else if (div.classList.contains('gradio-radio')) span = div.querySelector('span').firstChild;19else span = div.querySelector('label span').firstChild;2021if (!span) return;2223if (commentBefore) {24var comment = document.createElement('DIV');25comment.className = 'settings-comment';26comment.innerHTML = commentBefore;27span.parentElement.insertBefore(document.createTextNode('\xa0'), span);28span.parentElement.insertBefore(comment, span);29span.parentElement.insertBefore(document.createTextNode('\xa0'), span);30}31if (commentAfter) {32comment = document.createElement('DIV');33comment.className = 'settings-comment';34comment.innerHTML = commentAfter;35span.parentElement.insertBefore(comment, span.nextSibling);36span.parentElement.insertBefore(document.createTextNode('\xa0'), span.nextSibling);37}38});39});4041function settingsHintsShowQuicksettings() {42requestGet("./internal/quicksettings-hint", {}, function(data) {43var table = document.createElement('table');44table.className = 'popup-table';4546data.forEach(function(obj) {47var tr = document.createElement('tr');48var td = document.createElement('td');49td.textContent = obj.name;50tr.appendChild(td);5152td = document.createElement('td');53td.textContent = obj.label;54tr.appendChild(td);5556table.appendChild(tr);57});5859popup(table);60});61}626364