Changeset 4666 for vlo/branches/vlo-3.0/vlo-web-app/src/main/java/eu/clarin/cmdi/vlo/wicket/panels/AllFacetValuesPanel.java
- Timestamp:
- 03/10/14 15:52:30 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
vlo/branches/vlo-3.0/vlo-web-app/src/main/java/eu/clarin/cmdi/vlo/wicket/panels/AllFacetValuesPanel.java
r4665 r4666 25 25 import org.apache.wicket.ajax.AjaxRequestTarget; 26 26 import org.apache.wicket.ajax.form.AjaxFormComponentUpdatingBehavior; 27 import org.apache.wicket.ajax.form.OnChangeAjaxBehavior; 27 28 import org.apache.wicket.ajax.markup.html.AjaxFallbackLink; 28 29 import org.apache.wicket.extensions.markup.html.repeater.util.SortParam; … … 31 32 import org.apache.wicket.markup.html.form.DropDownChoice; 32 33 import org.apache.wicket.markup.html.form.Form; 34 import org.apache.wicket.markup.html.form.TextField; 33 35 import org.apache.wicket.markup.html.link.Link; 34 36 import org.apache.wicket.markup.html.panel.GenericPanel; … … 37 39 import org.apache.wicket.model.CompoundPropertyModel; 38 40 import org.apache.wicket.model.IModel; 41 import org.apache.wicket.model.Model; 39 42 import org.apache.wicket.model.PropertyModel; 40 43 … … 49 52 private final FacetFieldValuesProvider valuesProvider; 50 53 private final WebMarkupContainer valuesContainer; 54 private IModel<String> filterModel = new Model<String>(); 51 55 52 56 public AllFacetValuesPanel(String id, IModel<FacetField> model) { 53 57 super(id, model); 54 valuesProvider = new FacetFieldValuesProvider(model); 58 // create a provider that shows all values and is sorted by name by default 59 valuesProvider = new FacetFieldValuesProvider(model, Integer.MAX_VALUE, FieldValueOrderSelector.NAME_SORT) { 55 60 61 @Override 62 protected IModel<String> getFilterModel() { 63 // filters the values 64 return filterModel; 65 } 66 67 }; 68 69 // create a container for the values to allow for AJAX updates 56 70 valuesContainer = new WebMarkupContainer("facetValuesContainer"); 57 71 valuesContainer.setOutputMarkupId(true); 58 72 add(valuesContainer); 59 73 74 // create the view of the actual values 60 75 final DataView<FacetField.Count> valuesView = createValuesView("facetValue"); 61 76 valuesContainer.add(valuesView); 62 77 78 // create the form for selection sort option and entering filter string 63 79 final Form optionsForm = createOptionsForm("options"); 64 80 optionsForm.setOutputMarkupId(true); … … 101 117 final DropDownChoice<SortParam<FieldValuesOrder>> sortSelect 102 118 = new FieldValueOrderSelector("sort", new PropertyModel<SortParam<FieldValuesOrder>>(valuesProvider, "sort")); 103 sortSelect.add(new AjaxFormComponentUpdatingBehavior("onchange") {119 sortSelect.add(new OnChangeAjaxBehavior() { 104 120 105 121 @Override … … 110 126 }); 111 127 options.add(sortSelect); 128 129 final TextField filterField = new TextField("filter", filterModel); 130 filterField.add(new AjaxFormComponentUpdatingBehavior("keyup") { 131 132 @Override 133 protected void onUpdate(AjaxRequestTarget target) { 134 target.add(valuesContainer); 135 } 136 }); 137 options.add(filterField); 112 138 return options; 113 139 }
Note: See TracChangeset
for help on using the changeset viewer.