List of usage examples for com.google.gwt.i18n.client NumberFormat getFormat
public static NumberFormat getFormat(String pattern)
NumberFormat
instance for the default locale using the specified pattern and the default currencyCode. From source file:strat.mining.multipool.stats.client.mvp.view.coinsolver.impl.PaidoutViewImpl.java
License:Open Source License
public PaidoutViewImpl(String title) { paidoutByAddress = new HashMap<String, List<AddressPaidoutDTO>>(); this.fireHideEvent = true; window = new Window(); window.setHeaderVisible(true);/*from ww w . java 2 s . c o m*/ window.setHeadingText(title); window.setHeight(600); window.setWidth(550); window.setMaximizable(true); window.setCollapsible(true); window.setResizable(true); window.addMaximizeHandler(new MaximizeHandler() { public void onMaximize(MaximizeEvent event) { window.expand(); } }); mainContainer = new BorderLayoutContainer(); chartsContainer = new VerticalLayoutContainer(); paidoutChart = new Chart(); paidoutChart.setChartTitleText("Paidouts"); paidoutChart.setZoomType(BaseChart.ZoomType.X); paidoutChart.setSeriesPlotOptions(new SeriesPlotOptions().setMarker( new Marker().setEnabled(false).setHoverState(new Marker().setEnabled(true).setRadius(5)))); paidoutChart.getXAxis().setType(Axis.Type.DATE_TIME).setAxisTitleText("Date"); paidoutChart.getYAxis(0).setType(Axis.Type.LINEAR).setAxisTitleText("BTC (Daily)"); paidoutChart.getYAxis(0).setMinorTickIntervalAuto(); paidoutChart.getYAxis(0).setGridLineWidth(2); paidoutChart.getYAxis(1).setType(Axis.Type.LINEAR).setAxisTitleText("BTC (Total)"); paidoutChart.getYAxis(1).setOpposite(true); paidoutChart.getYAxis(1).setMin(0); paidoutChart.getYAxis(1).setMinorTickIntervalAuto(); paidoutChart.getYAxis(1).setGridLineWidth(2); final DateTimeFormat dtf = DateTimeFormat.getFormat(PredefinedFormat.DATE_MEDIUM); paidoutChart.setToolTip(new ToolTip().setFormatter(new ToolTipFormatter() { public String format(ToolTipData toolTipData) { int nbSeries = toolTipData.getPointsLength(); String result = "<b>" + dtf.format(new Date(toolTipData.getXAsLong())) + "</b>"; for (int i = 0; i < nbSeries; i++) { result += "<br/><b>" + toolTipData.getSeriesName(i).split(":")[0] + ":</b> " + formatBTCValue(toolTipData.getYAsDouble(i)); } result += "<br/><b>Day total:</b> " + formatBTCValue(toolTipData.getTotal(0)); result += "<br/><b>Total paidout:</b> " + formatBTCValue(toolTipData.getTotal(1)); return result; } }).setShared(true).setFollowPointer(true)); chartsContainer.addResizeHandler(new ResizeHandler() { public void onResize(ResizeEvent event) { Scheduler.get().scheduleDeferred(new ScheduledCommand() { public void execute() { paidoutChart.setSizeToMatchContainer(); } }); } }); paidoutStore = new ListStore<AddressPaidoutDTO>(propertyAccess.key()); ColumnConfig<AddressPaidoutDTO, Date> dateColumn = new ColumnConfig<AddressPaidoutDTO, Date>( propertyAccess.time(), 50, "Date"); dateColumn.setWidth(125); dateColumn.setResizable(true); dateColumn.setCell(new DateCell()); ColumnConfig<AddressPaidoutDTO, String> transactionIdColumn = new ColumnConfig<AddressPaidoutDTO, String>( propertyAccess.transactionId(), 100, "Transaction Id"); transactionIdColumn.setWidth(230); transactionIdColumn.setResizable(true); transactionIdColumn.setCell(new BlockChainCell()); ColumnConfig<AddressPaidoutDTO, Float> amountColumn = new ColumnConfig<AddressPaidoutDTO, Float>( propertyAccess.amount(), 75, "Amount"); amountColumn.setWidth(90); amountColumn.setResizable(true); ColumnConfig<AddressPaidoutDTO, Boolean> bonusColumn = new ColumnConfig<AddressPaidoutDTO, Boolean>( propertyAccess.isBonus(), 75, "Bonus"); bonusColumn.setWidth(80); bonusColumn.setResizable(false); bonusColumn.setCell(new BooleanImageCell(ClientResources.INSTANCE.winner(), null)); List<ColumnConfig<AddressPaidoutDTO, ?>> columns = new ArrayList<ColumnConfig<AddressPaidoutDTO, ?>>(); columns.add(dateColumn); columns.add(transactionIdColumn); columns.add(amountColumn); columns.add(bonusColumn); final ColumnModel<AddressPaidoutDTO> columnModel = new ColumnModel<AddressPaidoutDTO>(columns); AggregationRowConfig<AddressPaidoutDTO> total = new AggregationRowConfig<AddressPaidoutDTO>(); total.setRenderer(transactionIdColumn, new AggregationSafeHtmlRenderer<AddressPaidoutDTO>("Total")); total.setRenderer(amountColumn, new AggregationNumberSummaryRenderer<AddressPaidoutDTO, Float>( NumberFormat.getFormat("#.##########"), new SumSummaryType<Float>())); columnModel.addAggregationRow(total); final GridView<AddressPaidoutDTO> gridView = new GridView<AddressPaidoutDTO>(); paidoutGrid = new Grid<AddressPaidoutDTO>(paidoutStore, columnModel, gridView); paidoutGrid.addStyleName("paidoutGrid"); paidoutGrid.addViewReadyHandler(new ViewReadyHandler() { @SuppressWarnings("rawtypes") public void onViewReady(ViewReadyEvent event) { for (int i = 0; i < columnModel.getColumnCount(); i++) { final Head head = gridView.getHeader().getHead(i); head.getElement().getStyle().setHeight(25, Unit.PX); head.addDomHandler(new MouseOverHandler() { public void onMouseOver(MouseOverEvent event) { Scheduler.get().scheduleDeferred(new ScheduledCommand() { public void execute() { head.getElement().getStyle().setHeight(25, Unit.PX); } }); } }, MouseOverEvent.getType()); } } }); loadingImage = new Image(); loadingImage.setUrl(ClientResources.INSTANCE.loading().getSafeUri()); loadingImage.setHeight("32px"); loadingImage.setWidth("32px"); FlowLayoutContainer simpleContainer = new FlowLayoutContainer(); simpleContainer.addStyleName("textCenter"); simpleContainer.add(loadingImage); window.setWidget(simpleContainer); chartsContainer.addResizeHandler(new ResizeHandler() { public void onResize(ResizeEvent event) { Scheduler.get().scheduleDeferred(new ScheduledCommand() { public void execute() { paidoutChart.setSizeToMatchContainer(); } }); } }); chartsContainer.add(paidoutChart, new VerticalLayoutData(1, 370)); BorderLayoutData layoutData = new BorderLayoutData(); layoutData.setMaxSize(2000); layoutData.setSize(370); layoutData.setCollapsible(true); layoutData.setSplit(true); mainContainer.setNorthWidget(chartsContainer, layoutData); mainContainer.add(paidoutGrid); window.show(); window.center(); }
From source file:strat.mining.multipool.stats.client.mvp.view.middlecoin.component.AddressChartPanel.java
License:Open Source License
private void initPowerChart() { powerChart = new Chart(); powerChart.setChartTitleText("Power"); powerChart.setHeight(350);// ww w . j a va 2 s.c om powerChart.setZoomType(BaseChart.ZoomType.X); powerChart.setAnimation(false); powerChart.setShadow(false); powerChart.setOption("/plotOptions/series/turboThreshold", 10); powerChart.setAreaPlotOptions(new AreaPlotOptions().setStacking(Stacking.NORMAL).setMarker( new Marker().setEnabled(false).setHoverState(new Marker().setEnabled(true).setRadius(5)))); powerChart.setColumnPlotOptions(new ColumnPlotOptions().setStacking(Stacking.NORMAL).setMarker( new Marker().setEnabled(false).setHoverState(new Marker().setEnabled(true).setRadius(5)))); powerChart .setSeriesPlotOptions(new SeriesPlotOptions().setDataGrouping(new DataGrouping().setEnabled(true))); powerChart.getXAxis().setType(Axis.Type.DATE_TIME); powerChart.getXAxis().setAxisTitleText("Date"); powerChart.getYAxis(0).setType(Axis.Type.LINEAR); powerChart.getYAxis(0).setAxisTitleText("MH/s"); powerChart.getYAxis(0).setMinorTickIntervalAuto(); powerChart.getYAxis(0).setGridLineWidth(2); powerChart.getYAxis(1).setType(Axis.Type.LINEAR); powerChart.getYAxis(1).setAxisTitleText("Shares"); powerChart.getYAxis(1).setMinorTickIntervalAuto(); powerChart.getYAxis(1).setGridLineWidth(2); powerChart.getYAxis(1).setOpposite(true); acceptedShareSeries = powerChart.createSeries(); acceptedShareSeries.setType(Series.Type.COLUMN); acceptedShareSeries.setName("Accepted Shares"); acceptedShareSeries.setStack("shares"); acceptedShareSeries.setYAxis(1); acceptedShareSeries.setPlotOptions(new ColumnPlotOptions().setShadow(false).setHoverStateLineWidth(2) .setColor(new Color(0, 170, 0, 0.5))); powerChart.addSeries(acceptedShareSeries); rejectedShareSeries = powerChart.createSeries(); rejectedShareSeries.setType(Series.Type.COLUMN); rejectedShareSeries.setName("Rejected Shares"); rejectedShareSeries.setStack("shares"); rejectedShareSeries.setYAxis(1); rejectedShareSeries.setPlotOptions(new ColumnPlotOptions().setShadow(false).setHoverStateLineWidth(2) .setColor(new Color(255, 0, 0, 0.5))); powerChart.addSeries(rejectedShareSeries); acceptedMHSeries = powerChart.createSeries(); acceptedMHSeries.setType(Series.Type.AREA); acceptedMHSeries.setName("Accepted MH/s"); acceptedMHSeries.setStack("mhs"); acceptedMHSeries.setYAxis(0); acceptedMHSeries.setPlotOptions(new AreaPlotOptions().setShadow(false).setHoverStateLineWidth(2) .setColor(new Color(0, 170, 0, 0.5)).setFillOpacity(0.5)); powerChart.addSeries(acceptedMHSeries); rejectedMHSeries = powerChart.createSeries(); rejectedMHSeries.setType(Series.Type.AREA); rejectedMHSeries.setName("Rejected MH/s"); rejectedMHSeries.setStack("mhs"); rejectedMHSeries.setYAxis(0); rejectedMHSeries.setPlotOptions(new AreaPlotOptions().setShadow(false).setHoverStateLineWidth(2) .setColor(new Color(255, 0, 0, 0.5)).setFillOpacity(0.5)); powerChart.addSeries(rejectedMHSeries); final DateTimeFormat dtf = DateTimeFormat.getFormat("EEE d MMM HH:mm:ss"); final NumberFormat nf = NumberFormat.getFormat("#.##"); powerChart.setToolTip(new ToolTip().setFormatter(new ToolTipFormatter() { public String format(ToolTipData toolTipData) { String result = ""; AddressStatsDTO stat = getStatsFromDate(toolTipData.getXAsLong()); if (stat != null) { result = "<b>Accepted MH/s:</b> " + formatPowerValue(stat.getMegaHashesPerSeconds()); result += "<br/><b>Rejected MH/s:</b> " + formatPowerValue(stat.getRejectedMegaHashesPerSeconds()); result += "<br/><b>Total MH/s: " + formatPowerValue( stat.getRejectedMegaHashesPerSeconds() + stat.getMegaHashesPerSeconds()); result += "<br/><b>Accepted shares last hour:</b> " + stat.getLastHourShares(); result += "<br/><b>Rejected shares last hour:</b> " + stat.getLastHourRejectedShares(); result += "<br/><b>Total shares last hour:</b> " + (stat.getLastHourRejectedShares() + stat.getLastHourShares()); result += "<br/><b>% of rejected shares:</b> " + nf.format(((((float) stat.getLastHourRejectedShares()) * 100F) / ((float) stat.getLastHourRejectedShares() + (float) stat.getLastHourShares()))); result += "<br/><b>Date:</b> " + dtf.format(stat.getRefreshTime()); } return result; } }).setFollowPointer(true).setShadow(false).setUseHTML(true)); contentPanel.addResizeHandler(new ResizeHandler() { public void onResize(ResizeEvent event) { Scheduler.get().scheduleDeferred(new ScheduledCommand() { public void execute() { powerChart.setSizeToMatchContainer(); } }); } }); }
From source file:strat.mining.multipool.stats.client.mvp.view.middlecoin.component.AddressChartPanel.java
License:Open Source License
public Widget createLastStatsPanel(AddressStatsDTO lastStats) { HtmlLayoutContainerTemplate templates = GWT.create(HtmlLayoutContainerTemplate.class); // Remove the last panel if (lastStatsPanel != null) { contentPanel.remove(lastStatsPanel); }/*from w w w. jav a 2s .c om*/ lastStatsPanel = new HtmlLayoutContainer(templates.getTemplate()); lastStatsPanel.setWidth(900); final DateTimeFormat dtf = DateTimeFormat.getFormat("EEE d MMM HH:mm:ss"); // Name labels Label balanceLabel = new Label("Balance: "); Label unexchangedLabel = new Label("Unexchanged: "); Label immatureLabel = new Label("Immature: "); Label totalLabel = new Label("Total: "); Label paidoutLabel = new Label("Paid out: "); Label acceptedMegaHashLabel = new Label("Accepted MH/s: "); Label rejectedMegaHashLabel = new Label("Rejected MH/s: "); Label totalMegaHashLabel = new Label("Total MH/s: "); Label percentRejectedMegaHashLabel = new Label("% rejected MH/s: "); Label acceptedSharesLabel = new Label("Accepted shares: "); Label rejectedSharesLabel = new Label("Rejected shares: "); Label totalSharesLabel = new Label("Total shares: "); Label percentRejectedSharesLabel = new Label("% of rejected shares: "); Label lastUpdateTimeLabel = new Label("Last update: "); // Values calcul NumberFormat nf = NumberFormat.getFormat("#.##"); String rejectedMHPercentValueString = ""; if (lastStats != null) { rejectedMHPercentValueString = nf.format((((lastStats.getRejectedMegaHashesPerSeconds()) * 100F) / (lastStats.getRejectedMegaHashesPerSeconds() + lastStats.getMegaHashesPerSeconds()))); } String rejectedSharePercentValueString = ""; if (lastStats != null) { rejectedSharePercentValueString = nf.format(((((float) lastStats.getLastHourRejectedShares()) * 100F) / ((float) lastStats.getLastHourRejectedShares() + (float) lastStats.getLastHourShares()))); } // Values label Label balanceValue = new Label(lastStats != null ? formatBTCValue(lastStats.getBalance()) : ""); Label unexchangedValue = new Label(lastStats != null ? formatBTCValue(lastStats.getUnexchanged()) : ""); Label immatureValue = new Label(lastStats != null ? formatBTCValue(lastStats.getImmature()) : ""); paidoutAnchor = new Anchor(lastStats != null ? formatBTCValue(lastStats.getPaidOut()) : ""); Label totalValue = new Label(lastStats != null ? formatBTCValue(lastStats.getBalance() + lastStats.getUnexchanged() + lastStats.getImmature()) : ""); Label acceptedMegaHashValue = new Label( lastStats != null ? formatPowerValue(lastStats.getMegaHashesPerSeconds()) : ""); Label rejectedMegaHashValue = new Label( lastStats != null ? formatPowerValue(lastStats.getRejectedMegaHashesPerSeconds()) : ""); Label totalMegaHashValue = new Label( lastStats != null ? formatPowerValue( (lastStats.getMegaHashesPerSeconds() + lastStats.getRejectedMegaHashesPerSeconds())) : ""); Label percentRejectedMegaHashValue = new Label(lastStats != null ? rejectedMHPercentValueString : ""); Label acceptedSharesValue = new Label(lastStats != null ? lastStats.getLastHourShares().toString() : ""); Label rejectedSharesValue = new Label( lastStats != null ? lastStats.getLastHourRejectedShares().toString() : ""); Label totalSharesValue = new Label(lastStats != null ? Integer.toString((lastStats.getLastHourShares() + lastStats.getLastHourRejectedShares())) : ""); Label percentRejectedSharesValue = new Label(rejectedSharePercentValueString); Label lastUpdateTimeValue = new Label(lastStats != null ? dtf.format(lastStats.getRefreshTime()) : ""); lastStatsPanel.add(balanceLabel, new HtmlData(".label1")); lastStatsPanel.add(unexchangedLabel, new HtmlData(".label2")); lastStatsPanel.add(immatureLabel, new HtmlData(".label3")); lastStatsPanel.add(totalLabel, new HtmlData(".label4")); lastStatsPanel.add(paidoutLabel, new HtmlData(".label5")); lastStatsPanel.add(acceptedMegaHashLabel, new HtmlData(".label6")); lastStatsPanel.add(rejectedMegaHashLabel, new HtmlData(".label7")); lastStatsPanel.add(totalMegaHashLabel, new HtmlData(".label8")); lastStatsPanel.add(percentRejectedMegaHashLabel, new HtmlData(".label9")); lastStatsPanel.add(acceptedSharesLabel, new HtmlData(".label11")); lastStatsPanel.add(rejectedSharesLabel, new HtmlData(".label12")); lastStatsPanel.add(totalSharesLabel, new HtmlData(".label13")); lastStatsPanel.add(percentRejectedSharesLabel, new HtmlData(".label14")); lastStatsPanel.add(lastUpdateTimeLabel, new HtmlData(".label16")); lastStatsPanel.add(balanceValue, new HtmlData(".value1")); lastStatsPanel.add(unexchangedValue, new HtmlData(".value2")); lastStatsPanel.add(immatureValue, new HtmlData(".value3")); lastStatsPanel.add(totalValue, new HtmlData(".value4")); lastStatsPanel.add(paidoutAnchor, new HtmlData(".value5")); lastStatsPanel.add(acceptedMegaHashValue, new HtmlData(".value6")); lastStatsPanel.add(rejectedMegaHashValue, new HtmlData(".value7")); lastStatsPanel.add(totalMegaHashValue, new HtmlData(".value8")); lastStatsPanel.add(percentRejectedMegaHashValue, new HtmlData(".value9")); lastStatsPanel.add(acceptedSharesValue, new HtmlData(".value11")); lastStatsPanel.add(rejectedSharesValue, new HtmlData(".value12")); lastStatsPanel.add(totalSharesValue, new HtmlData(".value13")); lastStatsPanel.add(percentRejectedSharesValue, new HtmlData(".value14")); lastStatsPanel.add(lastUpdateTimeValue, new HtmlData(".value16")); ToolTipConfig config = new ToolTipConfig(); String tooltip = "<b>" + balanceLabel.getText() + "</b>" + balanceValue.getText(); tooltip += "<br/><b>" + unexchangedLabel.getText() + "</b>" + unexchangedValue.getText(); tooltip += "<br/><b>" + immatureLabel.getText() + "</b>" + immatureValue.getText(); tooltip += "<br/><b>" + totalLabel.getText() + "</b>" + totalValue.getText(); tooltip += "<br/><b>" + paidoutLabel.getText() + "</b>" + paidoutAnchor.getText(); tooltip += "<br/><b>" + acceptedMegaHashLabel.getText() + "</b>" + acceptedMegaHashValue.getText(); tooltip += "<br/><b>" + rejectedMegaHashLabel.getText() + "</b>" + rejectedMegaHashValue.getText(); tooltip += "<br/><b>" + totalMegaHashLabel.getText() + "</b>" + totalMegaHashValue.getText(); tooltip += "<br/><b>" + percentRejectedMegaHashLabel.getText() + "</b>" + percentRejectedMegaHashValue.getText(); tooltip += "<br/><b>" + acceptedSharesLabel.getText() + "</b>" + acceptedSharesValue.getText(); tooltip += "<br/><b>" + rejectedSharesLabel.getText() + "</b>" + rejectedSharesValue.getText(); tooltip += "<br/><b>" + totalSharesLabel.getText() + "</b>" + totalSharesValue.getText(); tooltip += "<br/><b>" + percentRejectedSharesLabel.getText() + "</b>" + percentRejectedSharesValue.getText(); tooltip += "<br/><b>" + lastUpdateTimeLabel.getText() + "</b>" + lastUpdateTimeValue.getText(); config.setBodyHtml(tooltip); config.setTrackMouse(true); config.setDismissDelay(0); config.setHideDelay(0); lastStatsPanel.setToolTipConfig(config); return lastStatsPanel; }
From source file:strat.mining.multipool.stats.client.mvp.view.middlecoin.component.GlobalChartPanel.java
License:Open Source License
private void initPowerChart() { powerChart = new Chart(); powerChart.setChartTitleText("Power"); powerChart.setHeight(350);/*from ww w . jav a 2 s. c o m*/ powerChart.setZoomType(BaseChart.ZoomType.X); powerChart.setShadow(false); powerChart.setAnimation(false); powerChart.setOption("/plotOptions/series/turboThreshold", 10); powerChart.setAreaPlotOptions(new AreaPlotOptions().setStacking(Stacking.NORMAL).setMarker( new Marker().setEnabled(false).setHoverState(new Marker().setEnabled(true).setRadius(5)))); powerChart .setSeriesPlotOptions(new SeriesPlotOptions().setDataGrouping(new DataGrouping().setEnabled(true))); powerChart.getXAxis().setType(Axis.Type.DATE_TIME); powerChart.getXAxis().setAxisTitleText("Date"); powerChart.getYAxis(0).setType(Axis.Type.LINEAR); powerChart.getYAxis(0).setAxisTitleText("MH/s"); powerChart.getYAxis(0).setMinorTickIntervalAuto(); powerChart.getYAxis(0).setGridLineWidth(2); acceptedMHSeries = powerChart.createSeries(); acceptedMHSeries.setType(Series.Type.AREA); acceptedMHSeries.setName("Accepted MH/s"); acceptedMHSeries.setStack("mhs"); acceptedMHSeries.setYAxis(0); acceptedMHSeries.setPlotOptions(new AreaPlotOptions().setShadow(false).setHoverStateLineWidth(2) .setColor(new Color(0, 170, 0, 0.5)).setFillOpacity(0.5)); powerChart.addSeries(acceptedMHSeries); rejectedMHSeries = powerChart.createSeries(); rejectedMHSeries.setType(Series.Type.AREA); rejectedMHSeries.setName("Rejected MH/s"); rejectedMHSeries.setStack("mhs"); rejectedMHSeries.setYAxis(0); rejectedMHSeries.setPlotOptions(new AreaPlotOptions().setShadow(false).setHoverStateLineWidth(2) .setColor(new Color(255, 0, 0, 0.5)).setFillOpacity(0.5)); powerChart.addSeries(rejectedMHSeries); final DateTimeFormat dtf = DateTimeFormat.getFormat("EEE d MMM HH:mm:ss"); final NumberFormat nf = NumberFormat.getFormat("#.##"); powerChart.setToolTip(new ToolTip().setFormatter(new ToolTipFormatter() { public String format(ToolTipData toolTipData) { String result = ""; GlobalStatsDTO stat = getStatsFromDate(toolTipData.getXAsLong()); if (stat != null) { result = "<b>Accepted MH/s:</b> " + formatPowerValue(stat.getTotalMegahashesPerSecond()); result += "<br/><b>Rejected MH/s:</b> " + formatPowerValue(stat.getTotalRejectedMegahashesPerSecond()); result += "<br/><b>Total MH/s:</b> " + formatPowerValue( stat.getTotalMegahashesPerSecond() + stat.getTotalRejectedMegahashesPerSecond()); result += "<br/><b>% of rejected shares:</b> " + nf.format((((stat.getTotalRejectedMegahashesPerSecond()) * 100F) / (stat.getTotalMegahashesPerSecond() + stat.getTotalRejectedMegahashesPerSecond()))); result += "<br/><b>Date:</b> " + dtf.format(stat.getRefreshTime()); } return result; } }).setFollowPointer(true).setShadow(false).setUseHTML(true)); contentPanel.addResizeHandler(new ResizeHandler() { public void onResize(ResizeEvent event) { Scheduler.get().scheduleDeferred(new ScheduledCommand() { public void execute() { powerChart.setSizeToMatchContainer(); } }); } }); }
From source file:strat.mining.multipool.stats.client.mvp.view.middlecoin.component.GlobalChartPanel.java
License:Open Source License
public Widget createLastStatsPanel(GlobalStatsDTO lastStats, GlobalAggregatedStats aggregatedStats) { HtmlLayoutContainerTemplate templates = GWT.create(HtmlLayoutContainerTemplate.class); // Remove the last panel if (lastStatsPanel != null) { contentPanel.remove(lastStatsPanel); }//from w ww . j a va2 s .co m lastStatsPanel = new HtmlLayoutContainer(templates.getTemplate()); lastStatsPanel.setWidth(650); final DateTimeFormat dtf = DateTimeFormat.getFormat("EEE d MMM HH:mm:ss"); // Name labels Label balanceLabel = new Label("Balance: "); Label unexchangedLabel = new Label("Unexchanged: "); Label immatureLabel = new Label("Immature: "); Label totalLabel = new Label("Total: "); Label paidoutLabel = new Label("Paid out: "); Label acceptedMegaHashLabel = new Label("Accepted MH/s: "); Label rejectedMegaHashLabel = new Label("Rejected MH/s: "); Label totalMegaHashLabel = new Label("Total MH/s: "); Label percentRejectedMegaHashLabel = new Label("% rejected MH/s: "); // Label balanceDailyEarningByMHLabel = new // Label("Balance BTC/Day/MH/s: "); // Label totalDailyEarningByMHLabel = new Label("Total BTC/Day/MH/s: "); Label lastUpdateTimeLabel = new Label("Last update: "); // Values calcul NumberFormat nf = NumberFormat.getFormat("#.##"); String rejectedMHPercentValueString = ""; if (lastStats != null) { rejectedMHPercentValueString = nf.format((((lastStats.getTotalRejectedMegahashesPerSecond()) * 100F) / (lastStats.getTotalRejectedMegahashesPerSecond() + lastStats.getTotalMegahashesPerSecond()))); } // Values label Label balanceValue = new Label(lastStats != null ? formatBTCValue(lastStats.getTotalBalance()) : ""); Label unexchangedValue = new Label( lastStats != null ? formatBTCValue(lastStats.getTotalUnexchangedBalance()) : ""); Label immatureValue = new Label( lastStats != null ? formatBTCValue(lastStats.getTotalImmatureBalance()) : ""); Label paidoutValue = new Label(lastStats != null ? formatBTCValue(lastStats.getTotalPaidOut()) : ""); Label totalValue = new Label(lastStats != null ? formatBTCValue(lastStats.getTotalBalance() + lastStats.getTotalUnexchangedBalance() + lastStats.getTotalImmatureBalance()) : ""); Label acceptedMegaHashValue = new Label( lastStats != null ? formatPowerValue(lastStats.getTotalMegahashesPerSecond()) : ""); Label rejectedMegaHashValue = new Label( lastStats != null ? formatPowerValue(lastStats.getTotalRejectedMegahashesPerSecond()) : ""); Label totalMegaHashValue = new Label(lastStats != null ? formatPowerValue( (lastStats.getTotalMegahashesPerSecond() + lastStats.getTotalRejectedMegahashesPerSecond())) : ""); Label percentRejectedMegaHashValue = new Label(lastStats != null ? rejectedMHPercentValueString : ""); // Label balanceDailyEarningByMHValue = new // Label(aggregatedStats.getEarningByMHBalance().size() > 0 ? // formatBTCValue(aggregatedStats // .getEarningByMHBalance().get(aggregatedStats.getEarningByMHBalance().size() // - 1).getRight()) : ""); // Label totalDailyEarningByMHValue = new // Label(aggregatedStats.getEarningByMHTotal().size() > 0 ? // formatBTCValue(aggregatedStats // .getEarningByMHTotal().get(aggregatedStats.getEarningByMHTotal().size() // - 1).getRight()) : ""); Label lastUpdateTimeValue = new Label(lastStats != null ? dtf.format(lastStats.getRefreshTime()) : ""); lastStatsPanel.add(balanceLabel, new HtmlData(".label1")); lastStatsPanel.add(unexchangedLabel, new HtmlData(".label2")); lastStatsPanel.add(immatureLabel, new HtmlData(".label3")); lastStatsPanel.add(totalLabel, new HtmlData(".label4")); lastStatsPanel.add(paidoutLabel, new HtmlData(".label5")); lastStatsPanel.add(acceptedMegaHashLabel, new HtmlData(".label6")); lastStatsPanel.add(rejectedMegaHashLabel, new HtmlData(".label7")); lastStatsPanel.add(totalMegaHashLabel, new HtmlData(".label8")); lastStatsPanel.add(percentRejectedMegaHashLabel, new HtmlData(".label9")); lastStatsPanel.add(lastUpdateTimeLabel, new HtmlData(".label11")); // lastStatsPanel.add(balanceDailyEarningByMHLabel, new // HtmlData(".label11")); // lastStatsPanel.add(totalDailyEarningByMHLabel, new // HtmlData(".label12")); // lastStatsPanel.add(lastUpdateTimeLabel, new HtmlData(".label13")); lastStatsPanel.add(balanceValue, new HtmlData(".value1")); lastStatsPanel.add(unexchangedValue, new HtmlData(".value2")); lastStatsPanel.add(immatureValue, new HtmlData(".value3")); lastStatsPanel.add(totalValue, new HtmlData(".value4")); lastStatsPanel.add(paidoutValue, new HtmlData(".value5")); lastStatsPanel.add(acceptedMegaHashValue, new HtmlData(".value6")); lastStatsPanel.add(rejectedMegaHashValue, new HtmlData(".value7")); lastStatsPanel.add(totalMegaHashValue, new HtmlData(".value8")); lastStatsPanel.add(percentRejectedMegaHashValue, new HtmlData(".value9")); lastStatsPanel.add(lastUpdateTimeValue, new HtmlData(".value11")); // lastStatsPanel.add(balanceDailyEarningByMHValue, new // HtmlData(".value11")); // lastStatsPanel.add(totalDailyEarningByMHValue, new // HtmlData(".value12")); // lastStatsPanel.add(lastUpdateTimeValue, new HtmlData(".value13")); ToolTipConfig config = new ToolTipConfig(); String tooltip = "<b>" + balanceLabel.getText() + "</b>" + balanceValue.getText(); tooltip += "<br/><b>" + unexchangedLabel.getText() + "</b>" + unexchangedValue.getText(); tooltip += "<br/><b>" + immatureLabel.getText() + "</b>" + immatureValue.getText(); tooltip += "<br/><b>" + totalLabel.getText() + "</b>" + totalValue.getText(); tooltip += "<br/><b>" + paidoutLabel.getText() + "</b>" + paidoutValue.getText(); tooltip += "<br/><b>" + acceptedMegaHashLabel.getText() + "</b>" + acceptedMegaHashValue.getText(); tooltip += "<br/><b>" + rejectedMegaHashLabel.getText() + "</b>" + rejectedMegaHashValue.getText(); tooltip += "<br/><b>" + totalMegaHashLabel.getText() + "</b>" + totalMegaHashValue.getText(); tooltip += "<br/><b>" + percentRejectedMegaHashLabel.getText() + "</b>" + percentRejectedMegaHashValue.getText(); // tooltip += "<br/><b>" + balanceDailyEarningByMHLabel.getText() + // "</b>" + balanceDailyEarningByMHValue.getText(); // tooltip += "<br/><b>" + totalDailyEarningByMHLabel.getText() + "</b>" // + totalDailyEarningByMHValue.getText(); tooltip += "<br/><b>" + lastUpdateTimeLabel.getText() + "</b>" + lastUpdateTimeValue.getText(); config.setBodyHtml(tooltip); config.setTrackMouse(true); config.setDismissDelay(0); config.setHideDelay(0); lastStatsPanel.setToolTipConfig(config); return lastStatsPanel; }
From source file:strat.mining.multipool.stats.client.mvp.view.waffle.impl.PaidoutViewImpl.java
License:Open Source License
public PaidoutViewImpl(String title) { paidoutByAddress = new HashMap<String, List<AddressPaidoutDTO>>(); this.fireHideEvent = true; window = new Window(); window.setHeaderVisible(true);//from ww w . j a va 2 s .c o m window.setHeadingText(title); window.setHeight(600); window.setWidth(550); window.setMaximizable(true); window.setCollapsible(true); window.setResizable(true); window.addMaximizeHandler(new MaximizeHandler() { public void onMaximize(MaximizeEvent event) { window.expand(); } }); saveExpanded = true; mainContainer = new BorderLayoutContainer(); chartsContainer = new VerticalLayoutContainer(); paidoutChart = new Chart(); paidoutChart.setChartTitleText("Paidouts"); paidoutChart.setZoomType(BaseChart.ZoomType.X); paidoutChart.setSeriesPlotOptions(new SeriesPlotOptions().setMarker( new Marker().setEnabled(false).setHoverState(new Marker().setEnabled(true).setRadius(5)))); paidoutChart.getXAxis().setType(Axis.Type.DATE_TIME).setAxisTitleText("Date"); paidoutChart.getYAxis(0).setType(Axis.Type.LINEAR).setAxisTitleText("BTC (Daily)"); paidoutChart.getYAxis(0).setMinorTickIntervalAuto(); paidoutChart.getYAxis(0).setGridLineWidth(2); paidoutChart.getYAxis(1).setType(Axis.Type.LINEAR).setAxisTitleText("BTC (Total)"); paidoutChart.getYAxis(1).setOpposite(true); paidoutChart.getYAxis(1).setMin(0); paidoutChart.getYAxis(1).setMinorTickIntervalAuto(); paidoutChart.getYAxis(1).setGridLineWidth(2); final DateTimeFormat dtf = DateTimeFormat.getFormat(PredefinedFormat.DATE_MEDIUM); paidoutChart.setToolTip(new ToolTip().setFormatter(new ToolTipFormatter() { public String format(ToolTipData toolTipData) { int nbSeries = toolTipData.getPointsLength(); String result = "<b>" + dtf.format(new Date(toolTipData.getXAsLong())) + "</b>"; for (int i = 0; i < nbSeries; i++) { result += "<br/><b>" + toolTipData.getSeriesName(i).split(":")[0] + ":</b> " + formatBTCValue(toolTipData.getYAsDouble(i)); } result += "<br/><b>Day total:</b> " + formatBTCValue(toolTipData.getTotal(0)); result += "<br/><b>Total paidout:</b> " + formatBTCValue(toolTipData.getTotal(1)); return result; } }).setShared(true).setFollowPointer(true)); chartsContainer.addResizeHandler(new ResizeHandler() { public void onResize(ResizeEvent event) { Scheduler.get().scheduleDeferred(new ScheduledCommand() { public void execute() { paidoutChart.setSizeToMatchContainer(); } }); } }); paidoutStore = new ListStore<AddressPaidoutDTO>(propertyAccess.key()); ColumnConfig<AddressPaidoutDTO, Date> dateColumn = new ColumnConfig<AddressPaidoutDTO, Date>( propertyAccess.time(), 50, "Date"); dateColumn.setWidth(125); dateColumn.setCell(new DateCell()); ColumnConfig<AddressPaidoutDTO, String> transactionIdColumn = new ColumnConfig<AddressPaidoutDTO, String>( propertyAccess.transactionId(), 100, "Transaction Id"); transactionIdColumn.setWidth(250); transactionIdColumn.setCell(new BlockChainCell()); ColumnConfig<AddressPaidoutDTO, Float> amountColumn = new ColumnConfig<AddressPaidoutDTO, Float>( propertyAccess.amount(), 75, "Amount"); amountColumn.setWidth(100); List<ColumnConfig<AddressPaidoutDTO, ?>> columns = new ArrayList<ColumnConfig<AddressPaidoutDTO, ?>>(); columns.add(dateColumn); columns.add(transactionIdColumn); columns.add(amountColumn); final ColumnModel<AddressPaidoutDTO> columnModel = new ColumnModel<AddressPaidoutDTO>(columns); AggregationRowConfig<AddressPaidoutDTO> total = new AggregationRowConfig<AddressPaidoutDTO>(); total.setRenderer(transactionIdColumn, new AggregationSafeHtmlRenderer<AddressPaidoutDTO>("Total")); total.setRenderer(amountColumn, new AggregationNumberSummaryRenderer<AddressPaidoutDTO, Float>( NumberFormat.getFormat("#.##########"), new SumSummaryType<Float>())); columnModel.addAggregationRow(total); final GridView<AddressPaidoutDTO> gridView = new GridView<AddressPaidoutDTO>(); paidoutGrid = new Grid<AddressPaidoutDTO>(paidoutStore, columnModel, gridView); paidoutGrid.addStyleName("paidoutGrid"); paidoutGrid.addViewReadyHandler(new ViewReadyHandler() { @SuppressWarnings("rawtypes") public void onViewReady(ViewReadyEvent event) { for (int i = 0; i < columnModel.getColumnCount(); i++) { final Head head = gridView.getHeader().getHead(i); head.getElement().getStyle().setHeight(25, Unit.PX); head.addDomHandler(new MouseOverHandler() { public void onMouseOver(MouseOverEvent event) { Scheduler.get().scheduleDeferred(new ScheduledCommand() { public void execute() { head.getElement().getStyle().setHeight(25, Unit.PX); } }); } }, MouseOverEvent.getType()); } } }); loadingImage = new Image(); loadingImage.setUrl(ClientResources.INSTANCE.loading().getSafeUri()); loadingImage.setHeight("32px"); loadingImage.setWidth("32px"); FlowLayoutContainer simpleContainer = new FlowLayoutContainer(); simpleContainer.addStyleName("textCenter"); simpleContainer.add(loadingImage); window.setWidget(simpleContainer); chartsContainer.addResizeHandler(new ResizeHandler() { public void onResize(ResizeEvent event) { Scheduler.get().scheduleDeferred(new ScheduledCommand() { public void execute() { paidoutChart.setSizeToMatchContainer(); } }); } }); chartsContainer.add(paidoutChart, new VerticalLayoutData(1, 370)); BorderLayoutData layoutData = new BorderLayoutData(); layoutData.setMaxSize(2000); layoutData.setSize(370); layoutData.setCollapsible(true); layoutData.setSplit(true); mainContainer.setNorthWidget(chartsContainer, layoutData); mainContainer.add(paidoutGrid); window.show(); window.center(); }
From source file:stroom.data.pager.client.Pager.java
License:Apache License
@Override protected void onRangeOrRowCountChanged() { final NumberFormat formatter = NumberFormat.getFormat("#,###"); final HasRows display = getDisplay(); final Range range = display.getVisibleRange(); final int pageStart = range.getStart() + 1; final int pageSize = range.getLength(); final int dataSize = display.getRowCount(); int endIndex = Math.min(dataSize, pageStart + pageSize - 1); endIndex = Math.max(pageStart, endIndex); final boolean exact = display.isRowCountExact(); lblFrom.setText(formatter.format(pageStart)); lblTo.setText(formatter.format(endIndex)); if (exact) {/*from w ww .jav a2 s . co m*/ lblOf.setText(formatter.format(dataSize)); } else { lblOf.setText("?"); } // Update the prev and first buttons. first.setEnabled(hasPreviousPage()); prev.setEnabled(hasPreviousPage()); // Update the next and last buttons. if (isRangeLimited() || !display.isRowCountExact()) { next.setEnabled(hasNextPage()); last.setEnabled(hasNextPage() && display.isRowCountExact()); } refresh.setEnabled(true); }
From source file:uk.ac.ebi.fg.annotare2.web.gwt.common.client.view.UploadProgressPopupPanel.java
License:Apache License
private String formatSpeed(double speed) { int unit = 1024; if (speed < unit) return NumberFormat.getFormat("#.0 B/s").format(speed); int exp = (int) (Math.log(speed) / Math.log(unit)); String unitName = "kMGTPE".charAt(exp - 1) + "B/s"; return NumberFormat.getFormat("#.0 " + unitName).format(speed / Math.pow(unit, exp)); }
From source file:uk.ac.ebi.fg.annotare2.web.gwt.common.client.view.UploadProgressPopupPanel.java
License:Apache License
private String formatTime(int time) { int unit = 60; String prefix = ""; if (time > (unit * unit)) { prefix = NumberFormat.getFormat("00:").format(time / (unit * unit)); time = time % (unit * unit);// w w w .ja v a 2 s . c o m } return prefix + NumberFormat.getFormat("00:").format(time / unit) + NumberFormat.getFormat("00").format(time % unit); }
From source file:uk.ac.ncl.openlab.intake24.client.ui.widgets.Counter.java
public void update() { NumberFormat nf = NumberFormat.getFormat(format); box.setText(nf.format(value));/*from w w w . ja va 2 s .c om*/ this.visitor.map(lst -> { lst.onChange(value); return value; }); }