private DeviceColumnPopupPanel.Node addNode( ArrayList<SearchResultFieldDesc> descs, DeviceColumnPopupPanel.Node parent, ClientMessage msg, int column) { return parent.addNode( msg, column, DeviceSearchResultTable.isVisible(descs.get(column).getWidth())); }
@Override public void showSearchResult(SearchResult result) { if (table == null) { table = new DeviceSearchResultTable(result.getDescs(), selection); table.setRangeChangeHandler(presenter); table.setClickHandler(presenter); table.load(); resultPanel.add(table); final DeviceColumnPopupPanel panel = new DeviceColumnPopupPanel( new DeviceColumnPopupPanel.Presenter() { @Override public void onValueChange(int column, boolean value) { if (table != null) { table.setVisible(column, value); } } }); columnButton.addClickHandler( new ClickHandler() { @Override public void onClick(ClickEvent event) { panel.popup(columnButton); } }); initColumnPanel(result.getDescs(), panel); } table.setData(result); if (table.getPageSize() != DevicePageSize.getPageSize()) { table.setPageSize(DevicePageSize.getPageSize()); pageSizeList.setSelectedIndex(DevicePageSize.getPageSizeSelectedIndex()); } }