diff --git a/mindplot/src/main/javascript/Designer.js b/mindplot/src/main/javascript/Designer.js index 6bcb7ad3..433e76e2 100644 --- a/mindplot/src/main/javascript/Designer.js +++ b/mindplot/src/main/javascript/Designer.js @@ -153,7 +153,7 @@ mindplot.Designer = new Class({ // Hide topic during draw ... draggedTopic.setBranchVisibility(false); var parentNode = draggedTopic.getParent(); - dragTopic.updateDraggedTopic(workspace); + dragTopic.applyChanges(workspace); // Make all node visible ... diff --git a/mindplot/src/main/javascript/DragTopic.js b/mindplot/src/main/javascript/DragTopic.js index 595a9d32..8b4906a4 100644 --- a/mindplot/src/main/javascript/DragTopic.js +++ b/mindplot/src/main/javascript/DragTopic.js @@ -121,7 +121,7 @@ mindplot.DragTopic = new Class({ return true; }, - updateDraggedTopic : function(workspace) { + applyChanges : function(workspace) { $assert(workspace, 'workspace can not be null'); var dragPivot = this._getDragPivot(); @@ -190,7 +190,7 @@ mindplot.DragTopic.init = function(workspace) { $assert(workspace, "workspace can not be null"); var pivot = mindplot.DragTopic.__getDragPivot(); workspace.appendChild(pivot); -} +}; mindplot.DragTopic.__getDragPivot = function() { var result = mindplot.DragTopic._dragPivot; diff --git a/mindplot/src/main/javascript/DragTopicPositioner.js b/mindplot/src/main/javascript/DragTopicPositioner.js index 8842b42f..f5716c6f 100644 --- a/mindplot/src/main/javascript/DragTopicPositioner.js +++ b/mindplot/src/main/javascript/DragTopicPositioner.js @@ -37,13 +37,14 @@ mindplot.DragTopicPositioner = new Class({ // Position topic in the board if (dragTopic.isConnected()) { var targetTopic = dragTopic.getConnectedToTopic(); - var topicBoard = this._layoutManager.getTopicBoardForTopic(targetTopic); - topicBoard.positionateDragTopic(dragTopic); + // @todo: Hack ... + var position = designer._eventBussDispatcher._layoutManager.predict(targetTopic.getId(),dragTopicPosition); + console.log(position); } }, _checkDragTopicConnection : function(dragTopic) { - var topics = this._topics; + var topics = this._designerModel.getTopics(); // Must be disconnected from their current connection ?. var mainTopicToMainTopicConnection = this._lookUpForMainTopicToMainTopicConnection(dragTopic); @@ -82,7 +83,7 @@ mindplot.DragTopicPositioner = new Class({ }, _lookUpForMainTopicToMainTopicConnection : function(dragTopic) { - var topics = this._topics; + var topics = this._designerModel.getTopics(); var result = null; var draggedNode = dragTopic.getDraggedTopic(); var distance = null; diff --git a/mindplot/src/main/javascript/nlayout/BalancedSorter.js b/mindplot/src/main/javascript/nlayout/BalancedSorter.js index 40e243e3..dcb440d1 100644 --- a/mindplot/src/main/javascript/nlayout/BalancedSorter.js +++ b/mindplot/src/main/javascript/nlayout/BalancedSorter.js @@ -70,13 +70,14 @@ mindplot.nlayout.BalancedSorter = new Class({ if (position.y > cpos.y) { result = [child.getOrder(),{x:cpos.x,y:cpos.y + child.getSize().height}]; } + + // Ok, no overlap. Suggest a new order. + if (result) { + var last = children.getLast(); + result = [last.getOrder() + 1,{x:cpos.x,y:cpos.y - (mindplot.nlayout.BalancedSorter.INTERNODE_VERTICAL_PADDING * 4)}]; + } }); - // Ok, no overlap. Suggest a new order. - if (result) { - var last = children.getLast(); - result = [last.getOrder() + 1,{x:cpos.x,y:cpos.y - (mindplot.nlayout.BalancedSorter.INTERNODE_VERTICAL_PADDING * 4)}]; - } return result; }, diff --git a/mindplot/src/main/javascript/nlayout/LayoutManager.js b/mindplot/src/main/javascript/nlayout/LayoutManager.js index 522bca9d..aa444430 100644 --- a/mindplot/src/main/javascript/nlayout/LayoutManager.js +++ b/mindplot/src/main/javascript/nlayout/LayoutManager.js @@ -34,8 +34,6 @@ mindplot.nlayout.LayoutManager = new Class({ var node = this._treeSet.find(id); node.setSize(size); - - // Todo: This must be completed ... }, updateShrinkState: function(id, value) { @@ -86,9 +84,8 @@ mindplot.nlayout.LayoutManager = new Class({ }, - predict: function(parentId, childId, position) { + predict: function(parentId, position) { $assert($defined(parentId), "parentId can not be null"); - $assert($defined(childId), "childId can not be null"); $assert(position, "childId can not be null"); var parent = this._treeSet.find(parentId); diff --git a/mindplot/src/main/javascript/nlayout/OriginalLayout.js b/mindplot/src/main/javascript/nlayout/OriginalLayout.js index b3c84443..e4bf91e3 100644 --- a/mindplot/src/main/javascript/nlayout/OriginalLayout.js +++ b/mindplot/src/main/javascript/nlayout/OriginalLayout.js @@ -100,11 +100,7 @@ mindplot.nlayout.OriginalLayout = new Class({ var parentX = parentPosition.x; var parentY = parentPosition.y; - var verticalOffset = (node.getSize().height / 2); - - //TODO(gb): Not sure why verticalOffset is added again, since it is considered in the sorter. var newPos = {x:parentX + offset.x,y:parentY + offset.y}; -// var newPos = {x:parentX + offset.x,y:parentY + offset.y + verticalOffset}; this._treeSet.updateBranchPosition(child, newPos); }.bind(this));