package org.akaza.openclinica.control; import org.akaza.openclinica.i18n.util.ResourceBundleProvider; import org.jmesa.view.editor.AbstractFilterEditor; import org.jmesa.view.html.HtmlBuilder; import org.jmesa.view.html.toolbar.AbstractItem; import org.jmesa.view.html.toolbar.ClearItemRenderer; import org.jmesa.view.html.toolbar.FilterItemRenderer; import org.jmesa.view.html.toolbar.ToolbarItem; import org.jmesa.view.html.toolbar.ToolbarItemRenderer; import org.jmesa.view.html.toolbar.ToolbarItemType; import java.util.Locale; import java.util.ResourceBundle; public class DefaultActionsEditor extends AbstractFilterEditor { private ResourceBundle resword; public DefaultActionsEditor() { // TODO Auto-generated constructor stub } public DefaultActionsEditor(Locale locale) { resword = ResourceBundleProvider.getWordsBundle(locale); } public Object getValue() { HtmlBuilder html = new HtmlBuilder(); html.append(createFilterItem().getToolbarItemRenderer().render()); html.append(" "); html.append(createResetFilterItem().getToolbarItemRenderer().render()); return html.toString(); } public ToolbarItem createFilterItem() { FilterItem item = new FilterItem(); item.setCode(ToolbarItemType.FILTER_ITEM.toCode()); ToolbarItemRenderer renderer = new FilterItemRenderer(item, getCoreContext()); renderer.setOnInvokeAction("onInvokeAction"); item.setToolbarItemRenderer(renderer); return item; } public ToolbarItem createResetFilterItem() { ResetFilterItem item = new ResetFilterItem(); item.setCode(ToolbarItemType.CLEAR_ITEM.toCode()); ToolbarItemRenderer renderer = new ClearItemRenderer(item, getCoreContext()); renderer.setOnInvokeAction("onInvokeAction"); item.setToolbarItemRenderer(renderer); return item; } private class FilterItem extends AbstractItem { @Override public String disabled() { return null; } @Override public String enabled() { HtmlBuilder html = new HtmlBuilder(); html.a().href(); html.quote(); html.append(getAction()); html.quote().close(); html.nbsp().append(resword.getString("table_apply_filter")).nbsp().aEnd(); return html.toString(); } } private class ResetFilterItem extends AbstractItem { @Override public String disabled() { return null; } @Override public String enabled() { HtmlBuilder html = new HtmlBuilder(); html.a().href(); html.quote(); html.append(getAction()); html.quote().close(); html.nbsp().append(resword.getString("table_clear_filter")).nbsp().aEnd(); return html.toString(); } } }