ItEr29S08CUCreacionProxectoPlanificacionItEr28S09: Graph component scroll synchronized with planner and resourceload containers
This commit is contained in:
parent
841921042d
commit
a5d91c77a8
5 changed files with 75 additions and 23 deletions
|
|
@ -73,7 +73,7 @@ planner = self;
|
|||
</vbox>
|
||||
</west>
|
||||
|
||||
<center autoscroll="true">
|
||||
<center autoscroll="true" sclass="plannergraph">
|
||||
|
||||
<vbox>
|
||||
<zscript>
|
||||
|
|
|
|||
|
|
@ -89,7 +89,7 @@
|
|||
</vbox>
|
||||
</west>
|
||||
|
||||
<center autoscroll="true">
|
||||
<center autoscroll="true" sclass="resourcesloadgraph">
|
||||
|
||||
<vbox>
|
||||
<zscript>
|
||||
|
|
|
|||
|
|
@ -45,6 +45,24 @@ function addResourcesLoadListMethods(object) {
|
|||
return YAHOO.util.Selector.query('.taskspanelgap')[0];
|
||||
}
|
||||
|
||||
function resourcesloadgraph() {
|
||||
return YAHOO.util.Selector.query('.resourcesloadgraph div')[0];
|
||||
}
|
||||
|
||||
function scrolledpannel() {
|
||||
return YAHOO.util.Selector.query('.rightpanellayout div')[0];
|
||||
}
|
||||
|
||||
|
||||
function timetrackergap() {
|
||||
return YAHOO.util.Selector.query('.timetrackergap')[0];
|
||||
}
|
||||
|
||||
function leftpanel() {
|
||||
return YAHOO.util.Selector.query('.leftpanelgap .z-tree-body')[0];
|
||||
}
|
||||
|
||||
|
||||
object.init = function(cmp) {
|
||||
this.adjustTimeTrackerSize(cmp);
|
||||
YAHOO.util.Event.addListener(window, 'resize',
|
||||
|
|
@ -59,16 +77,22 @@ function addResourcesLoadListMethods(object) {
|
|||
};
|
||||
|
||||
function listenToScroll() {
|
||||
var onScroll = function() {
|
||||
var scrolledpannel = YAHOO.util.Selector
|
||||
.query('.rightpanellayout div')[0];
|
||||
elem = YAHOO.util.Selector.query('.timetrackergap')[0];
|
||||
elem.style["position"] = "relative";
|
||||
elem.style["left"] = "-" + scrolledpannel.scrollLeft + "px";
|
||||
|
||||
var leftpanel = YAHOO.util.Selector.query('.leftpanelgap .z-tree-body')[0];
|
||||
leftpanel.style["position"] = "relative";
|
||||
leftpanel.style["top"] = "-" + scrolledpannel.scrollTop + "px";
|
||||
var timetrackergap_ = timetrackergap();
|
||||
var scrolledpannel_ = scrolledpannel();
|
||||
var resourcesloadgraph_ = resourcesloadgraph();
|
||||
var leftpanel_ = leftpanel();
|
||||
|
||||
var onScroll = function() {
|
||||
timetrackergap_.style["position"] = "relative";
|
||||
timetrackergap_.style["left"] = "-" + scrolledpannel_.scrollLeft + "px";
|
||||
|
||||
leftpanel_.style["position"] = "relative";
|
||||
leftpanel_.style["top"] = "-" + scrolledpannel_.scrollTop + "px";
|
||||
|
||||
resourcesloadgraph_.style["position"] = "relative";
|
||||
resourcesloadgraph_.scrollLeft = scrolledpannel_.scrollLeft;
|
||||
|
||||
};
|
||||
|
||||
YAHOO.util.Selector.query('.rightpanellayout div')[0].onscroll = onScroll;
|
||||
|
|
|
|||
|
|
@ -43,9 +43,29 @@ FOOTER_HEIGHT = 40; // Design-relative footer height
|
|||
|
||||
SCROLLBAR_WIDTH = 15; // Scrollbars default width
|
||||
|
||||
|
||||
function scrolledpannel() {
|
||||
return YAHOO.util.Selector.query('.rightpanellayout div')[0];
|
||||
}
|
||||
|
||||
function leftpanel() {
|
||||
return YAHOO.util.Selector.query('.leftpanelgap')[0];
|
||||
}
|
||||
|
||||
function plannergraph() {
|
||||
return YAHOO.util.Selector.query('.plannergraph div')[0];
|
||||
}
|
||||
|
||||
function timetrackergap() {
|
||||
return YAHOO.util.Selector.query('.timetrackergap')[0];
|
||||
}
|
||||
|
||||
function rightpanellayout() {
|
||||
return YAHOO.util.Selector.query('.rightpanellayout div')[0];
|
||||
}
|
||||
|
||||
zkTasklist.init = function(cmp) {
|
||||
zkTasklist.adjust_height();
|
||||
// relocateScrolls();
|
||||
listenToScroll();
|
||||
}
|
||||
|
||||
|
|
@ -58,19 +78,24 @@ zkTasklist.adjust_height = function(cmp) {
|
|||
|
||||
/* Scrolls taskdetails compoent when scrolling ganttpanel component */
|
||||
function listenToScroll() {
|
||||
var onScroll = function() {
|
||||
var scrolledpannel = YAHOO.util.Selector
|
||||
.query('.rightpanellayout div')[0];
|
||||
elem = YAHOO.util.Selector.query('.timetrackergap')[0];
|
||||
elem.style["position"] = "relative";
|
||||
elem.style["left"] = "-" + scrolledpannel.scrollLeft + "px";
|
||||
|
||||
var leftpanel = YAHOO.util.Selector.query('.leftpanelgap')[0];
|
||||
leftpanel.style["position"] = "relative";
|
||||
leftpanel.style["top"] = "-" + scrolledpannel.scrollTop + "px";
|
||||
timetrackergap_ = timetrackergap();
|
||||
scrolledpannel_ = scrolledpannel();
|
||||
leftpanel_ = leftpanel();
|
||||
rightpanellayout_ = rightpanellayout();
|
||||
plannergraph_ = plannergraph();
|
||||
|
||||
var onScroll = function() {
|
||||
timetrackergap_.style["left"] = "-" + scrolledpannel_.scrollLeft + "px";
|
||||
|
||||
leftpanel_.style["position"] = "relative";
|
||||
leftpanel_.style["top"] = "-" + scrolledpannel_.scrollTop + "px";
|
||||
|
||||
plannergraph_.style["position"] = "relative";
|
||||
plannergraph_.scrollLeft = scrolledpannel_.scrollLeft;
|
||||
};
|
||||
|
||||
YAHOO.util.Selector.query('.rightpanellayout div')[0].onscroll = onScroll;
|
||||
rightpanellayout_.onscroll = onScroll;
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -505,6 +505,10 @@ tr.z-vbox-sep {
|
|||
display:none;
|
||||
}
|
||||
|
||||
.timetrackergap {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.taskdetails_name {
|
||||
min-width: 150px;
|
||||
}
|
||||
|
|
@ -523,4 +527,3 @@ div.z-tree {
|
|||
|
||||
.plannerlayout, .resourcesloadlayout {
|
||||
height:500px;
|
||||
}
|
||||
Loading…
Add table
Reference in a new issue