diff --git a/ganttzk/src/main/resources/web/ganttz/zul/plannerLayout.zul b/ganttzk/src/main/resources/web/ganttz/zul/plannerLayout.zul index bddfc89f0..63fe62d43 100644 --- a/ganttzk/src/main/resources/web/ganttz/zul/plannerLayout.zul +++ b/ganttzk/src/main/resources/web/ganttz/zul/plannerLayout.zul @@ -66,7 +66,7 @@ planner = self; -
diff --git a/ganttzk/src/main/resources/web/js/ganttz/tasklist.js b/ganttzk/src/main/resources/web/js/ganttz/tasklist.js index bad1ae2f0..600b2d34d 100644 --- a/ganttzk/src/main/resources/web/js/ganttz/tasklist.js +++ b/ganttzk/src/main/resources/web/js/ganttz/tasklist.js @@ -94,6 +94,15 @@ function leftpanelcontainer() { return YAHOO.util.Selector.query('.leftpanelcontainer')[0]; } +function timeplotcontainer_load() { + return YAHOO.util.Selector.query('.timeplot-canvas')[0]; +} + +function timeplotcontainer_earnedvalue() { + return YAHOO.util.Selector.query('.timeplot-canvas')[1]; +} + + zkTasklist.init = function(cmp) { zkTasklist.adjust_height(); listenToScroll(); @@ -115,11 +124,16 @@ function listenToScroll() { leftpanel_ = leftpanel(); rightpanellayout_ = rightpanellayout(); plannergraph_ = plannergraph(); + timeplotcontainer_load_ = timeplotcontainer_load(); + timeplotcontainer_earnedvalue_ = timeplotcontainer_earnedvalue(); var onScroll = function() { timetrackergap_.style["left"] = "-" + scrolledpannel_.scrollLeft + "px"; leftpanel_.style["top"] = "-" + scrolledpannel_.scrollTop + "px"; plannergraph_.scrollLeft = scrolledpannel_.scrollLeft; + timeplotcontainer_load_.style["left"] = "-" + scrolledpannel_.scrollLeft + "px"; + timeplotcontainer_earnedvalue_.style["left"] = "-" + scrolledpannel_.scrollLeft + "px"; + }; rightpanellayout_.onscroll = onScroll; 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 92128511c..87c64d403 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 @@ -87,7 +87,6 @@ import org.zkoss.zk.ui.event.Events; import org.zkoss.zul.Checkbox; import org.zkoss.zul.Div; import org.zkoss.zul.Hbox; -import org.zkoss.zul.Label; import org.zkoss.zul.Tab; import org.zkoss.zul.Tabbox; import org.zkoss.zul.Tabpanel; @@ -159,7 +158,6 @@ public abstract class CompanyPlanningModel implements ICompanyPlanningModel { Tabbox chartComponent = new Tabbox(); chartComponent.setOrient("vertical"); - chartComponent.setHeight("200px"); appendTabs(chartComponent); Timeplot chartLoadTimeplot = new Timeplot(); @@ -219,16 +217,19 @@ public abstract class CompanyPlanningModel implements ICompanyPlanningModel { } private org.zkoss.zk.ui.Component getLoadChartLegend() { - Div div = new Div(); + Hbox hbox = new Hbox(); + hbox.setClass("legend-container"); + hbox.setAlign("center"); + hbox.setPack("center"); Executions.createComponents("/planner/_legendLoadChartCompany.zul", - div, null); - return div; + hbox, null); + return hbox; } private void appendEarnedValueChartAndLegend( Tabpanel earnedValueChartPannel, Timeplot chartEarnedValueTimeplot) { Hbox hbox = new Hbox(); - + hbox.setSclass("earned-value-chart"); hbox.appendChild(getEarnedValueChartConfigurableLegend()); Div div = new Div(); @@ -241,26 +242,23 @@ public abstract class CompanyPlanningModel implements ICompanyPlanningModel { } private org.zkoss.zk.ui.Component getEarnedValueChartConfigurableLegend() { + Hbox mainhbox = new Hbox(); + mainhbox.setClass("legend-container"); + mainhbox.setAlign("center"); + mainhbox.setPack("center"); + Vbox vbox = new Vbox(); vbox.setId("earnedValueChartConfiguration"); vbox.setClass("legend"); - Hbox hboxTitle = new Hbox(); - hboxTitle.setClass("legend-title"); - hboxTitle.setPack("center"); - - Label labelTitle = new Label(_("Chart legend")); - labelTitle.setClass("title"); - hboxTitle.appendChild(labelTitle); - - vbox.appendChild(hboxTitle); - Vbox column1 = new Vbox(); Vbox column2 = new Vbox(); - column1.setWidth("75px"); - column2.setWidth("75px"); + Vbox column3 = new Vbox(); + column1.setSclass("earned-parameter-column"); + column2.setSclass("earned-parameter-column"); + column3.setSclass("earned-parameter-column"); - boolean odd = true; + int columnNumber = 0; for (EarnedValueType type : EarnedValueType.values()) { Checkbox checkbox = new Checkbox(type.getAcronym()); @@ -268,21 +266,29 @@ public abstract class CompanyPlanningModel implements ICompanyPlanningModel { checkbox.setAttribute("indicator", type); checkbox.setStyle("color: " + type.getColor()); - if (odd) { + columnNumber = columnNumber + 1; + switch (columnNumber) { + case 1: column1.appendChild(checkbox); - } else { + break; + case 2: column2.appendChild(checkbox); + break; + case 3: + column3.appendChild(checkbox); + columnNumber = 0; } - earnedValueChartConfigurationCheckboxes.add(checkbox); - odd = !odd; + } Hbox hbox = new Hbox(); hbox.appendChild(column1); hbox.appendChild(column2); + hbox.appendChild(column3); vbox.appendChild(hbox); + mainhbox.appendChild(vbox); markAsSelectedDefaultIndicators(); diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/order/OrderPlanningModel.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/order/OrderPlanningModel.java index f78d43f5d..a787f0973 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/order/OrderPlanningModel.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/order/OrderPlanningModel.java @@ -90,7 +90,6 @@ import org.zkoss.zk.ui.event.Events; import org.zkoss.zul.Checkbox; import org.zkoss.zul.Div; import org.zkoss.zul.Hbox; -import org.zkoss.zul.Label; import org.zkoss.zul.Tab; import org.zkoss.zul.Tabbox; import org.zkoss.zul.Tabpanel; @@ -176,7 +175,7 @@ public abstract class OrderPlanningModel implements IOrderPlanningModel { Tabbox chartComponent = new Tabbox(); chartComponent.setOrient("vertical"); - chartComponent.setHeight("200px"); + // chartComponent.setHeight("200px"); appendTabs(chartComponent); Timeplot chartLoadTimeplot = new Timeplot(); @@ -204,7 +203,7 @@ public abstract class OrderPlanningModel implements IOrderPlanningModel { chartTabs.appendChild(new Tab(_("Earned value"))); chartComponent.appendChild(chartTabs); - chartTabs.setWidth("100px"); + chartTabs.setSclass("charts-tabbox"); } private void appendTabpanels(Tabbox chartComponent, Timeplot loadChart, @@ -227,6 +226,7 @@ public abstract class OrderPlanningModel implements IOrderPlanningModel { Timeplot loadChart) { Hbox hbox = new Hbox(); hbox.appendChild(getLoadChartLegend()); + hbox.setSclass("load-chart"); Div div = new Div(); div.appendChild(loadChart); @@ -237,10 +237,13 @@ public abstract class OrderPlanningModel implements IOrderPlanningModel { } private org.zkoss.zk.ui.Component getLoadChartLegend() { - Div div = new Div(); - Executions.createComponents("/planner/_legendLoadChartOrder.zul", div, + Hbox hbox = new Hbox(); + hbox.setClass("legend-container"); + hbox.setAlign("center"); + hbox.setPack("center"); + Executions.createComponents("/planner/_legendLoadChartOrder.zul", hbox, null); - return div; + return hbox; } private void appendEarnedValueChartAndLegend( @@ -257,26 +260,23 @@ public abstract class OrderPlanningModel implements IOrderPlanningModel { } private org.zkoss.zk.ui.Component getEarnedValueChartConfigurableLegend() { + Hbox mainhbox = new Hbox(); + mainhbox.setClass("legend-container"); + mainhbox.setAlign("center"); + mainhbox.setPack("center"); + Vbox vbox = new Vbox(); vbox.setId("earnedValueChartConfiguration"); vbox.setClass("legend"); - Hbox hboxTitle = new Hbox(); - hboxTitle.setClass("legend-title"); - hboxTitle.setPack("center"); - - Label labelTitle = new Label(_("Chart legend")); - labelTitle.setClass("title"); - hboxTitle.appendChild(labelTitle); - - vbox.appendChild(hboxTitle); - Vbox column1 = new Vbox(); Vbox column2 = new Vbox(); - column1.setWidth("75px"); - column2.setWidth("75px"); + Vbox column3 = new Vbox(); + column1.setSclass("earned-parameter-column"); + column2.setSclass("earned-parameter-column"); + column3.setSclass("earned-parameter-column"); - boolean odd = true; + int columnNumber = 0; for (EarnedValueType type : EarnedValueType.values()) { Checkbox checkbox = new Checkbox(type.getAcronym()); @@ -284,21 +284,30 @@ public abstract class OrderPlanningModel implements IOrderPlanningModel { checkbox.setAttribute("indicator", type); checkbox.setStyle("color: " + type.getColor()); - if (odd) { + columnNumber = columnNumber + 1; + switch (columnNumber) { + case 1: column1.appendChild(checkbox); - } else { + break; + case 2: column2.appendChild(checkbox); + break; + case 3: + column3.appendChild(checkbox); + columnNumber = 0; + break; } - earnedValueChartConfigurationCheckboxes.add(checkbox); - odd = !odd; } Hbox hbox = new Hbox(); hbox.appendChild(column1); hbox.appendChild(column2); + hbox.appendChild(column3); vbox.appendChild(hbox); + mainhbox.setClass("legend-container"); + mainhbox.appendChild(vbox); markAsSelectedDefaultIndicators(); diff --git a/navalplanner-webapp/src/main/webapp/common/css/navalpro_zk.css b/navalplanner-webapp/src/main/webapp/common/css/navalpro_zk.css index bb53de183..45820f76f 100644 --- a/navalplanner-webapp/src/main/webapp/common/css/navalpro_zk.css +++ b/navalplanner-webapp/src/main/webapp/common/css/navalpro_zk.css @@ -662,10 +662,16 @@ div.z-grid { font-family: Tahoma, Arial, Helvetica, sans-serif; font-size: 12px; border: solid 1px #000000; - padding: 10px 30px 10px 30px; + padding: 5px 10px; background-color: #FFFFFF; } +.legend-container { + width: 226px; + height: 104px; + background-color: #E8E8E8; +} + .legend td { vertical-align:bottom; } @@ -714,14 +720,14 @@ div.z-grid { } .legend .overload-other { - border-top:solid 1px #FFFF00; + border-top:solid 1px #7f007f; height:7px; width:25px; margin-right:5px; } .legend .other { - background-color:#00FF00; + background-color:#7f007f; height:10px; width:25px; margin-bottom:2px; @@ -913,3 +919,23 @@ tr.z-tree-row-seld, tr.z-list-item-seld { background-color: #2a83b4; color: #FFFFFF; } + +.timeplot-canvas { + position:relative; + overflow:hidden; + } + +.resourcesload .timetrackergap .z-grid-header{ + heigth: 15px; +} + +.scheduling-graphics .z-tabs-ver { + width: 60px !important; +} +.scheduling-graphics .z-tab-ver .z-tab-ver-text { + white-space: normal; +} +.earned-parameter-column { + width: 70px; +} + diff --git a/navalplanner-webapp/src/main/webapp/planner/_legendLoadChartCompany.zul b/navalplanner-webapp/src/main/webapp/planner/_legendLoadChartCompany.zul index 33367b002..55366f581 100644 --- a/navalplanner-webapp/src/main/webapp/planner/_legendLoadChartCompany.zul +++ b/navalplanner-webapp/src/main/webapp/planner/_legendLoadChartCompany.zul @@ -23,10 +23,6 @@ - - ${i18n:_('Chart legend')} - - ${i18n:_('Total capability')} diff --git a/navalplanner-webapp/src/main/webapp/planner/_legendLoadChartOrder.zul b/navalplanner-webapp/src/main/webapp/planner/_legendLoadChartOrder.zul index 4d4c29f98..d96eb8ed5 100644 --- a/navalplanner-webapp/src/main/webapp/planner/_legendLoadChartOrder.zul +++ b/navalplanner-webapp/src/main/webapp/planner/_legendLoadChartOrder.zul @@ -23,35 +23,31 @@ - - ${i18n:_('Chart legend')} - - - + - ${i18n:_('Capability')} + ${i18n:_('Total capability')} - + - ${i18n:_('Overload due to other')} + ${i18n:_('Overload (*)')} - + - ${i18n:_('Overload due to order')} + ${i18n:_('Overload')} - + ${i18n:_('Other assignments')} - + - ${i18n:_('Load due to order')} + ${i18n:_('Load')} - + \ No newline at end of file