1
0
Fork 0
mirror of https://github.com/kkapsner/CanvasBlocker synced 2025-07-15 14:09:36 +02:00

Show only settings that are useful within the given settings set.

This commit is contained in:
kkapsner 2017-07-08 22:43:20 +02:00
parent 3cefcfe702
commit 1eddf48d20
5 changed files with 132 additions and 43 deletions

View file

@ -3,18 +3,6 @@ table.className = "settings";
document.body.appendChild(table);
[
{
"name": "whiteList",
"title": "White list",
"type": "string",
"value": ""
},
{
"name": "blackList",
"title": "Black list",
"type": "string",
"value": ""
},
{
"name": "blockMode",
"title": "block mode",
@ -63,11 +51,32 @@ document.body.appendChild(table);
}
]
},
{
"name": "whiteList",
"title": "White list",
"type": "string",
"value": "",
"displayDependencies": {
"blockMode": ["blockReadout", "fakeReadout", "fakeInput", "askReadout", "block", "ask"]
}
},
{
"name": "blackList",
"title": "Black list",
"type": "string",
"value": "",
"displayDependencies": {
"blockMode": ["blockReadout", "fakeReadout", "fakeInput", "askReadout", "ask", "allow"]
}
},
{
"name": "maxFakeSize",
"title": "Maximal fake size",
"type": "integer",
"value": 0
"value": 0,
"displayDependencies": {
"blockMode": ["fakeReadout", "fakeInput"]
}
},
{
"name": "rng",
@ -83,66 +92,119 @@ document.body.appendChild(table);
"value": "persistent",
"label": "persistent"
}
]
],
"displayDependencies": {
"blockMode": ["fakeReadout", "fakeInput"]
}
},
{
"name": "storePersistentRnd",
"title": "Store persistent data",
"type": "bool",
"value": false
"value": false,
"displayDependencies": {
"blockMode": ["fakeReadout", "fakeInput"],
"rng": ["persistent"]
}
},
{
"name": "clearPersistentRnd",
"title": "Clear persistent random storage",
"type": "control",
"label": "Clear"
"label": "Clear",
"displayDependencies": {
"blockMode": ["fakeReadout", "fakeInput"],
"rng": ["persistent"]
}
},
{
"name": "askOnlyOnce",
"title": "Ask only once",
"type": "bool",
"value": true
"value": true,
"displayDependencies": {
"blockMode": ["askReadout", "ask"]
}
},
{
"name": "showNotifications",
"title": "Show notifications",
"type": "bool",
"value": true
"value": true,
"displayDependencies": {
"blockMode": ["fakeReadout", "fakeInput"]
}
},
{
"name": "storeImageForInspection",
"title": "Store image for inspection",
"type": "bool",
"value": false,
"displayDependencies": {
"blockMode": ["fakeReadout", "fakeInput"],
"showNotifications": [true]
}
},
// {
// "name": "notificationDisplayTime",
// "title": "notification display time",
// "type": "integer",
// "value": 30
// "value": 30,
// "displayDependencies": {
// "blockMode": ["fakeReadout", "fakeInput"]
// }
// },
{
"name": "ignoreList",
"title": "Ignore list",
"type": "string",
"value": ""
"value": "",
"displayDependencies": {
"blockMode": ["fakeReadout", "fakeInput"],
"showNotifications": [true]
}
},
{
"name": "showCallingFile",
"title": "Display calling file",
"type": "bool",
"value": false
"value": false,
"displayDependencies": {
"blockMode": ["askReadout", "ask"]
}
},
{
"name": "showCompleteCallingStack",
"title": "Display complete calling stack",
"type": "bool",
"value": false
"value": false,
"displayDependencies": [
{
"blockMode": ["fakeReadout", "fakeInput"],
"showNotifications": [true]
},
{
"blockMode": ["askReadout", "ask"]
}
]
},{
"name": "enableStackList",
"title": "Use file specific scoped white list",
"type": "bool",
"value": false
"value": false,
"displayDependencies": {
"blockMode": ["blockReadout", "fakeReadout", "fakeInput", "askReadout", "block", "ask"]
}
},
{
"name": "stackList",
"title": "File specific white list",
"type": "string",
"value": ""
"value": "",
"displayDependencies": {
"enableStackList": [true]
}
},
{
"name": "showReleaseNotes",
@ -151,7 +213,7 @@ document.body.appendChild(table);
"label": "Show"
}
].forEach(function(pref){
var html = '<td><span class="title">__MSG_' + pref.name + '_title__</span><div class="description">__MSG_' + pref.name + '_description__</div></td><td>';
var html = '<td><div class="content"><span class="title">__MSG_' + pref.name + '_title__</span><div class="description">__MSG_' + pref.name + '_description__</div></div></td><td><div class="content">';
var inputAttributes = ' data-storage-name="' + pref.name + '" data-storage-type="' + pref.type + '" class="setting"'
switch (pref.type){
case "integer":
@ -181,8 +243,9 @@ document.body.appendChild(table);
default:
console.log("Unknown preference type: " + pref.type);
}
html += "</td>";
html += "</div></td>";
var tr = document.createElement("tr");
tr.setting = pref;
tr.className = "settingRow";
tr.innerHTML = html;
console.log(html);