New isOverTask method
* we leave aside the coordinate calculations and take advantage of ZK 5 widget-object-model * Added a property to TaskComponent widget: mouseOverTask FEA: ItEr02S03MigracionZK5
This commit is contained in:
parent
d4070a94ef
commit
1d244498b8
2 changed files with 8 additions and 62 deletions
|
|
@ -298,70 +298,14 @@ ganttz.UnlinkedDependencyComponent = zk.$extends(ganttz.DependencyComponentBase,
|
|||
}
|
||||
},
|
||||
_isOverTask : function() {
|
||||
var DOMscrollcontainer = jq('#scroll_container');
|
||||
var DOMinnerlayout = jq('.rightpanellayout div :first');
|
||||
var tasksArray;
|
||||
var tasksArray = jq('div[z\\.type="ganttz.task.Task"]');
|
||||
var overTask = null;
|
||||
|
||||
tasksArray = jq.makeArray(jq('#' + this._DOMlisttasks.attr('id') +' div[z\\.type="ganttz.task.Task"]'));
|
||||
tasksArray.concat(jq.makeArray(jq('#' + this._DOMlisttasks.attr('id') +' div[z\\.type="ganttz.taskcontainer.TaskContainer"]')));
|
||||
tasksArray.each(function(index, element){
|
||||
if(ganttz.TaskComponent.$(element.id).mouseOverTask) overTask = ganttz.TaskComponent.$(element.id);
|
||||
});
|
||||
|
||||
function findPosX(obj)
|
||||
{
|
||||
var curleft = 0;
|
||||
if(obj.offsetParent)
|
||||
while(1)
|
||||
{
|
||||
curleft += obj.offsetLeft;
|
||||
if(!obj.offsetParent)
|
||||
break;
|
||||
obj = obj.offsetParent;
|
||||
}
|
||||
else if(obj.x)
|
||||
curleft += obj.x;
|
||||
return curleft;
|
||||
}
|
||||
|
||||
function findPosY(obj)
|
||||
{
|
||||
var curtop = 0;
|
||||
if(obj.offsetParent)
|
||||
while(1)
|
||||
{
|
||||
curtop += obj.offsetTop;
|
||||
if(!obj.offsetParent)
|
||||
break;
|
||||
obj = obj.offsetParent;
|
||||
}
|
||||
else if(obj.y)
|
||||
curtop += obj.y;
|
||||
return curtop;
|
||||
}
|
||||
|
||||
|
||||
a = findPosX(DOMinnerlayout);
|
||||
b = findPosY(DOMinnerlayout);
|
||||
|
||||
var xpos = this._WGTganttpanel.getXMouse() -
|
||||
findPosX(DOMinnerlayout)+
|
||||
DOMinnerlayout.scrollLeft();
|
||||
var ypos = this._WGTganttpanel.getYMouse() -
|
||||
findPosY(DOMinnerlayout) +
|
||||
DOMinnerlayout.scrollTop() -
|
||||
this._DOMlisttasks.position().top;
|
||||
|
||||
var task, coordTask;
|
||||
for ( var i = 0; i < tasksArray.length; i++) {
|
||||
task = jq(tasksArray[i]);
|
||||
coordTask = task.position();
|
||||
/* Added margins to pointing errors */
|
||||
if (((xpos) > (coordTask.left - this.$class.DRAGABLE_PADDING))
|
||||
&& ((xpos) < (coordTask.left + task.outerWidth() + this.$class.DRAGABLE_PADDING))
|
||||
&& (ypos > (coordTask.top))
|
||||
&& (ypos < (coordTask.top + task.outerHeight()))) {
|
||||
return task;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
return overTask;
|
||||
},
|
||||
updateCoordOrigin : function(){
|
||||
var coordOrigin = this.findPos_(this._DOMorigin);
|
||||
|
|
|
|||
|
|
@ -31,6 +31,7 @@ ganttz.TaskComponent = zk.$extends(zk.Widget, {
|
|||
unlinkedDependency.draw();
|
||||
},
|
||||
_showTooltip : function(){
|
||||
this.mouseOverTask = true;
|
||||
this._tooltipTimeout = setTimeout(jq.proxy(function(offset) {
|
||||
var element = jq("#tasktooltip" + this.uuid);
|
||||
if (element!=null) {
|
||||
|
|
@ -45,6 +46,7 @@ ganttz.TaskComponent = zk.$extends(zk.Widget, {
|
|||
}, this), this.$class._TOOLTIP_DELAY);
|
||||
},
|
||||
_hideTooltip : function(){
|
||||
this.mouseOverTask = false;
|
||||
if (this._tooltipTimeout) {
|
||||
clearTimeout(this._tooltipTimeout);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue