List of usage examples for com.google.gwt.user.cellview.client CellList getRowElement
public Element getRowElement(int indexOnPage)
From source file:com.retech.reader.web.client.home.SearchPanel.java
License:Apache License
@Override public void start(final AcceptsOneWidget panel, final EventBus eventBus) { selectModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() { @Override/*from w ww. ja va 2 s . c o m*/ public void onSelectionChange(final SelectionChangeEvent event) { placeController.goTo(base.get().setPath(IssueEditor.class.getName()) .setParameter(selectModel.getLastSelectedObject().stableId())); } }); cellList = new CellList<IssueProxy>(cell, resources); cellList.setSelectionModel(selectModel); cellList.addHandler(new LoadingStateChangeEvent.Handler() { @Override public void onLoadingStateChanged(final LoadingStateChangeEvent event) { event.getLoadingState(); CellList cellListProxy = (CellList) event.getSource(); cellListProxy.getVisibleItems(); } }, LoadingStateChangeEvent.TYPE); cellList.addHandler(new ValueChangeHandler<IssueProxy>() { @Override public void onValueChange(final ValueChangeEvent<IssueProxy> event) { CellList<IssueProxy> cellListProxy = (CellList<IssueProxy>) event.getSource(); List<IssueProxy> proxys = cellListProxy.getVisibleItems(); int i = 0; for (final IssueProxy proxy : proxys) { final Element elm = cellListProxy.getRowElement(i); new BaseReceiver<ResourceProxy>() { @Override public void onSuccessAndCached(final ResourceProxy resourceProxy) { Element imageElm = elm.getFirstChildElement().getFirstChildElement() .getFirstChildElement().getFirstChildElement(); imageElm.setInnerHTML("<img width='60px' height='60px' src='data:" + resourceProxy.getMimeType().getType() + ";base64," + resourceProxy.getDataString() + "'/>"); } @Override public Request<ResourceProxy> provideRequest() { return f.resource().getImage(proxy); } }.setKeyForProxy(proxy.stableId(), ResourceProxy.class.getName()).fire(); i++; } } }, ValueChangeEvent.getType()); this.setWaveContent(cellList); if (!bookDataProvider.getDataDisplays().contains(cellList)) { bookDataProvider.addDataDisplay(cellList); } }