CR fix - remove 'Node' from node selection function signatures
This commit is contained in:
parent
8cbe15aa1f
commit
fb85ffdd5b
|
@ -209,7 +209,7 @@ Constructs a new JSONEditor.
|
|||
```
|
||||
Only applicable when `mode` is 'code' or 'text'.
|
||||
|
||||
- `{function} onNodeSelectionChange`
|
||||
- `{function} onSelectionChange`
|
||||
|
||||
Set a callback function triggered when Nodes are selected in the JSONEditor.
|
||||
|
||||
|
@ -218,7 +218,7 @@ Constructs a new JSONEditor.
|
|||
/**
|
||||
* @param {Array<Node>} nodes selected nodes
|
||||
*/
|
||||
function onNodeSelectionChange(nodes) {
|
||||
function onSelectionChange(nodes) {
|
||||
...
|
||||
}
|
||||
```
|
||||
|
@ -368,7 +368,7 @@ Set text selection for a range, Only applicable for mode 'text' and 'code'.
|
|||
|
||||
Position for selection end
|
||||
|
||||
#### `JSONEditor.getNodeSelection()`
|
||||
#### `JSONEditor.getSelection()`
|
||||
|
||||
Get the current selected nodes, Only applicable for mode 'tree'.
|
||||
|
||||
|
@ -376,7 +376,7 @@ Get the current selected nodes, Only applicable for mode 'tree'.
|
|||
|
||||
- `{Array<Node>} nodes`
|
||||
|
||||
#### `JSONEditor.setNodeSelection(node1, node2)`
|
||||
#### `JSONEditor.setSelection(node1, node2)`
|
||||
|
||||
Set selection for a range of nodes, Only applicable for mode 'tree'.
|
||||
|
||||
|
|
|
@ -40,8 +40,8 @@
|
|||
editor.getTextSelection()
|
||||
editor.setTextSelection(startPos,endPos)
|
||||
// tree mode:
|
||||
editor.getNodeSelection()
|
||||
editor.setNodeSelection(Node1,Node2)
|
||||
editor.getSelection()
|
||||
editor.setSelection(Node1,Node2)
|
||||
</code>
|
||||
</p>
|
||||
|
||||
|
@ -91,7 +91,7 @@
|
|||
var textEl = document.getElementById('selectedText');
|
||||
textEl.innerHTML = text;
|
||||
},
|
||||
onNodeSelectionChange: function(nodes) {
|
||||
onSelectionChange: function(nodes) {
|
||||
var nodesEl = document.getElementById('selectedNodes');
|
||||
var nodesCountEl = document.getElementById('selectedCount');
|
||||
nodesCountEl.innerHTML = nodes.length + ' nodes selected';
|
||||
|
|
|
@ -214,7 +214,7 @@ History.prototype.undo = function () {
|
|||
if (action && action.undo) {
|
||||
action.undo(obj.params);
|
||||
if (obj.params.oldSelection) {
|
||||
this.editor.setSelection(obj.params.oldSelection);
|
||||
this.editor.setDomSelection(obj.params.oldSelection);
|
||||
}
|
||||
}
|
||||
else {
|
||||
|
@ -241,7 +241,7 @@ History.prototype.redo = function () {
|
|||
if (action && action.redo) {
|
||||
action.redo(obj.params);
|
||||
if (obj.params.newSelection) {
|
||||
this.editor.setSelection(obj.params.newSelection);
|
||||
this.editor.setDomSelection(obj.params.newSelection);
|
||||
}
|
||||
}
|
||||
else {
|
||||
|
|
|
@ -44,10 +44,10 @@ var util = require('./util');
|
|||
* {boolean} sortObjectKeys If true, object keys are
|
||||
* sorted before display.
|
||||
* false by default.
|
||||
* {function} onNodeSelectionChange Callback method,
|
||||
* triggered on node selection change
|
||||
* Only applicable for modes
|
||||
* 'tree', 'view', and 'form'
|
||||
* {function} onSelectionChange Callback method,
|
||||
* triggered on node selection change
|
||||
* Only applicable for modes
|
||||
* 'tree', 'view', and 'form'
|
||||
* {function} onTextSelectionChange Callback method,
|
||||
* triggered on text selection change
|
||||
* Only applicable for modes
|
||||
|
@ -89,7 +89,7 @@ function JSONEditor (container, options, json) {
|
|||
var VALID_OPTIONS = [
|
||||
'ajv', 'schema', 'schemaRefs','templates',
|
||||
'ace', 'theme','autocomplete',
|
||||
'onChange', 'onEditable', 'onError', 'onModeChange', 'onNodeSelectionChange', 'onTextSelectionChange',
|
||||
'onChange', 'onEditable', 'onError', 'onModeChange', 'onSelectionChange', 'onTextSelectionChange',
|
||||
'escapeUnicode', 'history', 'search', 'mode', 'modes', 'name', 'indentation',
|
||||
'sortObjectKeys', 'navigationBar', 'statusBar'
|
||||
];
|
||||
|
|
|
@ -1164,13 +1164,13 @@ Node.prototype._getDomValue = function(silent) {
|
|||
Node.prototype._onChangeValue = function () {
|
||||
// get current selection, then override the range such that we can select
|
||||
// the added/removed text on undo/redo
|
||||
var oldSelection = this.editor.getSelection();
|
||||
var oldSelection = this.editor.getDomSelection();
|
||||
if (oldSelection.range) {
|
||||
var undoDiff = util.textDiff(String(this.value), String(this.previousValue));
|
||||
oldSelection.range.startOffset = undoDiff.start;
|
||||
oldSelection.range.endOffset = undoDiff.end;
|
||||
}
|
||||
var newSelection = this.editor.getSelection();
|
||||
var newSelection = this.editor.getDomSelection();
|
||||
if (newSelection.range) {
|
||||
var redoDiff = util.textDiff(String(this.previousValue), String(this.value));
|
||||
newSelection.range.startOffset = redoDiff.start;
|
||||
|
@ -1195,13 +1195,13 @@ Node.prototype._onChangeValue = function () {
|
|||
Node.prototype._onChangeField = function () {
|
||||
// get current selection, then override the range such that we can select
|
||||
// the added/removed text on undo/redo
|
||||
var oldSelection = this.editor.getSelection();
|
||||
var oldSelection = this.editor.getDomSelection();
|
||||
if (oldSelection.range) {
|
||||
var undoDiff = util.textDiff(this.field, this.previousField);
|
||||
oldSelection.range.startOffset = undoDiff.start;
|
||||
oldSelection.range.endOffset = undoDiff.end;
|
||||
}
|
||||
var newSelection = this.editor.getSelection();
|
||||
var newSelection = this.editor.getDomSelection();
|
||||
if (newSelection.range) {
|
||||
var redoDiff = util.textDiff(this.previousField, this.field);
|
||||
newSelection.range.startOffset = redoDiff.start;
|
||||
|
@ -1573,7 +1573,7 @@ Node.onDragStart = function (nodes, event) {
|
|||
editor.highlighter.lock();
|
||||
editor.drag = {
|
||||
oldCursor: document.body.style.cursor,
|
||||
oldSelection: editor.getSelection(),
|
||||
oldSelection: editor.getDomSelection(),
|
||||
oldBeforeNode: beforeNode,
|
||||
mouseX: event.pageX,
|
||||
offsetY: offsetY,
|
||||
|
@ -1771,7 +1771,7 @@ Node.onDragEnd = function (nodes, event) {
|
|||
var params = {
|
||||
nodes: nodes,
|
||||
oldSelection: editor.drag.oldSelection,
|
||||
newSelection: editor.getSelection(),
|
||||
newSelection: editor.getDomSelection(),
|
||||
oldBeforeNode: editor.drag.oldBeforeNode,
|
||||
newBeforeNode: beforeNode
|
||||
};
|
||||
|
@ -2323,7 +2323,7 @@ Node.prototype.onEvent = function (event) {
|
|||
case 'keydown':
|
||||
case 'mousedown':
|
||||
// TODO: cleanup
|
||||
this.editor.selection = this.editor.getSelection();
|
||||
this.editor.selection = this.editor.getDomSelection();
|
||||
break;
|
||||
|
||||
case 'click':
|
||||
|
@ -2374,7 +2374,7 @@ Node.prototype.onEvent = function (event) {
|
|||
|
||||
case 'keydown':
|
||||
case 'mousedown':
|
||||
this.editor.selection = this.editor.getSelection();
|
||||
this.editor.selection = this.editor.getDomSelection();
|
||||
break;
|
||||
|
||||
case 'keyup':
|
||||
|
@ -2549,7 +2549,7 @@ Node.prototype.onKeyDown = function (event) {
|
|||
if (nextNode && nextNode instanceof AppendNode &&
|
||||
!(lastNode.parent.childs.length == 1) &&
|
||||
nextNode2 && nextNode2.parent) {
|
||||
oldSelection = this.editor.getSelection();
|
||||
oldSelection = this.editor.getDomSelection();
|
||||
oldBeforeNode = lastNode.nextSibling();
|
||||
|
||||
selectedNodes.forEach(function (node) {
|
||||
|
@ -2562,7 +2562,7 @@ Node.prototype.onKeyDown = function (event) {
|
|||
oldBeforeNode: oldBeforeNode,
|
||||
newBeforeNode: nextNode2,
|
||||
oldSelection: oldSelection,
|
||||
newSelection: this.editor.getSelection()
|
||||
newSelection: this.editor.getDomSelection()
|
||||
});
|
||||
}
|
||||
}
|
||||
|
@ -2596,7 +2596,7 @@ Node.prototype.onKeyDown = function (event) {
|
|||
// find the previous node
|
||||
prevNode = firstNode._previousNode();
|
||||
if (prevNode && prevNode.parent) {
|
||||
oldSelection = this.editor.getSelection();
|
||||
oldSelection = this.editor.getDomSelection();
|
||||
oldBeforeNode = lastNode.nextSibling();
|
||||
|
||||
selectedNodes.forEach(function (node) {
|
||||
|
@ -2609,7 +2609,7 @@ Node.prototype.onKeyDown = function (event) {
|
|||
oldBeforeNode: oldBeforeNode,
|
||||
newBeforeNode: prevNode,
|
||||
oldSelection: oldSelection,
|
||||
newSelection: this.editor.getSelection()
|
||||
newSelection: this.editor.getDomSelection()
|
||||
});
|
||||
}
|
||||
handled = true;
|
||||
|
@ -2632,7 +2632,7 @@ Node.prototype.onKeyDown = function (event) {
|
|||
if (prevNode && prevNode.parent &&
|
||||
(prevNode instanceof AppendNode)
|
||||
&& !prevNode.isVisible()) {
|
||||
oldSelection = this.editor.getSelection();
|
||||
oldSelection = this.editor.getDomSelection();
|
||||
oldBeforeNode = lastNode.nextSibling();
|
||||
|
||||
selectedNodes.forEach(function (node) {
|
||||
|
@ -2645,7 +2645,7 @@ Node.prototype.onKeyDown = function (event) {
|
|||
oldBeforeNode: oldBeforeNode,
|
||||
newBeforeNode: prevNode,
|
||||
oldSelection: oldSelection,
|
||||
newSelection: this.editor.getSelection()
|
||||
newSelection: this.editor.getDomSelection()
|
||||
});
|
||||
}
|
||||
}
|
||||
|
@ -2685,7 +2685,7 @@ Node.prototype.onKeyDown = function (event) {
|
|||
}
|
||||
var nextNode2 = nextNode && (nextNode._nextNode() || nextNode.parent.append);
|
||||
if (nextNode2 && nextNode2.parent) {
|
||||
oldSelection = this.editor.getSelection();
|
||||
oldSelection = this.editor.getDomSelection();
|
||||
oldBeforeNode = lastNode.nextSibling();
|
||||
|
||||
selectedNodes.forEach(function (node) {
|
||||
|
@ -2698,7 +2698,7 @@ Node.prototype.onKeyDown = function (event) {
|
|||
oldBeforeNode: oldBeforeNode,
|
||||
newBeforeNode: nextNode2,
|
||||
oldSelection: oldSelection,
|
||||
newSelection: this.editor.getSelection()
|
||||
newSelection: this.editor.getDomSelection()
|
||||
});
|
||||
}
|
||||
handled = true;
|
||||
|
@ -2756,9 +2756,9 @@ Node.onRemove = function(nodes) {
|
|||
editor.highlighter.unhighlight();
|
||||
|
||||
// adjust the focus
|
||||
var oldSelection = editor.getSelection();
|
||||
var oldSelection = editor.getDomSelection();
|
||||
Node.blurNodes(nodes);
|
||||
var newSelection = editor.getSelection();
|
||||
var newSelection = editor.getDomSelection();
|
||||
|
||||
// remove the nodes
|
||||
nodes.forEach(function (node) {
|
||||
|
@ -2795,7 +2795,7 @@ Node.onDuplicate = function(nodes) {
|
|||
editor.deselect(editor.multiselection.nodes);
|
||||
|
||||
// duplicate the nodes
|
||||
var oldSelection = editor.getSelection();
|
||||
var oldSelection = editor.getDomSelection();
|
||||
var afterNode = lastNode;
|
||||
var clones = nodes.map(function (node) {
|
||||
var clone = node.clone();
|
||||
|
@ -2811,7 +2811,7 @@ Node.onDuplicate = function(nodes) {
|
|||
else {
|
||||
editor.select(clones);
|
||||
}
|
||||
var newSelection = editor.getSelection();
|
||||
var newSelection = editor.getDomSelection();
|
||||
|
||||
editor._onAction('duplicateNodes', {
|
||||
afterNode: lastNode,
|
||||
|
@ -2831,7 +2831,7 @@ Node.onDuplicate = function(nodes) {
|
|||
* @private
|
||||
*/
|
||||
Node.prototype._onInsertBefore = function (field, value, type) {
|
||||
var oldSelection = this.editor.getSelection();
|
||||
var oldSelection = this.editor.getDomSelection();
|
||||
|
||||
var newNode = new Node(this.editor, {
|
||||
field: (field != undefined) ? field : '',
|
||||
|
@ -2842,7 +2842,7 @@ Node.prototype._onInsertBefore = function (field, value, type) {
|
|||
this.parent.insertBefore(newNode, this);
|
||||
this.editor.highlighter.unhighlight();
|
||||
newNode.focus('field');
|
||||
var newSelection = this.editor.getSelection();
|
||||
var newSelection = this.editor.getDomSelection();
|
||||
|
||||
this.editor._onAction('insertBeforeNodes', {
|
||||
nodes: [newNode],
|
||||
|
@ -2861,7 +2861,7 @@ Node.prototype._onInsertBefore = function (field, value, type) {
|
|||
* @private
|
||||
*/
|
||||
Node.prototype._onInsertAfter = function (field, value, type) {
|
||||
var oldSelection = this.editor.getSelection();
|
||||
var oldSelection = this.editor.getDomSelection();
|
||||
|
||||
var newNode = new Node(this.editor, {
|
||||
field: (field != undefined) ? field : '',
|
||||
|
@ -2872,7 +2872,7 @@ Node.prototype._onInsertAfter = function (field, value, type) {
|
|||
this.parent.insertAfter(newNode, this);
|
||||
this.editor.highlighter.unhighlight();
|
||||
newNode.focus('field');
|
||||
var newSelection = this.editor.getSelection();
|
||||
var newSelection = this.editor.getDomSelection();
|
||||
|
||||
this.editor._onAction('insertAfterNodes', {
|
||||
nodes: [newNode],
|
||||
|
@ -2891,7 +2891,7 @@ Node.prototype._onInsertAfter = function (field, value, type) {
|
|||
* @private
|
||||
*/
|
||||
Node.prototype._onAppend = function (field, value, type) {
|
||||
var oldSelection = this.editor.getSelection();
|
||||
var oldSelection = this.editor.getDomSelection();
|
||||
|
||||
var newNode = new Node(this.editor, {
|
||||
field: (field != undefined) ? field : '',
|
||||
|
@ -2902,7 +2902,7 @@ Node.prototype._onAppend = function (field, value, type) {
|
|||
this.parent.appendChild(newNode);
|
||||
this.editor.highlighter.unhighlight();
|
||||
newNode.focus('field');
|
||||
var newSelection = this.editor.getSelection();
|
||||
var newSelection = this.editor.getDomSelection();
|
||||
|
||||
this.editor._onAction('appendNodes', {
|
||||
nodes: [newNode],
|
||||
|
@ -2920,9 +2920,9 @@ Node.prototype._onAppend = function (field, value, type) {
|
|||
Node.prototype._onChangeType = function (newType) {
|
||||
var oldType = this.type;
|
||||
if (newType != oldType) {
|
||||
var oldSelection = this.editor.getSelection();
|
||||
var oldSelection = this.editor.getDomSelection();
|
||||
this.changeType(newType);
|
||||
var newSelection = this.editor.getSelection();
|
||||
var newSelection = this.editor.getDomSelection();
|
||||
|
||||
this.editor._onAction('changeType', {
|
||||
node: this,
|
||||
|
|
|
@ -116,7 +116,7 @@ treemode._setOptions = function (options) {
|
|||
schemaRefs: null,
|
||||
autocomplete: null,
|
||||
navigationBar : true,
|
||||
onNodeSelectionChange: null
|
||||
onSelectionChange: null
|
||||
};
|
||||
|
||||
// copy all options
|
||||
|
@ -134,8 +134,8 @@ treemode._setOptions = function (options) {
|
|||
// create a debounced validate function
|
||||
this._debouncedValidate = util.debounce(this.validate.bind(this), this.DEBOUNCE_INTERVAL);
|
||||
|
||||
if (options.onNodeSelectionChange) {
|
||||
this.onNodeSelectionChange(options.onNodeSelectionChange);
|
||||
if (options.onSelectionChange) {
|
||||
this.onSelectionChange(options.onSelectionChange);
|
||||
}
|
||||
};
|
||||
|
||||
|
@ -543,7 +543,7 @@ treemode.stopAutoScroll = function () {
|
|||
* {Node[]} nodes Nodes in case of multi selection
|
||||
* {Number} scrollTop Scroll position
|
||||
*/
|
||||
treemode.setSelection = function (selection) {
|
||||
treemode.setDomSelection = function (selection) {
|
||||
if (!selection) {
|
||||
return;
|
||||
}
|
||||
|
@ -573,7 +573,7 @@ treemode.setSelection = function (selection) {
|
|||
* {Node[]} nodes Nodes in case of multi selection
|
||||
* {Number} scrollTop Scroll position
|
||||
*/
|
||||
treemode.getSelection = function () {
|
||||
treemode.getDomSelection = function () {
|
||||
var range = util.getSelectionOffset();
|
||||
if (range && range.container.nodeName !== 'DIV') { // filter on (editable) divs)
|
||||
range = null;
|
||||
|
@ -1342,7 +1342,7 @@ treemode.showContextMenu = function (anchor, onClose) {
|
|||
* Get current selected nodes
|
||||
* @return {Array<Node>}
|
||||
*/
|
||||
treemode.getNodeSelection = function () {
|
||||
treemode.getSelection = function () {
|
||||
return this.multiselection.nodes || [];
|
||||
};
|
||||
|
||||
|
@ -1353,7 +1353,7 @@ treemode.getNodeSelection = function () {
|
|||
* @callback selectionCallback
|
||||
* @param {Array<Node>} nodes selected nodes
|
||||
*/
|
||||
treemode.onNodeSelectionChange = function (callback) {
|
||||
treemode.onSelectionChange = function (callback) {
|
||||
if (typeof callback === 'function') {
|
||||
this._selectionChangedHandler = util.debounce(callback, this.DEBOUNCE_INTERVAL);
|
||||
}
|
||||
|
@ -1367,7 +1367,12 @@ treemode.onNodeSelectionChange = function (callback) {
|
|||
* @param {Node} [node1] node for selection start
|
||||
* @param {Node} [node2] node for selection end
|
||||
*/
|
||||
treemode.setNodeSelection = function (node1, node2) {
|
||||
treemode.setSelection = function (node1, node2) {
|
||||
// check for old usage
|
||||
if (node1.dom && node1.range) {
|
||||
console.warn('setSelection/getSelection usage for text selection is depracated and should not be used, see documantaion for supported selection options');
|
||||
this.setDomSelection(node1);
|
||||
}
|
||||
var nodes = [];
|
||||
if (node1 instanceof Node) {
|
||||
if (node2 instanceof Node && node2 !== node1) {
|
||||
|
|
Loading…
Reference in New Issue