package org.opennms.features.gwt.graph.resource.list.client.view; import java.util.List; import com.google.gwt.core.client.GWT; import com.google.gwt.dom.client.Style.Unit; import com.google.gwt.event.dom.client.ClickEvent; import com.google.gwt.uibinder.client.UiBinder; import com.google.gwt.uibinder.client.UiField; import com.google.gwt.uibinder.client.UiHandler; import com.google.gwt.user.cellview.client.SimplePager; import com.google.gwt.user.cellview.client.SimplePager.TextLocation; import com.google.gwt.user.client.Window; import com.google.gwt.user.client.ui.Button; import com.google.gwt.user.client.ui.Composite; import com.google.gwt.user.client.ui.FlowPanel; import com.google.gwt.user.client.ui.LayoutPanel; import com.google.gwt.user.client.ui.Widget; import com.google.gwt.view.client.ListDataProvider; import com.google.gwt.view.client.SelectionChangeEvent; import com.google.gwt.view.client.SelectionChangeEvent.Handler; public class DefaultResourceListViewImpl extends Composite implements DefaultResourceListView<ResourceListItem> { private static DefaultResourceListViewImplUiBinder uiBinder = GWT.create(DefaultResourceListViewImplUiBinder.class); interface DefaultResourceListViewImplUiBinder extends UiBinder<Widget, DefaultResourceListViewImpl> { } @UiField LayoutPanel m_layoutPanel; @UiField ResourceTable m_resourceTable; @UiField Button m_searchBtn; @UiField FlowPanel m_simplePagerContainer; private ListDataProvider<ResourceListItem> m_dataProvider; private Presenter<ResourceListItem> m_presenter; public DefaultResourceListViewImpl() { initWidget(uiBinder.createAndBindUi(this)); m_layoutPanel.setSize("100%", "335px"); m_dataProvider = new ListDataProvider<ResourceListItem>(); m_dataProvider.addDataDisplay(m_resourceTable); SimplePager pager = new SimplePager(TextLocation.CENTER); pager.setStyleName("onms-table-no-borders-margin"); pager.getElement().getStyle().setBackgroundColor("#E0E0E0"); pager.getElement().getStyle().setWidth(100, Unit.PCT); pager.setDisplay(m_resourceTable); m_simplePagerContainer.add(pager); m_resourceTable.getSelectionModel().addSelectionChangeHandler(new Handler() { @Override public void onSelectionChange(SelectionChangeEvent event) { m_presenter.onResourceItemSelected(); } }); m_resourceTable.setWidth("100%"); } @UiHandler("m_searchBtn") public void onSearchButtonClick(ClickEvent event) { m_presenter.onSearchButtonClicked(); } @Override public void setDataList(List<ResourceListItem> dataList) { m_dataProvider.setList(dataList); } @Override public void setPresenter(Presenter<ResourceListItem> presenter) { m_presenter = presenter; } @Override public void showWarning() { Window.alert("Please Choose A Resource"); } @Override public ResourceListItem getSelectedResource() { return m_resourceTable.getSelectedResourceItem(); } }