📄 regedit.js
字号:
/* client side js functions for registry editing Copyright Andrew Tridgell 2005 released under the GNU GPL Version 3 or later*//* callback from the key enumeration call*/function __folder_keys(fParent, list) { var i; if (fParent.working == 1) { fParent.working = 0; fParent.removeAll(); } for (i=0;i<list.length;i++) { var fChild; fChild = new QxTreeFolder(list[i]); fParent.add(fChild); fChild.binding = fParent.binding; if (fParent.reg_path == '\\') { fChild.reg_path = list[i]; } else { fChild.reg_path = fParent.reg_path + '\\' + list[i]; } fChild.working = 1; fChild.add(new QxTreeFolder('Working ...')); fChild.addEventListener("click", function() { var el = this; __folder_click(el); }); } fParent.setOpen(1);}/* callback from the key enumeration call*/function __folder_values(fParent, list) { var i; if (list.length == 0) { return; } if (fParent.working == 1) { fParent.working = 0; fParent.removeAll(); } for (i=0;i<list.length;i++) { var fChild; fChild = new QxTreeFile(list[i].name); fChild.parent = fParent; fChild.details = list[i]; fParent.add(fChild); } fParent.setOpen(1);}/* called when someone clicks on a folder*/function __folder_click(node) { if (!node.populated) { node.populated = true; server_call_url("/scripting/server/regedit.esp", 'enum_keys', function(list) { __folder_keys(node, list); }, node.binding, node.reg_path); server_call_url("/scripting/server/regedit.esp", 'enum_values', function(list) { __folder_values(node, list); }, node.binding, node.reg_path); }}/* return a registry tree for the given server */function __registry_tree(binding) { var tree = new QxTree("registry: " + binding); tree.binding = binding; tree.reg_path = "\\"; tree.populated = false; with(tree) { setBackgroundColor(255); setBorder(QxBorder.presets.inset); setOverflow("scroll"); setStyleProperty("padding", "2px"); setWidth("50%"); setHeight("90%"); setTop("10%"); } tree.addEventListener("click", function() { var el = this; __folder_click(el); }); return tree;}/* the table of values*/function __values_table(){ var headings = new Array("Name", "Type", "Size", "Value"); var table = document.createElement('table'); table.border = "1"; var body = document.createElement('tbody'); table.appendChild(body); var th = document.createElement('th'); for (var i=0;i<headings.length;i++) { var td = document.createElement('td'); td.appendChild(document.createTextNode(headings[i])); th.appendChild(td); } body.appendChild(th); return table;}/* create a registry editing widget and return it as a object*/function regedit_widget(binding) { var fieldSet = new QxFieldSet(); fieldSet.binding = binding; with(fieldSet) { setWidth("100%"); setHeight("100%"); }; var gl = new QxGridLayout("auto,auto,auto,auto,auto", "50%,50%"); gl.setEdge(0); gl.setCellPaddingTop(3); gl.setCellPaddingBottom(3); var t = __registry_tree(fieldSet.binding); function change_binding(e) { fieldSet.binding = e.getNewValue(); srv_printf("changed binding to %s\\n", fieldSet.binding); gl.remove(t); t = __registry_tree(fieldSet.binding); gl.add(t, { row : 2, col : 1 }); } var b = new QxTextField(fieldSet.binding); b.addEventListener("changeText", change_binding); var values = new __values_table(); gl.add(b, { row : 1, col : 1 }); gl.add(t, { row : 2, col : 1 });// gl.add(values, { row : 2, col : 2 }); fieldSet.add(gl); return fieldSet;};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -