diff --git a/ganttzk/src/main/java/org/zkoss/ganttz/TaskComponent.java b/ganttzk/src/main/java/org/zkoss/ganttz/TaskComponent.java index 474419886..1b04527f7 100644 --- a/ganttzk/src/main/java/org/zkoss/ganttz/TaskComponent.java +++ b/ganttzk/src/main/java/org/zkoss/ganttz/TaskComponent.java @@ -224,17 +224,20 @@ public class TaskComponent extends Div implements AfterCompose { } public Command getCommand(String cmdId) { + Command result = null; + if ("updatePosition".equals(cmdId) + && isMovingTasksEnabled()) { + result = _updatecmd; + } else if ("updateSize".equals(cmdId)) { + result = _updatewidthcmd; + } else if ("addDependency".equals(cmdId)) { + result = _adddependencycmd; + } + return result; + } - Command c = null; - - if ("updatePosition".equals(cmdId)) - c = _updatecmd; - else if ("updateSize".equals(cmdId)) - c = _updatewidthcmd; - else if ("addDependency".equals(cmdId)) - c = _adddependencycmd; - - return c; + public boolean isMovingTasksEnabled() { + return disabilityConfiguration.isMovingTasksEnabled(); } // Command action to do diff --git a/ganttzk/src/main/resources/web/ganttz/task.dsp b/ganttzk/src/main/resources/web/ganttz/task.dsp index 70d6b71c2..db6c8915b 100644 --- a/ganttzk/src/main/resources/web/ganttz/task.dsp +++ b/ganttzk/src/main/resources/web/ganttz/task.dsp @@ -6,6 +6,7 @@
diff --git a/ganttzk/src/main/resources/web/js/ganttz/tasklist.js b/ganttzk/src/main/resources/web/js/ganttz/tasklist.js index c1f546144..c0f341f88 100644 --- a/ganttzk/src/main/resources/web/js/ganttz/tasklist.js +++ b/ganttzk/src/main/resources/web/js/ganttz/tasklist.js @@ -304,11 +304,16 @@ zkTask.init = function(cmp) { }, zkTask, true); } + function movingTasksEnabled() { + return cmp.getAttribute('movingTasksEnabled') === 'true'; + } + // Instead of executing the code directly, a callback is created // that will be executed when the user passes the mouse over the task var callback = function() { - addDragSupport(); - addResizeSupport(); + if (movingTasksEnabled()) { + addDragSupport(); + } // it removes itself, so it's not executed again: YAHOO.util.Event.removeListener(cmp, "mouseover", callback); } diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/company/CompanyPlanningModel.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/company/CompanyPlanningModel.java index 36e8f4987..8e26a3480 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/company/CompanyPlanningModel.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/company/CompanyPlanningModel.java @@ -122,7 +122,7 @@ public abstract class CompanyPlanningModel implements ICompanyPlanningModel { configuration.setChartComponent(chartComponent); addAdditionalCommands(additional, configuration); - configuration.setAddingDependenciesEnabled(false); + disableSomeFeatures(configuration); configuration.setChartLegend(getChartLegend()); @@ -131,6 +131,13 @@ public abstract class CompanyPlanningModel implements ICompanyPlanningModel { setupChart(chartComponent, planner.getTimeTracker()); } + private void disableSomeFeatures( + PlannerConfiguration configuration) { + configuration.setAddingDependenciesEnabled(false); + configuration.setMovingTasksEnabled(false); + configuration.setResizingTasksEnabled(false); + } + private void addAdditionalCommands( Collection> additional, PlannerConfiguration configuration) {