ItEr44S15RFNavegacionOrganizacionTraballoItEr43S20: Changed filtering orderelements by label component position
This commit is contained in:
parent
78da913ded
commit
a0bc3eaa32
5 changed files with 13 additions and 62 deletions
|
|
@ -51,7 +51,6 @@ import org.zkoss.zk.ui.event.Event;
|
|||
import org.zkoss.zk.ui.event.EventListener;
|
||||
import org.zkoss.zk.ui.event.Events;
|
||||
import org.zkoss.zul.Button;
|
||||
import org.zkoss.zul.Combobox;
|
||||
import org.zkoss.zul.Constraint;
|
||||
import org.zkoss.zul.Datebox;
|
||||
import org.zkoss.zul.Intbox;
|
||||
|
|
@ -71,8 +70,6 @@ public class OrderElementTreeController extends TreeController<OrderElement> {
|
|||
|
||||
private Vbox filter;
|
||||
|
||||
private Combobox cbFilterType;
|
||||
|
||||
private BandboxSearch bdFilter;
|
||||
|
||||
private OrderElementTreeitemRenderer renderer = new OrderElementTreeitemRenderer();
|
||||
|
|
@ -154,8 +151,11 @@ public class OrderElementTreeController extends TreeController<OrderElement> {
|
|||
@Override
|
||||
public void doAfterCompose(Component comp) throws Exception {
|
||||
super.doAfterCompose(comp);
|
||||
Executions.createComponents("/orders/_orderElementTreeFilter.zul",
|
||||
Component filterComponent = Executions.createComponents(
|
||||
"/orders/_orderElementTreeFilter.zul",
|
||||
filter, new HashMap<String, String>());
|
||||
filterComponent.setVariable("treeController", this, true);
|
||||
bdFilter = (BandboxSearch) filterComponent.getFellow("bdFilter");
|
||||
}
|
||||
|
||||
public class OrderElementTreeitemRenderer extends Renderer {
|
||||
|
|
@ -400,46 +400,18 @@ public class OrderElementTreeController extends TreeController<OrderElement> {
|
|||
return predicate != null;
|
||||
}
|
||||
|
||||
private final String SHOW_ALL = _("Show all");
|
||||
|
||||
/**
|
||||
* Show all order elements in current order
|
||||
* @param event
|
||||
*/
|
||||
public void onShowAll(Event event) {
|
||||
final String selectedOption = ((Combobox) event.getTarget()).getValue();
|
||||
if (SHOW_ALL.equals(selectedOption)) {
|
||||
// Delete predicate and set back to original tree model
|
||||
if (predicate != null) {
|
||||
bdFilter.clear();
|
||||
predicate = null;
|
||||
Util.reloadBindings(tree);
|
||||
}
|
||||
bdFilter.setDisabled(true);
|
||||
} else {
|
||||
bdFilter.setDisabled(false);
|
||||
}
|
||||
}
|
||||
|
||||
private final String FILTER_BY_LABEL = _("Filter by Label");
|
||||
|
||||
/**
|
||||
* Apply filter to order elements in current order
|
||||
* @param event
|
||||
*/
|
||||
public void onApplyFilter(Event event) {
|
||||
final String selectedOption = cbFilterType.getValue();
|
||||
// Filter order elements by label
|
||||
if (FILTER_BY_LABEL.equals(selectedOption)) {
|
||||
org.navalplanner.business.labels.entities.Label label = getSelectedLabel();
|
||||
if (label == null) {
|
||||
label = org.navalplanner.business.labels.entities.Label
|
||||
.create("");
|
||||
label = org.navalplanner.business.labels.entities.Label.create("");
|
||||
}
|
||||
// Create predicate and filter order elements by predicate
|
||||
predicate = new LabelOrderElementPredicate(label);
|
||||
filterByPredicate();
|
||||
}
|
||||
}
|
||||
|
||||
private org.navalplanner.business.labels.entities.Label getSelectedLabel() {
|
||||
|
|
@ -458,9 +430,7 @@ public class OrderElementTreeController extends TreeController<OrderElement> {
|
|||
*/
|
||||
public void clear() {
|
||||
selectDefaultTab();
|
||||
cbFilterType.setSelectedIndex(0); // Select show all option
|
||||
bdFilter.setDisabled(true); // Disable when show all option is selected
|
||||
bdFilter.clear();
|
||||
// bdFilter.clear();
|
||||
predicate = null;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -468,7 +468,9 @@ public class OrderModel implements IOrderModel {
|
|||
// Iterate through orderElements from order
|
||||
List<OrderElement> orderElements = new ArrayList<OrderElement>();
|
||||
for (OrderElement orderElement : order.getOrderElements()) {
|
||||
reattachOrderElement(orderElement);
|
||||
if (!orderElement.isNewObject()) {
|
||||
reattachOrderElement(orderElement);
|
||||
}
|
||||
reattachLabels();
|
||||
initializeLabels(orderElement.getLabels());
|
||||
|
||||
|
|
|
|||
|
|
@ -430,7 +430,7 @@ div.z-errbox {
|
|||
.z-label,.z-radio-cnt,.z-checkbox-cnt,.z-slider-pp,input.button,input.file,.z-loading,.z-errbox,
|
||||
div.z-tree-footer-cnt, div.z-tree-cell-cnt, div.z-tree-col-cnt, .z-listbox,
|
||||
div.z-footer-cnt, div.z-row-cnt, div.z-group-cnt, div.z-group-foot-cnt,
|
||||
div.z-column-cnt, div.z-list-footer-cnt, div.z-list-cell-cnt {
|
||||
div.z-column-cnt, div.z-list-footer-cnt, div.z-list-cell-cnt, .z-bandbox, .z-bandbox-inp {
|
||||
font-family: Tahoma, Arial, Helvetica, sans-serif;
|
||||
font-size: 11px;
|
||||
font-weight: normal;
|
||||
|
|
|
|||
|
|
@ -1,16 +1,8 @@
|
|||
<hbox>
|
||||
<!-- Filter by label -->
|
||||
<combobox id="cbFilterType" value="${i18n:_('Show all')}"
|
||||
onChange="treeController.onShowAll(event)"
|
||||
constraint="no empty:${i18n:_('cannot be null or empty')}"
|
||||
readonly="true" >
|
||||
<comboitem label="${i18n:_('Show all')}"
|
||||
description="${i18n:_('Show all order elements')}" />
|
||||
<comboitem label="${i18n:_('Filter by Label')}"
|
||||
description="${i18n:_('Filter all order elements by label')}" />
|
||||
</combobox>
|
||||
<label value="${i18n:_('Filter by label:')}" />
|
||||
<bandboxSearch id="bdFilter" finder="LabelBandboxFinder"
|
||||
model="@{treeController.labels}"/>
|
||||
<button label="${i18n:_('Filter')}" style="margin-top: -4px"
|
||||
onClick="treeController.onApplyFilter(event)"/>
|
||||
</hbox>
|
||||
</hbox>
|
||||
|
|
|
|||
|
|
@ -32,20 +32,7 @@
|
|||
<button label="New order" tooltiptext="${i18n:_('Create new order')}" class="planner-command"/>
|
||||
<button label="Save" tooltiptext="${i18n:_('Save order')}" class="planner-command" disabled="true"/>
|
||||
<separator/>
|
||||
<hbox align="center" style="margin-left:240px;">
|
||||
<!-- Filter by label -->
|
||||
<label>Filter order elements:</label>
|
||||
<combobox id="cbFilterType" value="${i18n:_('Show all')}"
|
||||
constraint="no empty:${i18n:_('cannot be null or empty')}"
|
||||
readonly="true" >
|
||||
<comboitem label="${i18n:_('Show all')}"
|
||||
description="${i18n:_('Show all order elements')}" />
|
||||
<comboitem label="${i18n:_('Filter by Label')}"
|
||||
description="${i18n:_('Filter all order elements by label')}" />
|
||||
</combobox>
|
||||
<bandboxSearch id="bdFilter" finder="LabelBandboxFinder"/>
|
||||
<button label="${i18n:_('Filter')}" class="planner-command"/>
|
||||
</hbox>
|
||||
<vbox id="filter" />
|
||||
</hbox>
|
||||
</north>
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue