Refactored event listener from TaskList to GanttPannel
* Give a look to this post: https://sourceforge.net/mailarchive/forum.php?thread_name=1655a8a1d6e59b8ffa918630d1440dfd%40igalia.com&forum_name=navalplan-devel FEA: ItEr02S03MigracionZK5
This commit is contained in:
parent
fda0bf14b5
commit
173ceec48d
7 changed files with 34 additions and 9 deletions
|
|
@ -26,6 +26,7 @@ import org.zkoss.ganttz.adapters.IDisabilityConfiguration;
|
|||
import org.zkoss.ganttz.data.GanttDiagramGraph;
|
||||
import org.zkoss.ganttz.timetracker.TimeTracker;
|
||||
import org.zkoss.ganttz.timetracker.TimeTrackerComponent;
|
||||
import org.zkoss.ganttz.timetracker.zoom.IZoomLevelChangedListener;
|
||||
import org.zkoss.ganttz.timetracker.zoom.ZoomLevel;
|
||||
import org.zkoss.zk.au.out.AuInvoke;
|
||||
import org.zkoss.zk.ui.ext.AfterCompose;
|
||||
|
|
@ -43,6 +44,8 @@ public class GanttPanel extends XulElement implements AfterCompose {
|
|||
|
||||
private final Planner planner;
|
||||
|
||||
private transient IZoomLevelChangedListener zoomLevelChangedListener;
|
||||
|
||||
public GanttPanel(
|
||||
Planner planner,
|
||||
List<? extends CommandOnTaskContextualized<?>> commandsOnTasksContextualized,
|
||||
|
|
@ -85,7 +88,6 @@ public class GanttPanel extends XulElement implements AfterCompose {
|
|||
.asDependencyComponents(diagramGraph.getVisibleDependencies()));
|
||||
timeTrackerComponent.afterCompose();
|
||||
dependencyList.afterCompose();
|
||||
|
||||
if (planner.isExpandAll()) {
|
||||
FunctionalityExposedForExtensions<?> context = (FunctionalityExposedForExtensions<?>) planner
|
||||
.getContext();
|
||||
|
|
@ -96,6 +98,7 @@ public class GanttPanel extends XulElement implements AfterCompose {
|
|||
planner.getPredicate().setFilterContainers(true);
|
||||
planner.setTaskListPredicate(planner.getPredicate());
|
||||
}
|
||||
registerZoomLevelChangedListener();
|
||||
}
|
||||
|
||||
public TimeTrackerComponent getTimeTrackerComponent() {
|
||||
|
|
@ -134,4 +137,20 @@ public class GanttPanel extends XulElement implements AfterCompose {
|
|||
return planner;
|
||||
}
|
||||
|
||||
private void registerZoomLevelChangedListener() {
|
||||
if (zoomLevelChangedListener == null) {
|
||||
zoomLevelChangedListener = new IZoomLevelChangedListener() {
|
||||
@Override
|
||||
public void zoomLevelChanged(ZoomLevel detailLevel) {
|
||||
adjustZoomColumnsHeight();
|
||||
}
|
||||
};
|
||||
getTimeTracker().addZoomListener(zoomLevelChangedListener);
|
||||
}
|
||||
}
|
||||
|
||||
public void adjustZoomColumnsHeight() {
|
||||
response("adjust_height", new AuInvoke(this, "adjust_height"));
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -441,7 +441,7 @@ public class Planner extends HtmlMacroComponent {
|
|||
getDependencyList().taskRemoved(task);
|
||||
leftPane.taskRemoved(task);
|
||||
setHeight(getHeight());// forcing smart update
|
||||
taskList.adjustZoomColumnsHeight();
|
||||
ganttPanel.adjustZoomColumnsHeight();
|
||||
getDependencyList().redrawDependencies();
|
||||
}
|
||||
|
||||
|
|
@ -686,4 +686,8 @@ public class Planner extends HtmlMacroComponent {
|
|||
}
|
||||
return null;
|
||||
}
|
||||
public String getWidgetClass(){
|
||||
return getDefinition().getDefaultWidgetClass();
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -45,7 +45,6 @@ import org.zkoss.ganttz.timetracker.zoom.IZoomLevelChangedListener;
|
|||
import org.zkoss.ganttz.timetracker.zoom.ZoomLevel;
|
||||
import org.zkoss.ganttz.util.MenuBuilder;
|
||||
import org.zkoss.ganttz.util.MenuBuilder.ItemAction;
|
||||
import org.zkoss.zk.au.out.AuInvoke;
|
||||
import org.zkoss.zk.ui.event.Event;
|
||||
import org.zkoss.zk.ui.event.EventListener;
|
||||
import org.zkoss.zk.ui.ext.AfterCompose;
|
||||
|
|
@ -133,7 +132,7 @@ public class TaskList extends XulElement implements AfterCompose {
|
|||
taskComponent.afterCompose();
|
||||
if (relocate) {
|
||||
setHeight(getHeight());// forcing smart update
|
||||
adjustZoomColumnsHeight();
|
||||
getGanttPanel().adjustZoomColumnsHeight();
|
||||
getGanttPanel().getDependencyList().redrawDependencies();
|
||||
}
|
||||
}
|
||||
|
|
@ -284,7 +283,6 @@ public class TaskList extends XulElement implements AfterCompose {
|
|||
for (TaskComponent taskComponent : getTaskComponents()) {
|
||||
taskComponent.zoomChanged();
|
||||
}
|
||||
adjustZoomColumnsHeight();
|
||||
}
|
||||
};
|
||||
getTimeTracker().addZoomListener(zoomLevelChangedListener);
|
||||
|
|
@ -326,10 +324,6 @@ public class TaskList extends XulElement implements AfterCompose {
|
|||
return (GanttPanel) getParent();
|
||||
}
|
||||
|
||||
public void adjustZoomColumnsHeight() {
|
||||
response("adjust_height", new AuInvoke(TaskList.this, "adjust_height"));
|
||||
}
|
||||
|
||||
public void redrawDependencies() {
|
||||
getGanttPanel().getDependencyList().redrawDependencies();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -14,6 +14,7 @@
|
|||
<component>
|
||||
<component-name>planner</component-name>
|
||||
<component-class>org.zkoss.ganttz.Planner</component-class>
|
||||
<widget-class>ganttz.Planner</widget-class>
|
||||
<macro-uri>~./ganttz/zul/plannerLayout.zul</macro-uri>
|
||||
<!-- mold>
|
||||
<mold-name>default</mold-name>
|
||||
|
|
|
|||
|
|
@ -27,6 +27,9 @@ ganttz.GanttPanel = zk.$extends(zk.Widget,{
|
|||
jq(element).css("left", "-" + this._rightpannellayout.scrollLeft() + "px")
|
||||
}, this));
|
||||
},
|
||||
adjust_height : function(){
|
||||
jq(this.$n()).height(jq('#scroll_container').height());
|
||||
},
|
||||
_calcXY : function(event){
|
||||
var arrPos = YAHOO.util.Event.getXY(event);
|
||||
this.setXMouse(arrPos[0]);
|
||||
|
|
|
|||
3
ganttzk/src/main/resources/web/js/ganttz/Planner.js
Normal file
3
ganttzk/src/main/resources/web/js/ganttz/Planner.js
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
zk.$package("ganttz");
|
||||
|
||||
ganttz.Planner = zk.$extends(zk.Macro,{})
|
||||
|
|
@ -16,4 +16,5 @@
|
|||
<widget name="TaskComponent"/>
|
||||
<widget name="TaskList"/>
|
||||
<widget name="DependencyList"/>
|
||||
<widget name="Planner"/>
|
||||
</package>
|
||||
Loading…
Add table
Reference in a new issue