2008/3/19, Martin Makundi <[EMAIL PROTECTED]>:
>
> Can you show any binding code related to your case?
>
> DocumentDataProvider dataProvider = new
DocumentDataProvider(documentService);
DefaultDataTable documentTable = new DefaultDataTable("document-table",
createColumns(), dataProvider, 10);
final FilterForm form = new FilterForm("filter-form", dataProvider) {
private static final long serialVersionUID = 1L;
@Override
protected void onSubmit() {
documentTable.setCurrentPage(0);
}
};
documentTable.addTopToolbar(new FilterToolbar(documentTable, form,
dataProvider));
form.add(documentTable);
private List<IColumn> createColumns() {
List<IColumn> columns = new ArrayList<IColumn>();
columns.add(new TextFilteredPropertyColumn(
new ResourceModel("field.document.name"), "name", "name") {
public void populateItem(final Item cellItem,
final String componentId, final IModel docModel) {
cellItem.add(new EditDocumentNamePanel(componentId, docModel));
}
});
columns.add(new TextFilteredPropertyColumn(
new ResourceModel("field.document.path"), "path", "path"));
columns.add(new ChoiceFilteredPropertyColumn(
new ResourceModel("field.document.mimetype"), "mimetype",
"mimetype",
new LoadableDetachableModel() {
@Override
protected Object load() {
List<String> mimeTypes = documentService.getMimeTypes();
mimeTypes.add(0, null);
return mimeTypes;
}
}
));
columns.add(new FilteredAbstractColumn(
new ResourceModel("form.common.filter")) {
public Component getFilter(final String id, final FilterForm form) {
return new GoAndClearFilter(id, form);
}
public void populateItem(final Item cellItem,
final String componentId, final IModel docModel) {
cellItem.add(new DocumentActionPanel(componentId, docModel));
}
});
return columns;
}
Markup:
<div style="margin-top:25px;">
<form wicket:id="filter-form">
<input type="hidden" name="tracker" wicket:id="focus-tracker"/>
<table class="dataview" wicket:id="document-table"></table>
<span wicket:id="focus-restore">[call to focus restore
script]</span>
</form>
</div>
Very similar to the phonebook example.
Kai