mirror of
https://bitbucket.org/wisemapping/wisemapping-open-source.git
synced 2024-11-25 15:37:56 +01:00
fixing connection lines and rollbacking unnecesary changes
This commit is contained in:
parent
85804b74a4
commit
fa58c683c0
@ -29,29 +29,9 @@ mindplot.CentralTopic = function(model)
|
||||
objects.extend(mindplot.CentralTopic, mindplot.Topic);
|
||||
|
||||
|
||||
mindplot.CentralTopic.prototype.workoutIncomingConnectionPoint = function(sourcePosition, onBoundingBox)
|
||||
mindplot.CentralTopic.prototype.workoutIncomingConnectionPoint = function(sourcePosition)
|
||||
{
|
||||
if(!core.Utils.isDefined(onBoundingBox)){
|
||||
onBoundingBox=false;
|
||||
}
|
||||
var pos = this.getPosition();
|
||||
var size = this.getSize();
|
||||
var isAtRight = mindplot.util.Shape.isAtRight(sourcePosition, pos);
|
||||
var result = null;
|
||||
if(onBoundingBox){
|
||||
result = new core.Point();
|
||||
if(isAtRight){
|
||||
console.log("incomming at right");
|
||||
result.x = pos.x - (size.width/2)-20;
|
||||
result.y = pos.y;
|
||||
} else {
|
||||
result.x = pos.x;
|
||||
result.y = pos.y;
|
||||
}
|
||||
}else{
|
||||
result = pos;
|
||||
}
|
||||
return result;
|
||||
return this.getPosition();
|
||||
};
|
||||
|
||||
mindplot.CentralTopic.prototype.getTopicType = function()
|
||||
|
@ -92,8 +92,8 @@ mindplot.ConnectionLine.prototype.redraw = function()
|
||||
sPos = sourceTopic.workoutOutgoingConnectionPoint(targetPosition, false);
|
||||
tPos = targetTopic.workoutIncomingConnectionPoint(sourcePosition, false);
|
||||
|
||||
line2d.setFrom(sPos.x, sPos.y);
|
||||
line2d.setTo(tPos.x, tPos.y);
|
||||
line2d.setFrom(tPos.x, tPos.y);
|
||||
line2d.setTo(sPos.x, sPos.y);
|
||||
|
||||
line2d.moveToBack();
|
||||
|
||||
|
@ -1,22 +1,22 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*
|
||||
* $Id: file 64488 2006-03-10 17:32:09Z paulo $
|
||||
*/
|
||||
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*
|
||||
* $Id: file 64488 2006-03-10 17:32:09Z paulo $
|
||||
*/
|
||||
|
||||
mindplot.FixedDistanceBoard = function(defaultHeight, topic)
|
||||
{
|
||||
this._topic = topic;
|
||||
@ -74,7 +74,7 @@ mindplot.FixedDistanceBoard.prototype.updateReferencePoint = function()
|
||||
{
|
||||
var entries = this._entries;
|
||||
var parentTopic = this.getTopic();
|
||||
var parentPosition = parentTopic.workoutIncomingConnectionPoint(parentTopic);
|
||||
var parentPosition = parentTopic.workoutIncomingConnectionPoint(parentTopic.getPosition());
|
||||
var referencePoint = this.getReferencePoint();
|
||||
var yOffset = parentPosition.y - referencePoint.y;
|
||||
|
||||
|
@ -201,18 +201,13 @@ mindplot.MainTopic.prototype.setPosition = function(point)
|
||||
topicBoard.updateChildrenPosition(this);
|
||||
};
|
||||
|
||||
mindplot.MainTopic.prototype.workoutIncomingConnectionPoint = function(sourcePosition, onBoundingBox)
|
||||
mindplot.MainTopic.prototype.workoutIncomingConnectionPoint = function(sourcePosition)
|
||||
{
|
||||
if(!core.Utils.isDefined(onBoundingBox)){
|
||||
onBoundingBox=false;
|
||||
}
|
||||
|
||||
core.assert(sourcePosition, 'sourcePoint can not be null');
|
||||
var pos = this.getPosition();
|
||||
var size = this.getSize();
|
||||
|
||||
var isAtRight = mindplot.util.Shape.isAtRight(sourcePosition, pos);
|
||||
|
||||
var result = mindplot.util.Shape.calculateRectConnectionPoint(pos, size, isAtRight);
|
||||
if (this.getShapeType() == mindplot.NodeModel.SHAPE_TYPE_LINE)
|
||||
{
|
||||
@ -228,17 +223,55 @@ mindplot.MainTopic.prototype.workoutIncomingConnectionPoint = function(sourcePos
|
||||
{
|
||||
result.x = result.x - offset;
|
||||
}
|
||||
if(onBoundingBox){
|
||||
if(isAtRight){
|
||||
result.x -= 10;
|
||||
} else{
|
||||
result.x += 10;
|
||||
}
|
||||
}
|
||||
return result;
|
||||
|
||||
};
|
||||
|
||||
mindplot.MainTopic.prototype.workoutOutgoingConnectionPoint = function(targetPosition)
|
||||
{
|
||||
core.assert(targetPosition, 'targetPoint can not be null');
|
||||
var pos = this.getPosition();
|
||||
var size = this.getSize();
|
||||
|
||||
var isAtRight = mindplot.util.Shape.isAtRight(targetPosition, pos);
|
||||
var result;
|
||||
if (this.getShapeType() == mindplot.NodeModel.SHAPE_TYPE_LINE)
|
||||
{
|
||||
if (!this.isConnectedToCentralTopic())
|
||||
{
|
||||
result = new core.Point();
|
||||
if (!isAtRight)
|
||||
{
|
||||
result.x = pos.x - (size.width / 2);
|
||||
} else
|
||||
{
|
||||
result.x = pos.x + (size.width / 2);
|
||||
}
|
||||
result.y = pos.y + (size.height / 2);
|
||||
} else
|
||||
{
|
||||
// In this case, connetion line is not used as shape figure.
|
||||
result = mindplot.util.Shape.calculateRectConnectionPoint(pos, size, isAtRight, true);
|
||||
result.y = pos.y + (size.height / 2);
|
||||
|
||||
// Correction factor ...
|
||||
if (!isAtRight)
|
||||
{
|
||||
result.x = result.x + 2;
|
||||
} else
|
||||
{
|
||||
result.x = result.x - 2;
|
||||
}
|
||||
|
||||
}
|
||||
} else
|
||||
{
|
||||
result = mindplot.util.Shape.calculateRectConnectionPoint(pos, size, isAtRight, true);
|
||||
}
|
||||
return result;
|
||||
};
|
||||
|
||||
|
||||
mindplot.MainTopic.prototype.isConnectedToCentralTopic = function()
|
||||
{
|
||||
var model = this.getModel();
|
||||
|
@ -1291,63 +1291,3 @@ mindplot.Topic.prototype.updateNode = function()
|
||||
textShape.setTextSize(sizeWidth, sizeHeight);
|
||||
}
|
||||
};
|
||||
|
||||
mindplot.Topic.prototype.workoutOutgoingConnectionPoint = function(targetPosition, onBoundingBox)
|
||||
{
|
||||
if(!core.Utils.isDefined(onBoundingBox)){
|
||||
onBoundingBox=false;
|
||||
}
|
||||
|
||||
core.assert(targetPosition, 'targetPoint can not be null');
|
||||
var pos = this.getPosition();
|
||||
var size = this.getSize();
|
||||
|
||||
var isAtRight = mindplot.util.Shape.isAtRight(targetPosition, pos);
|
||||
var result;
|
||||
if(onBoundingBox){
|
||||
result = new core.Point();
|
||||
if(isAtRight){
|
||||
result.x = pos.x - (size.width/2)-5;
|
||||
result.y = pos.y;
|
||||
} else {
|
||||
result.x = pos.x + (size.width/2)+ 5;
|
||||
result.y = pos.y;
|
||||
}
|
||||
}
|
||||
else{
|
||||
if (this.getShapeType() == mindplot.NodeModel.SHAPE_TYPE_LINE)
|
||||
{
|
||||
if (!this.isConnectedToCentralTopic())
|
||||
{
|
||||
result = new core.Point();
|
||||
if (!isAtRight)
|
||||
{
|
||||
result.x = pos.x - (size.width / 2);
|
||||
} else
|
||||
{
|
||||
result.x = pos.x + (size.width / 2);
|
||||
}
|
||||
result.y = pos.y + (size.height / 2);
|
||||
} else
|
||||
{
|
||||
// In this case, connetion line is not used as shape figure.
|
||||
result = mindplot.util.Shape.calculateRectConnectionPoint(pos, size, isAtRight, true);
|
||||
result.y = pos.y + (size.height / 2);
|
||||
|
||||
// Correction factor ...
|
||||
if (!isAtRight)
|
||||
{
|
||||
result.x = result.x + 2;
|
||||
} else
|
||||
{
|
||||
result.x = result.x - 2;
|
||||
}
|
||||
|
||||
}
|
||||
} else
|
||||
{
|
||||
result = mindplot.util.Shape.calculateRectConnectionPoint(pos, size, isAtRight, true);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user