Add checkbox in work reports standard edition UI
FEA: ItEr77S12AdaptPlanningAccordingTimesheets
This commit is contained in:
parent
69c842350f
commit
a8ba46e505
4 changed files with 36 additions and 4 deletions
|
|
@ -56,6 +56,7 @@ import org.zkoss.zkplus.databind.AnnotateDataBinder;
|
|||
import org.zkoss.zkplus.databind.DataBinder;
|
||||
import org.zkoss.zul.Bandbox;
|
||||
import org.zkoss.zul.Button;
|
||||
import org.zkoss.zul.Checkbox;
|
||||
import org.zkoss.zul.Combobox;
|
||||
import org.zkoss.zul.Comboitem;
|
||||
import org.zkoss.zul.Datebox;
|
||||
|
|
@ -67,7 +68,6 @@ import org.zkoss.zul.Radio;
|
|||
import org.zkoss.zul.Row;
|
||||
import org.zkoss.zul.Textbox;
|
||||
import org.zkoss.zul.Timebox;
|
||||
import org.zkoss.zul.api.Checkbox;
|
||||
import org.zkoss.zul.api.Column;
|
||||
|
||||
/**
|
||||
|
|
@ -446,7 +446,7 @@ public class Util {
|
|||
* The {@link Setter} interface that will implement a set method.
|
||||
* @return The {@link Checkbox} bound
|
||||
*/
|
||||
public static <C extends Checkbox> C bind(final C checkBox,
|
||||
public static Checkbox bind(final Checkbox checkBox,
|
||||
final Getter<Boolean> getter, final Setter<Boolean> setter) {
|
||||
checkBox.setChecked(getter.get());
|
||||
checkBox.addEventListener(Events.ON_CHECK, new EventListener() {
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@ import org.libreplan.business.workingday.EffortDuration;
|
|||
import org.libreplan.web.common.Util;
|
||||
import org.libreplan.web.common.Util.Getter;
|
||||
import org.libreplan.web.common.Util.Setter;
|
||||
import org.zkoss.zul.api.Checkbox;
|
||||
import org.zkoss.zul.Checkbox;
|
||||
|
||||
/**
|
||||
* It configures some ZK components to work together and edit a Capacity object
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@ import java.util.List;
|
|||
import java.util.Map;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
import org.apache.commons.lang.BooleanUtils;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
import org.hibernate.validator.InvalidValue;
|
||||
|
|
@ -54,6 +55,8 @@ import org.libreplan.web.common.Level;
|
|||
import org.libreplan.web.common.MessagesForUser;
|
||||
import org.libreplan.web.common.OnlyOneVisible;
|
||||
import org.libreplan.web.common.Util;
|
||||
import org.libreplan.web.common.Util.Getter;
|
||||
import org.libreplan.web.common.Util.Setter;
|
||||
import org.libreplan.web.common.components.Autocomplete;
|
||||
import org.libreplan.web.common.components.NewDataSortableColumn;
|
||||
import org.libreplan.web.common.components.NewDataSortableGrid;
|
||||
|
|
@ -73,6 +76,7 @@ import org.zkoss.zk.ui.event.Events;
|
|||
import org.zkoss.zk.ui.event.SelectEvent;
|
||||
import org.zkoss.zk.ui.util.GenericForwardComposer;
|
||||
import org.zkoss.zul.Button;
|
||||
import org.zkoss.zul.Checkbox;
|
||||
import org.zkoss.zul.Column;
|
||||
import org.zkoss.zul.Columns;
|
||||
import org.zkoss.zul.Comboitem;
|
||||
|
|
@ -815,7 +819,12 @@ public class WorkReportCRUDController extends GenericForwardComposer implements
|
|||
columnHoursType.setLabel(_("Hours type"));
|
||||
columnHoursType.setSclass("hours-type-column");
|
||||
columns.appendChild(columnHoursType);
|
||||
NewDataSortableColumn columnFinsihed = new NewDataSortableColumn();
|
||||
columnFinsihed.setLabel(_("Done"));
|
||||
columnFinsihed.setSclass("finished-column");
|
||||
columnFinsihed.setTooltiptext(_("Task finished"));
|
||||
NewDataSortableColumn columnCode = new NewDataSortableColumn();
|
||||
columns.appendChild(columnFinsihed);
|
||||
columnCode.setLabel(_("Code"));
|
||||
columnCode.setSclass("code-column");
|
||||
columns.appendChild(columnCode);
|
||||
|
|
@ -1197,6 +1206,24 @@ public class WorkReportCRUDController extends GenericForwardComposer implements
|
|||
row.appendChild(code);
|
||||
}
|
||||
|
||||
private void appendFinished(final Row row) {
|
||||
final WorkReportLine line = (WorkReportLine) row.getValue();
|
||||
|
||||
Checkbox finished = Util.bind(new Checkbox(), new Getter<Boolean>() {
|
||||
@Override
|
||||
public Boolean get() {
|
||||
return line.isFinished();
|
||||
}
|
||||
}, new Setter<Boolean>() {
|
||||
@Override
|
||||
public void set(Boolean value) {
|
||||
line.setFinished(BooleanUtils.isTrue(value));
|
||||
}
|
||||
});
|
||||
|
||||
row.appendChild(finished);
|
||||
}
|
||||
|
||||
/**
|
||||
* Append a delete {@link Button} to {@link Row}
|
||||
*
|
||||
|
|
@ -1306,6 +1333,7 @@ public class WorkReportCRUDController extends GenericForwardComposer implements
|
|||
|
||||
appendEffortDuration(row);
|
||||
appendHoursType(row);
|
||||
appendFinished(row);
|
||||
appendCode(row);
|
||||
appendDeleteButton(row);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@
|
|||
}
|
||||
|
||||
.listWorkReportLines .operations-column {
|
||||
width: 40px;
|
||||
width: 15px;
|
||||
}
|
||||
|
||||
.listWorkReportLines .resource-column {
|
||||
|
|
@ -25,6 +25,10 @@
|
|||
width: 150px;
|
||||
}
|
||||
|
||||
.listWorkReportLines .finished-column {
|
||||
width: 20px;
|
||||
}
|
||||
|
||||
.listWorkReportLines .order-code-column {
|
||||
width: 180px;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue