@Override public void menuAboutToShow(IMenuManager manager) { manager.add( new Action(Messages.MenuExportChartData) { @Override public void run() { ScatterChartCSVExporter exporter = new ScatterChartCSVExporter(chart); exporter.setValueFormat(new DecimalFormat("0.##########%")); // $NON-NLS-1$ exporter.export(getTitle() + ".csv"); // $NON-NLS-1$ } }); Set<Class<?>> exportTypes = new HashSet<Class<?>>( Arrays.asList( new Class<?>[] { // Client.class, Security.class, Portfolio.class, Account.class, Classification.class })); for (DataSeries series : picker.getSelectedDataSeries()) { if (exportTypes.contains(series.getType())) addMenu(manager, series); } manager.add(new Separator()); chart.exportMenuAboutToShow(manager, getTitle()); }
private void setChartSeries() { List<Exception> warnings = new ArrayList<Exception>(); for (DataSeries item : picker.getSelectedDataSeries()) { if (item.getType() == Client.class) addClient(item, (ClientDataSeries) item.getInstance(), warnings); else if (item.getType() == Security.class) addSecurity(item, (Security) item.getInstance(), warnings); else if (item.getType() == Portfolio.class) addPortfolio(item, (Portfolio) item.getInstance(), warnings); else if (item.getType() == Account.class) addAccount(item, (Account) item.getInstance(), warnings); else if (item.getType() == Classification.class) addClassification(item, (Classification) item.getInstance(), warnings); } PortfolioPlugin.log(warnings); }