1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104
|
package client.Panels.GridPanel;
import biz.manex.argf.core.datamodel.TestDataModel;
import client.PortalServiceAsync;
import com.extjs.gxt.ui.client.Registry;
import com.extjs.gxt.ui.client.data.*;
import com.extjs.gxt.ui.client.store.ListStore;
import com.extjs.gxt.ui.client.widget.ContentPanel;
import com.extjs.gxt.ui.client.widget.LayoutContainer;
import com.extjs.gxt.ui.client.widget.grid.ColumnConfig;
import com.extjs.gxt.ui.client.widget.grid.ColumnModel;
import com.extjs.gxt.ui.client.widget.grid.Grid;
import com.extjs.gxt.ui.client.widget.grid.GridView;
import com.extjs.gxt.ui.client.widget.layout.FitLayout;
import com.google.gwt.user.client.rpc.AsyncCallback;
import java.util.ArrayList;
import java.util.List;
/**
* Created by IntelliJ IDEA.
* User: emeric
* Date: 24-mars-2010
* Time: 20:46:32
*/
public class TestPanel extends LayoutContainer {
private final PortalServiceAsync svc = (PortalServiceAsync)
Registry.get("portalService");
private ContentPanel cp; // Contains all widgets
private ListLoader loader;
public TestPanel() {
cp = new ContentPanel();
cp.setLayoutOnChange(true);
start();
}
private void start() {
final List<ColumnConfig> configs = new ArrayList<ColumnConfig>();
ColumnConfig column = new ColumnConfig();
column.setId("id");
column.setHeader("id");
column.setWidth(100);
configs.add(column);
column = new ColumnConfig();
column.setId("nom");
column.setHeader("nom");
column.setWidth(100);
configs.add(column);
column = new ColumnConfig();
column.setId("prenom");
column.setHeader("prenom");
column.setWidth(100);
configs.add(column);
loader = getLoader();
final ListStore<BaseModel> store = new ListStore<BaseModel>(loader);
loader.load();
final ColumnModel cm = new ColumnModel(configs);
final Grid<BaseModel> grid = new Grid<BaseModel>(store, cm);
GridView view = new GridView();
view.setAutoFill(true);
grid.setView(view);
grid.getView().setForceFit(true);
cp.setLayoutOnChange(true);
cp.setBodyBorder(false);
cp.setHeading("Test panel");
cp.setLayout(new FitLayout());
cp.setHeight(180);
cp.setAutoWidth(true);
grid.setAutoWidth(true);
grid.setStyleAttribute("borderTop", "none");
grid.setBorders(true);
grid.setStripeRows(true);
cp.add(grid);
store.commitChanges();
add(cp);
}
public LayoutContainer getWidget() {
return cp;
}
protected PagingLoader getLoader() {
BeanModelReader reader;
RpcProxy proxy;
proxy = new RpcProxy<List<TestDataModel>>() {
@Override
public void load(final Object loadConfig, final AsyncCallback<List<TestDataModel>> callback) {
svc.getAllTest(callback);
}
};
reader = new BeanModelReader();
loader = new BasePagingLoader(proxy, reader);
((BasePagingLoader) loader).setRemoteSort(true);
return (BasePagingLoader) loader;
}
} |