ItEr51S09CUAsignacionGrupoRecursosAPlanificacionItEr50S12: Implemented behaviour of horizontal paginator listbox
This commit is contained in:
parent
934307a771
commit
2ce50f4713
2 changed files with 67 additions and 3 deletions
|
|
@ -40,6 +40,8 @@ import org.apache.commons.lang.Validate;
|
|||
import org.joda.time.DateTime;
|
||||
import org.joda.time.LocalDate;
|
||||
import org.joda.time.Period;
|
||||
import org.joda.time.format.DateTimeFormat;
|
||||
import org.joda.time.format.DateTimeFormatter;
|
||||
import org.navalplanner.business.planner.entities.AggregateOfResourceAllocations;
|
||||
import org.navalplanner.business.planner.entities.AssignmentFunction;
|
||||
import org.navalplanner.business.planner.entities.CalculatedValue;
|
||||
|
|
@ -84,6 +86,7 @@ import org.zkoss.zul.Intbox;
|
|||
import org.zkoss.zul.Label;
|
||||
import org.zkoss.zul.ListModel;
|
||||
import org.zkoss.zul.Listbox;
|
||||
import org.zkoss.zul.Listitem;
|
||||
import org.zkoss.zul.Messagebox;
|
||||
import org.zkoss.zul.SimpleListModel;
|
||||
import org.zkoss.zul.api.Column;
|
||||
|
|
@ -396,6 +399,8 @@ public class AdvancedAllocationController extends GenericForwardComposer {
|
|||
private List<AllocationInput> allocationInputs;
|
||||
private Component associatedComponent;
|
||||
|
||||
private Listbox advancedAllocationHorizontalPagination;
|
||||
|
||||
public AdvancedAllocationController(IBack back,
|
||||
List<AllocationInput> allocationInputs) {
|
||||
setInputData(back, allocationInputs);
|
||||
|
|
@ -465,6 +470,44 @@ public class AdvancedAllocationController extends GenericForwardComposer {
|
|||
return Period.years(5);
|
||||
}
|
||||
|
||||
public void populateHorizontalListbox() {
|
||||
advancedAllocationHorizontalPagination.getItems().clear();
|
||||
DateTimeFormatter df = DateTimeFormat.forPattern("dd/MMM/yyyy");
|
||||
if (intervalStart != null) {
|
||||
DateTime itemStart = intervalStart;
|
||||
DateTime itemEnd = intervalStart.plus(intervalIncrease());
|
||||
while (intervalEnd.isAfter(itemStart)) {
|
||||
if (intervalEnd.isBefore(itemEnd)
|
||||
|| !intervalEnd.isAfter(itemEnd
|
||||
.plus(intervalIncrease()))) {
|
||||
itemEnd = intervalEnd;
|
||||
}
|
||||
Listitem item = new Listitem(df.print(itemStart) + " - "
|
||||
+ df.print(itemEnd.minusDays(1)));
|
||||
advancedAllocationHorizontalPagination.appendChild(item);
|
||||
itemStart = itemEnd;
|
||||
itemEnd = itemEnd.plus(intervalIncrease());
|
||||
}
|
||||
}
|
||||
advancedAllocationHorizontalPagination
|
||||
.setDisabled(advancedAllocationHorizontalPagination
|
||||
.getItems().size() < 2);
|
||||
}
|
||||
|
||||
public void goToHorizontalPage(int interval) {
|
||||
if (interval >= 0) {
|
||||
paginatorStart = intervalStart;
|
||||
for (int i = 0; i < interval; i++) {
|
||||
paginatorStart = paginatorStart.plus(intervalIncrease());
|
||||
}
|
||||
paginatorEnd = paginatorStart.plus(intervalIncrease());
|
||||
if ((paginatorEnd.plus(intervalIncrease()).isAfter(intervalEnd))) {
|
||||
paginatorEnd = paginatorEnd.plus(intervalIncrease());
|
||||
}
|
||||
updatePaginationButtons();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public Collection<DetailItem> selectsFirstLevel(
|
||||
Collection<DetailItem> firstLevelDetails) {
|
||||
|
|
@ -554,6 +597,7 @@ public class AdvancedAllocationController extends GenericForwardComposer {
|
|||
paginatorFilter.setZoomLevel(detailLevel);
|
||||
paginatorFilter.setInterval(timeTracker.getRealInterval());
|
||||
timeTracker.setFilter(paginatorFilter);
|
||||
populateHorizontalListbox();
|
||||
Clients.evalJavaScript("ADVANCE_ALLOCATIONS.listenToScroll();");
|
||||
}
|
||||
});
|
||||
|
|
@ -567,16 +611,36 @@ public class AdvancedAllocationController extends GenericForwardComposer {
|
|||
leftPane = timeTrackedTableWithLeftPane.getLeftPane();
|
||||
leftPane.setFixedLayout(true);
|
||||
Clients.evalJavaScript("ADVANCE_ALLOCATIONS.listenToScroll();");
|
||||
populateHorizontalListbox();
|
||||
}
|
||||
|
||||
public void paginationDown() {
|
||||
paginatorFilter.previous();
|
||||
reloadComponent();
|
||||
|
||||
advancedAllocationHorizontalPagination
|
||||
.setSelectedIndex(advancedAllocationHorizontalPagination
|
||||
.getSelectedIndex() - 1);
|
||||
|
||||
}
|
||||
|
||||
public void paginationUp() {
|
||||
paginatorFilter.next();
|
||||
reloadComponent();
|
||||
advancedAllocationHorizontalPagination.setSelectedIndex(Math.max(0,
|
||||
advancedAllocationHorizontalPagination.getSelectedIndex()) + 1);
|
||||
}
|
||||
|
||||
public void goToSelectedHorizontalPage() {
|
||||
paginatorFilter
|
||||
.goToHorizontalPage(advancedAllocationHorizontalPagination
|
||||
.getSelectedIndex());
|
||||
reloadComponent();
|
||||
}
|
||||
|
||||
private void populateHorizontalListbox() {
|
||||
advancedAllocationHorizontalPagination.setVisible(true);
|
||||
paginatorFilter.populateHorizontalListbox();
|
||||
}
|
||||
|
||||
private void reloadComponent() {
|
||||
|
|
@ -589,6 +653,7 @@ public class AdvancedAllocationController extends GenericForwardComposer {
|
|||
paginatorFilter.setZoomLevel(detailLevel);
|
||||
paginatorFilter.setInterval(timeTracker.getRealInterval());
|
||||
timeTracker.setFilter(paginatorFilter);
|
||||
populateHorizontalListbox();
|
||||
Clients.evalJavaScript("ADVANCE_ALLOCATIONS.listenToScroll();");
|
||||
}
|
||||
});
|
||||
|
|
|
|||
|
|
@ -52,9 +52,8 @@
|
|||
<label>${i18n:_('Pagination')}:</label>
|
||||
<button tooltiptext="Page down" image="/common/img/ico_left.png" id="paginationDownButton"
|
||||
onClick="advancedAllocationController.paginationDown();" disabled="true" />
|
||||
<listbox mold="select" rows="1" visible="false" id="advancedAllocationHorizontalPagination">
|
||||
<listitem><listcell label="${i18n:_('Dates range')}" /><listcell label="Date Range 2" /><listcell label="Date Range 3 ..." /></listitem>
|
||||
</listbox>
|
||||
<listbox mold="select" rows="1" visible="false" id="advancedAllocationHorizontalPagination"
|
||||
onSelect="advancedAllocationController.goToSelectedHorizontalPage();" />
|
||||
<button tooltiptext="Page up" image="/common/img/ico_right.png" id="paginationUpButton"
|
||||
onClick="advancedAllocationController.paginationUp();" />
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue