List of usage examples for com.google.gwt.i18n.client NumberFormat getCurrencyFormat
public static NumberFormat getCurrencyFormat()
From source file:com.extjs.gxt.samples.client.examples.grid.GridExample.java
License:Open Source License
@Override protected void onRender(Element parent, int index) { super.onRender(parent, index); setLayout(new FlowLayout(10)); getAriaSupport().setPresentation(true); final NumberFormat currency = NumberFormat.getCurrencyFormat(); final NumberFormat number = NumberFormat.getFormat("0.00"); final NumberCellRenderer<Grid<Stock>> numberRenderer = new NumberCellRenderer<Grid<Stock>>(currency); GridCellRenderer<Stock> change = new GridCellRenderer<Stock>() { public String render(Stock model, String property, ColumnData config, int rowIndex, int colIndex, ListStore<Stock> store, Grid<Stock> grid) { double val = (Double) model.get(property); String style = val < 0 ? "red" : GXT.isHighContrastMode ? "#00ff5a" : "green"; String v = number.format(val); return "<span qtitle='" + cm.getColumnById(property).getHeader() + "' qtip='" + v + "' style='font-weight: bold;color:" + style + "'>" + v + "</span>"; }//from www . jav a 2 s. com }; GridCellRenderer<Stock> gridNumber = new GridCellRenderer<Stock>() { public String render(Stock model, String property, ColumnData config, int rowIndex, int colIndex, ListStore<Stock> store, Grid<Stock> grid) { return numberRenderer.render(null, property, model.get(property)); } }; List<ColumnConfig> configs = new ArrayList<ColumnConfig>(); ColumnConfig column = new ColumnConfig(); column.setId("name"); column.setHeader("Company"); column.setWidth(200); column.setRowHeader(true); configs.add(column); column = new ColumnConfig(); column.setId("symbol"); column.setHeader("Symbol"); column.setWidth(100); configs.add(column); column = new ColumnConfig(); column.setId("last"); column.setHeader("Last"); column.setAlignment(HorizontalAlignment.RIGHT); column.setWidth(75); column.setRenderer(gridNumber); configs.add(column); column = new ColumnConfig("change", "Change", 100); column.setAlignment(HorizontalAlignment.RIGHT); column.setRenderer(change); configs.add(column); column = new ColumnConfig("date", "Last Updated", 100); column.setAlignment(HorizontalAlignment.RIGHT); column.setDateTimeFormat(DateTimeFormat.getFormat("MM/dd/yyyy")); configs.add(column); ListStore<Stock> store = new ListStore<Stock>(); store.add(TestData.getStocks()); cm = new ColumnModel(configs); ContentPanel cp = new ContentPanel(); cp.setBodyBorder(true); cp.setIcon(Resources.ICONS.table()); cp.setHeading("Basic Grid"); cp.setButtonAlign(HorizontalAlignment.CENTER); cp.setLayout(new FitLayout()); cp.getHeader().setIconAltText("Grid Icon"); cp.setSize(600, 300); final Grid<Stock> grid = new Grid<Stock>(store, cm); grid.setStyleAttribute("borderTop", "none"); grid.setAutoExpandColumn("name"); grid.setBorders(false); grid.setStripeRows(true); grid.setColumnLines(true); grid.setColumnReordering(true); grid.getAriaSupport().setLabelledBy(cp.getHeader().getId() + "-label"); cp.add(grid); ToolBar toolBar = new ToolBar(); toolBar.getAriaSupport().setLabel("Grid Options"); toolBar.add(new LabelToolItem("Selection Mode: ")); final SimpleComboBox<String> type = new SimpleComboBox<String>(); type.getAriaSupport().setLabelledBy(toolBar.getItem(0).getId()); type.setTriggerAction(TriggerAction.ALL); type.setEditable(false); type.setFireChangeEventOnSetValue(true); type.setWidth(100); type.add("Row"); type.add("Cell"); type.setSimpleValue("Row"); type.addListener(Events.Change, new Listener<FieldEvent>() { public void handleEvent(FieldEvent be) { boolean cell = type.getSimpleValue().equals("Cell"); grid.getSelectionModel().deselectAll(); if (cell) { grid.setSelectionModel(new CellSelectionModel<Stock>()); } else { grid.setSelectionModel(new GridSelectionModel<Stock>()); } } }); toolBar.add(type); cp.setTopComponent(toolBar); add(cp); // needed to enable quicktips (qtitle for the heading and qtip for the // content) that are setup in the change GridCellRenderer new QuickTip(grid); }
From source file:com.extjs.gxt.samples.client.examples.grid.GridPluginsExample.java
License:Open Source License
public GridPluginsExample() { final NumberFormat currency = NumberFormat.getCurrencyFormat(); final NumberFormat number = NumberFormat.getFormat("0.00"); final NumberCellRenderer<Grid<Stock>> numberRenderer = new NumberCellRenderer<Grid<Stock>>(currency); change = new GridCellRenderer<Stock>() { public String render(Stock model, String property, ColumnData config, int rowIndex, int colIndex, ListStore<Stock> store, Grid<Stock> grid) { double val = (Double) model.get(property); String style = val < 0 ? "red" : "green"; return "<span style='color:" + style + "'>" + number.format(val) + "</span>"; }/*from w w w . jav a 2 s.c o m*/ }; gridNumber = new GridCellRenderer<Stock>() { public String render(Stock model, String property, ColumnData config, int rowIndex, int colIndex, ListStore<Stock> store, Grid<Stock> grid) { return numberRenderer.render(null, property, model.get(property)); } }; panel = new VerticalPanel(); panel.setSpacing(20); }
From source file:com.extjs.gxt.samples.client.examples.grid.MemoryPagingGridExample.java
License:Open Source License
@Override protected void onRender(Element parent, int index) { super.onRender(parent, index); setLayout(new FlowLayout(10)); // add paging support for a local collection of models PagingModelMemoryProxy proxy = new PagingModelMemoryProxy(TestData.getStocks()); // loader/*from w w w . j a v a 2s. c o m*/ PagingLoader<PagingLoadResult<ModelData>> loader = new BasePagingLoader<PagingLoadResult<ModelData>>(proxy); loader.setRemoteSort(true); ListStore<Stock> store = new ListStore<Stock>(loader); final PagingToolBar toolBar = new PagingToolBar(10); toolBar.bind(loader); loader.load(0, 10); final NumberFormat currency = NumberFormat.getCurrencyFormat(); final NumberFormat number = NumberFormat.getFormat("0.00"); final NumberCellRenderer<Grid<Stock>> numberRenderer = new NumberCellRenderer<Grid<Stock>>(currency); GridCellRenderer<Stock> change = new GridCellRenderer<Stock>() { public String render(Stock model, String property, ColumnData config, int rowIndex, int colIndex, ListStore<Stock> store, Grid<Stock> grid) { double val = (Double) model.get(property); String style = val < 0 ? "red" : "green"; return "<span style='color:" + style + "'>" + number.format(val) + "</span>"; } }; GridCellRenderer<Stock> gridNumber = new GridCellRenderer<Stock>() { public String render(Stock model, String property, ColumnData config, int rowIndex, int colIndex, ListStore<Stock> store, Grid<Stock> grid) { return numberRenderer.render(null, property, model.get(property)); } }; List<ColumnConfig> configs = new ArrayList<ColumnConfig>(); ColumnConfig column = new ColumnConfig(); column.setId("name"); column.setHeader("Company"); column.setWidth(200); configs.add(column); column = new ColumnConfig(); column.setId("symbol"); column.setHeader("Symbol"); column.setWidth(100); configs.add(column); column = new ColumnConfig(); column.setId("last"); column.setHeader("Last"); column.setAlignment(HorizontalAlignment.RIGHT); column.setWidth(75); column.setRenderer(gridNumber); configs.add(column); column = new ColumnConfig("change", "Change", 100); column.setAlignment(HorizontalAlignment.RIGHT); column.setRenderer(change); configs.add(column); column = new ColumnConfig("date", "Last Updated", 100); column.setAlignment(HorizontalAlignment.RIGHT); column.setDateTimeFormat(DateTimeFormat.getFormat("MM/dd/yyyy")); configs.add(column); ColumnModel cm = new ColumnModel(configs); ContentPanel cp = new ContentPanel(); cp.setFrame(true); cp.setHeading("Local Paging Grid"); cp.setIcon(Resources.ICONS.table()); cp.setButtonAlign(HorizontalAlignment.CENTER); cp.setLayout(new FitLayout()); cp.setBottomComponent(toolBar); cp.setSize(600, 200); Grid<Stock> grid = new Grid<Stock>(store, cm); grid.setBorders(true); grid.setAutoExpandColumn("name"); grid.getAriaSupport().setDescribedBy(toolBar.getId() + "-display"); cp.add(grid); add(cp); }
From source file:com.extjs.gxt.samples.client.examples.grid.RemoteFilterGridExample.java
License:Open Source License
@Override protected void onRender(Element parent, int index) { super.onRender(parent, index); setLayout(new FlowLayout(10)); getAriaSupport().setPresentation(true); final ExampleServiceAsync service = (ExampleServiceAsync) Registry.get(Examples.SERVICE); RpcProxy<PagingLoadResult<Stock>> proxy = new RpcProxy<PagingLoadResult<Stock>>() { @Override//from www . jav a2s . c om public void load(Object loadConfig, AsyncCallback<PagingLoadResult<Stock>> callback) { service.getStocks((FilterPagingLoadConfig) loadConfig, callback); } }; // loader final PagingLoader<PagingLoadResult<ModelData>> loader = new BasePagingLoader<PagingLoadResult<ModelData>>( proxy) { @Override protected Object newLoadConfig() { BasePagingLoadConfig config = new BaseFilterPagingLoadConfig(); return config; } }; loader.setRemoteSort(true); ListStore<Stock> store = new ListStore<Stock>(loader); final NumberFormat currency = NumberFormat.getCurrencyFormat(); final NumberFormat number = NumberFormat.getFormat("0.00"); final NumberCellRenderer<Grid<Stock>> numberRenderer = new NumberCellRenderer<Grid<Stock>>(currency); GridCellRenderer<Stock> change = new GridCellRenderer<Stock>() { public String render(Stock model, String property, ColumnData config, int rowIndex, int colIndex, ListStore<Stock> store, Grid<Stock> grid) { double val = (Double) model.get(property); String style = val < 0 ? "red" : GXT.isHighContrastMode ? "#00ff5a" : "green"; return "<span style='font-weight: bold;color:" + style + "'>" + number.format(val) + "</span>"; } }; GridCellRenderer<Stock> gridNumber = new GridCellRenderer<Stock>() { public String render(Stock model, String property, ColumnData config, int rowIndex, int colIndex, ListStore<Stock> store, Grid<Stock> grid) { return numberRenderer.render(null, property, model.get(property)); } }; List<ColumnConfig> configs = new ArrayList<ColumnConfig>(); ColumnConfig column = new ColumnConfig(); column.setId("name"); column.setHeader("Company"); column.setWidth(200); configs.add(column); column = new ColumnConfig(); column.setId("symbol"); column.setHeader("Symbol"); column.setWidth(100); configs.add(column); column = new ColumnConfig(); column.setId("last"); column.setHeader("Last"); column.setAlignment(HorizontalAlignment.RIGHT); column.setWidth(100); column.setRenderer(gridNumber); configs.add(column); column = new ColumnConfig("change", "Change", 100); column.setAlignment(HorizontalAlignment.RIGHT); column.setRenderer(change); configs.add(column); column = new ColumnConfig("date", "Last Updated", 120); column.setAlignment(HorizontalAlignment.RIGHT); column.setDateTimeFormat(DateTimeFormat.getFormat("MM/dd/yyyy")); configs.add(column); column = new ColumnConfig("split", "Split", 75); column.setRenderer(new GridCellRenderer<Stock>() { public Object render(Stock model, String property, ColumnData config, int rowIndex, int colIndex, ListStore<Stock> store, Grid<Stock> grid) { Boolean b = model.get(property); return b != null && b.booleanValue() ? "Yes" : "No"; } }); configs.add(column); column = new ColumnConfig("type", "Type", 75); configs.add(column); ColumnModel cm = new ColumnModel(configs); ContentPanel cp = new ContentPanel(); cp.setBodyBorder(true); cp.setIcon(Resources.ICONS.table()); cp.setHeading("Remote Filter Grid"); cp.setButtonAlign(HorizontalAlignment.CENTER); cp.setLayout(new FitLayout()); cp.setSize(660, 300); GridFilters filters = new GridFilters(); NumericFilter last = new NumericFilter("last"); NumericFilter filter = new NumericFilter("change"); StringFilter nameFilter = new StringFilter("name"); DateFilter dateFilter = new DateFilter("date"); BooleanFilter booleanFilter = new BooleanFilter("split"); ListStore<ModelData> typeStore = new ListStore<ModelData>(); typeStore.add(type("Auto")); typeStore.add(type("Media")); typeStore.add(type("Medical")); typeStore.add(type("Tech")); ListFilter listFilter = new ListFilter("type", typeStore); listFilter.setDisplayProperty("type"); filters.addFilter(last); filters.addFilter(nameFilter); filters.addFilter(filter); filters.addFilter(dateFilter); filters.addFilter(booleanFilter); filters.addFilter(listFilter); final Grid<Stock> grid = new Grid<Stock>(store, cm); grid.addListener(Events.Attach, new Listener<BaseEvent>() { public void handleEvent(BaseEvent be) { loader.load(0, 25); } }); grid.getView().setForceFit(true); grid.setStyleAttribute("borderTop", "none"); grid.setAutoExpandColumn("name"); grid.setBorders(false); grid.setStripeRows(true); grid.setColumnLines(true); grid.addPlugin(filters); cp.add(grid); final PagingToolBar toolBar = new PagingToolBar(25); toolBar.bind(loader); cp.setBottomComponent(toolBar); add(cp); }
From source file:com.extjs.gxt.samples.client.examples.grid.RowEditorExample.java
License:Open Source License
@Override protected void onRender(Element parent, int index) { super.onRender(parent, index); setLayout(new FlowLayout(10)); List<ColumnConfig> configs = new ArrayList<ColumnConfig>(); ColumnConfig column = new ColumnConfig(); column.setId("name"); column.setHeader("Common Name"); column.setWidth(220);/*w w w. j a va2 s. com*/ TextField<String> text = new TextField<String>(); text.setAllowBlank(false); column.setEditor(new CellEditor(text)); configs.add(column); final SimpleComboBox<String> combo = new SimpleComboBox<String>(); combo.setForceSelection(true); combo.setTriggerAction(TriggerAction.ALL); combo.add("Shade"); combo.add("Mostly Shady"); combo.add("Sun or Shade"); combo.add("Mostly Sunny"); combo.add("Sunny"); CellEditor editor = new CellEditor(combo) { @Override public Object preProcessValue(Object value) { if (value == null) { return value; } return combo.findModel(value.toString()); } @Override public Object postProcessValue(Object value) { if (value == null) { return value; } return ((ModelData) value).get("value"); } }; column = new ColumnConfig(); column.setId("light"); column.setHeader("Light"); column.setWidth(130); column.setEditor(editor); configs.add(column); column = new ColumnConfig(); column.setId("price"); column.setHeader("Price"); column.setAlignment(HorizontalAlignment.RIGHT); column.setWidth(70); column.setNumberFormat(NumberFormat.getCurrencyFormat()); column.setEditor(new CellEditor(new NumberField())); configs.add(column); DateField dateField = new DateField(); dateField.getPropertyEditor().setFormat(DateTimeFormat.getFormat("MM/dd/y")); column = new ColumnConfig(); column.setId("available"); column.setHeader("Available"); column.setWidth(95); column.setEditor(new CellEditor(dateField)); column.setDateTimeFormat(DateTimeFormat.getFormat("MMM dd yyyy")); configs.add(column); CheckColumnConfig checkColumn = new CheckColumnConfig("indoor", "Indoor?", 55); CellEditor checkBoxEditor = new CellEditor(new CheckBox()); checkColumn.setEditor(checkBoxEditor); configs.add(checkColumn); final ListStore<Plant> store = new ListStore<Plant>(); store.add(TestData.getPlants()); ColumnModel cm = new ColumnModel(configs); ContentPanel cp = new ContentPanel(); cp.setIcon(Resources.ICONS.table()); cp.setHeading("Edit Plants with RowEditor"); cp.setFrame(true); cp.setSize(600, 300); cp.setLayout(new FitLayout()); final RowEditor<Plant> re = new RowEditor<Plant>(); final Grid<Plant> grid = new Grid<Plant>(store, cm); grid.setAutoExpandColumn("name"); grid.setBorders(true); grid.addPlugin(checkColumn); grid.addPlugin(re); grid.getAriaSupport().setLabelledBy(cp.getHeader().getId() + "-label"); cp.add(grid); ToolBar toolBar = new ToolBar(); Button add = new Button("Add Plant"); add.addSelectionListener(new SelectionListener<ButtonEvent>() { @Override public void componentSelected(ButtonEvent ce) { Plant plant = new Plant(); plant.setName("New Plant 1"); plant.setLight("Mostly Shady"); plant.setPrice(0); plant.setAvailable(new DateWrapper().clearTime().asDate()); plant.setIndoor(false); re.stopEditing(false); store.insert(plant, 0); re.startEditing(store.indexOf(plant), true); } }); toolBar.add(add); cp.setTopComponent(toolBar); cp.setButtonAlign(HorizontalAlignment.CENTER); cp.addButton(new Button("Reset", new SelectionListener<ButtonEvent>() { @Override public void componentSelected(ButtonEvent ce) { store.rejectChanges(); } })); cp.addButton(new Button("Save", new SelectionListener<ButtonEvent>() { @Override public void componentSelected(ButtonEvent ce) { store.commitChanges(); } })); add(cp); }
From source file:com.extjs.gxt.samples.client.examples.grid.TotalsGridExample.java
License:Open Source License
@Override protected void onRender(Element parent, int index) { super.onRender(parent, index); setLayout(new FlowLayout(10)); List<Task> tasks = TestData.getTasks(); GroupingStore<Task> store = new GroupingStore<Task>(); store.groupBy("project"); store.add(tasks);//from w w w . j a v a 2s . c om List<ColumnConfig> columns = new ArrayList<ColumnConfig>(); SummaryColumnConfig<Integer> desc = new SummaryColumnConfig<Integer>("description", "Task", 65); desc.setSummaryType(SummaryType.COUNT); desc.setSummaryRenderer(new SummaryRenderer() { public String render(Number value, Map<String, Number> data) { return value.intValue() > 1 ? "(" + value.intValue() + " Tasks)" : "(1 Task)"; } }); SummaryColumnConfig<Double> project = new SummaryColumnConfig<Double>("project", "Project", 55); SummaryColumnConfig<Double> due = new SummaryColumnConfig<Double>("due", "Due Date", 20); SummaryColumnConfig<Double> estimate = new SummaryColumnConfig<Double>("estimate", "Estimate", 20); estimate.setRenderer(new GridCellRenderer<Task>() { public String render(Task model, String property, ColumnData config, int rowIndex, int colIndex, ListStore<Task> store, Grid<Task> grid) { return model.get(property) + " hours"; } }); estimate.setSummaryType(SummaryType.SUM); estimate.setSummaryRenderer(new SummaryRenderer() { public String render(Number value, Map<String, Number> data) { return value.intValue() + " hours"; } }); estimate.setEditor(new CellEditor(new NumberField())); SummaryColumnConfig<Double> rate = new SummaryColumnConfig<Double>("rate", "Rate", 20); rate.setNumberFormat(NumberFormat.getCurrencyFormat()); rate.setSummaryFormat(NumberFormat.getCurrencyFormat()); rate.setSummaryType(SummaryType.AVG); rate.setAlignment(HorizontalAlignment.RIGHT); NumberField nf = new NumberField(); nf.setAutoValidate(true); CellEditor ce = new CellEditor(nf); ce.setCancelOnEsc(true); rate.setEditor(ce); SummaryColumnConfig<Double> cost = new SummaryColumnConfig<Double>("cost", "Cost", 20); cost.setSummaryFormat(NumberFormat.getCurrencyFormat()); cost.setSummaryType(new SummaryType<Double>() { @Override public Double render(Object v, ModelData m, String field, Map<String, Object> data) { if (v == null) { v = 0d; } Task task = (Task) m; return ((Double) v).doubleValue() + (task.getEstimate() * task.getRate()); } }); cost.setAlignment(HorizontalAlignment.RIGHT); cost.setRenderer(new GridCellRenderer<Task>() { public String render(Task model, String property, ColumnData config, int rowIndex, int colIndex, ListStore<Task> store, Grid<Task> grid) { Task task = (Task) model; return NumberFormat.getCurrencyFormat().format(task.getRate() * task.getEstimate()); } }); columns.add(desc); columns.add(project); columns.add(due); columns.add(estimate); columns.add(rate); columns.add(cost); ColumnModel cm = new ColumnModel(columns); GroupSummaryView summary = new GroupSummaryView(); summary.setForceFit(true); summary.setShowGroupedColumn(false); EditorGrid<Task> grid = new EditorGrid<Task>(store, cm); grid.setBorders(true); grid.setView(summary); grid.getView().setShowDirtyCells(false); ContentPanel panel = new ContentPanel(); panel.setHeading("Sponsored Projects"); panel.setIcon(Resources.ICONS.table()); panel.setCollapsible(true); panel.setFrame(true); panel.setSize(800, 450); panel.setLayout(new FitLayout()); panel.add(grid); add(panel); }
From source file:com.extjs.gxt.samples.client.examples.grid.WidgetRenderingExample.java
License:Open Source License
@Override protected void onRender(Element parent, int index) { super.onRender(parent, index); setLayout(new FlowLayout(10)); GridCellRenderer<Stock> buttonRenderer = new GridCellRenderer<Stock>() { private boolean init; public Object render(final Stock model, String property, ColumnData config, final int rowIndex, final int colIndex, ListStore<Stock> store, Grid<Stock> grid) { if (!init) { init = true;/*from w w w. j av a 2 s . c o m*/ grid.addListener(Events.ColumnResize, new Listener<GridEvent<Stock>>() { public void handleEvent(GridEvent<Stock> be) { for (int i = 0; i < be.getGrid().getStore().getCount(); i++) { if (be.getGrid().getView().getWidget(i, be.getColIndex()) != null && be.getGrid() .getView().getWidget(i, be.getColIndex()) instanceof BoxComponent) { ((BoxComponent) be.getGrid().getView().getWidget(i, be.getColIndex())) .setWidth(be.getWidth() - 10); } } } }); } Button b = new Button((String) model.get(property), new SelectionListener<ButtonEvent>() { @Override public void componentSelected(ButtonEvent ce) { Info.display(model.getName(), "<ul><li>" + model.getSymbol() + "</li></ul>"); } }); b.setWidth(grid.getColumnModel().getColumnWidth(colIndex) - 10); b.setToolTip("Click for more information"); return b; } }; final NumberFormat currency = NumberFormat.getCurrencyFormat(); final NumberFormat number = NumberFormat.getFormat("0.00"); final NumberCellRenderer<Grid<Stock>> numberRenderer = new NumberCellRenderer<Grid<Stock>>(currency); GridCellRenderer<Stock> change = new GridCellRenderer<Stock>() { public String render(Stock model, String property, ColumnData config, int rowIndex, int colIndex, ListStore<Stock> store, Grid<Stock> grid) { double val = (Double) model.get(property); String style = val < 0 ? "red" : "green"; return "<span style='color:" + style + "'>" + number.format(val) + "</span>"; } }; GridCellRenderer<Stock> gridNumber = new GridCellRenderer<Stock>() { public String render(Stock model, String property, ColumnData config, int rowIndex, int colIndex, ListStore<Stock> stor, Grid<Stock> grid) { return numberRenderer.render(null, property, model.get(property)); } }; List<ColumnConfig> configs = new ArrayList<ColumnConfig>(); ColumnConfig column = new ColumnConfig(); column.setId("name"); column.setHeader("Company"); column.setWidth(200); configs.add(column); column = new ColumnConfig(); column.setId("symbol"); column.setHeader("Symbol"); column.setWidth(100); column.setRenderer(buttonRenderer); configs.add(column); column = new ColumnConfig(); column.setId("last"); column.setHeader("Last"); column.setAlignment(HorizontalAlignment.RIGHT); column.setWidth(75); column.setRenderer(gridNumber); configs.add(column); column = new ColumnConfig("change", "Change", 100); column.setAlignment(HorizontalAlignment.RIGHT); column.setRenderer(change); configs.add(column); column = new ColumnConfig("date", "Last Updated", 100); column.setAlignment(HorizontalAlignment.RIGHT); column.setDateTimeFormat(DateTimeFormat.getFormat("MM/dd/yyyy")); configs.add(column); final ListStore<Stock> store = new ListStore<Stock>(); store.add(TestData.getStocks()); ColumnModel cm = new ColumnModel(configs); ContentPanel cp = new ContentPanel(); cp.setBodyBorder(false); cp.setIcon(Resources.ICONS.table()); cp.setHeading("Widget Renderer Grid"); cp.setButtonAlign(HorizontalAlignment.CENTER); cp.setLayout(new FitLayout()); cp.setSize(600, 300); Grid<Stock> grid = new Grid<Stock>(store, cm); grid.setStyleAttribute("borderTop", "none"); grid.setAutoExpandColumn("name"); grid.setBorders(true); cp.add(grid); add(cp); }
From source file:com.extjs.gxt.samples.client.examples.portal.PortalExample.java
License:Open Source License
private Grid<Stock> createGrid() { final NumberFormat currency = NumberFormat.getCurrencyFormat(); final NumberCellRenderer<Grid<Stock>> numberRenderer = new NumberCellRenderer<Grid<Stock>>(currency); GridCellRenderer<Stock> gridNumber = new GridCellRenderer<Stock>() { public String render(Stock model, String property, ColumnData config, int rowIndex, int colIndex, ListStore<Stock> store, Grid<Stock> grid) { return numberRenderer.render(null, property, model.get(property)); }//from w w w. ja v a 2 s .c o m }; List<Stock> stocks = TestData.getStocks(); List<ColumnConfig> configs = new ArrayList<ColumnConfig>(); ColumnConfig column = new ColumnConfig(); column.setId("name"); column.setHeader("Company"); column.setWidth(200); configs.add(column); column = new ColumnConfig(); column.setId("symbol"); column.setHeader("Symbol"); column.setWidth(50); configs.add(column); column = new ColumnConfig(); column.setId("last"); column.setHeader("Last"); column.setAlignment(HorizontalAlignment.RIGHT); column.setWidth(50); column.setRenderer(gridNumber); configs.add(column); ListStore<Stock> store = new ListStore<Stock>(); store.add(stocks); ColumnModel cm = new ColumnModel(configs); Grid<Stock> g = new Grid<Stock>(store, cm); g.setAutoExpandColumn("name"); g.setBorders(true); return g; }
From source file:com.extjs.gxt.samples.desktop.client.DesktopApp.java
License:Open Source License
private Window createGridWindow() { Window w = new Window(); w.setIcon(IconHelper.createStyle("icon-grid")); w.setMinimizable(true);/*from www . j av a 2 s . com*/ w.setMaximizable(true); w.setHeading("Grid Window"); w.setSize(500, 400); w.setLayout(new FitLayout()); GroupingStore<Stock> store = new GroupingStore<Stock>(); store.add(ResourcesData.getCompanies()); store.groupBy("industry"); ColumnConfig company = new ColumnConfig("name", "Company", 60); ColumnConfig price = new ColumnConfig("open", "Price", 20); price.setNumberFormat(NumberFormat.getCurrencyFormat()); ColumnConfig change = new ColumnConfig("change", "Change", 20); ColumnConfig industry = new ColumnConfig("industry", "Industry", 20); ColumnConfig last = new ColumnConfig("date", "Last Updated", 20); last.setDateTimeFormat(DateTimeFormat.getFormat("MM/dd/y")); List<ColumnConfig> config = new ArrayList<ColumnConfig>(); config.add(company); config.add(price); config.add(change); config.add(industry); config.add(last); final ColumnModel cm = new ColumnModel(config); GroupingView view = new GroupingView(); view.setForceFit(true); view.setGroupRenderer(new GridGroupRenderer() { public String render(GroupColumnData data) { String f = cm.getColumnById(data.field).getHeader(); String l = data.models.size() == 1 ? "Item" : "Items"; return f + ": " + data.group + " (" + data.models.size() + " " + l + ")"; } }); Grid<Stock> grid = new Grid<Stock>(store, cm); grid.setView(view); grid.setBorders(true); w.add(grid); return w; }
From source file:com.extjs.gxt.ui.client.util.Format.java
License:sencha.com license
/** * Provides the standard currency format for the default locale. * /*from ww w. j a v a2 s .c o m*/ * @param value the value * @return the currency value */ public static String currency(double value) { return NumberFormat.getCurrencyFormat().format(value); }