Révision 650

tmp/org.txm.ca.core/src/org/txm/ca/core/chartsengine/jfreechart/themes/highcharts/renderers/CAItemSelectionRenderer.java (revision 650)
37 37
public class CAItemSelectionRenderer extends ItemSelectionXYLineAndShapeRenderer {
38 38

  
39 39
	
40
	/**
41
	 * The linked chart.
42
	 */
43
	protected JFreeChart chart;
44 40

  
45 41
	/**
46 42
	 * Stack to store selected items to draw at last, over other items.
......
53 49
	 * Creates a renderer dedicated to CA charts.
54 50
	 */
55 51
	public CAItemSelectionRenderer(CA ca, JFreeChart chart) {
56
		super();
57
		this.chart = chart;
52
		super(ca, chart);
58 53
		this.multipleItemsSelector.setResult(ca);
59 54
		this.setChartType(ChartsEngine.CHART_TYPE_CA_FACTORIAL_MAP);
60
		
61
		
55
	}
56

  
57

  
58
	@Override
59
	public void init()	{
62 60
    	this.setBaseLinesVisible(false);
63 61
    	this.setBaseOutlinePaint(Color.decode("#666666"));
64 62

  
......
70 68
        this.setSeriesPaint(1, red);
71 69

  
72 70
        // Create the fonts
73
        ((JFCChartsEngine) ca.getChartsEngine()).getJFCTheme().createFonts(ca);
71
        ((JFCChartsEngine) this.multipleItemsSelector.getResult().getChartsEngine()).getJFCTheme().createFonts(this.multipleItemsSelector.getResult());
74 72
        
75 73
		// Legends
76 74
		ArrayList<Color> palette = new ArrayList<Color>(2);
......
79 77
		LegendTitle legendTitle = chart.getLegend(0);
80 78
		if (legendTitle != null) {
81 79
			legendTitle.setFrame(new BlockRoundBorder(Color.GRAY));
82
			((JFCChartsEngine) ca.getChartsEngine()).getJFCTheme().applyLegendDefaultSettings(legendTitle, false, false, palette);
80
			((JFCChartsEngine) this.multipleItemsSelector.getResult().getChartsEngine()).getJFCTheme().applyLegendDefaultSettings(legendTitle, false, false, palette);
83 81
		}
84 82
        
85 83
    	// Grid
......
93 91
		chart.getXYPlot().getRangeAxis().setTickMarksVisible(true);
94 92
		chart.getXYPlot().getDomainAxis().setVerticalTickLabels(false);
95 93
		chart.getXYPlot().getDomainAxis().setAxisLineVisible(true);
96
  
97
	}
98 94

  
99

  
100

  
95
	}
96
	
101 97
	@Override
102 98
	public void initToolTipGenerator(final IRendererWithItemSelection renderer)	{
103 99
		// Rows
tmp/org.txm.chartsengine.jfreechart.core/src/org/txm/chartsengine/jfreechart/core/themes/highcharts/defaulttheme/renderers/ItemSelectionCategoryLineAndShapeRenderer.java (revision 650)
193 193
	 }
194 194

  
195 195

  
196
	@Override
197
	public void init() {
198
		// TODO Auto-generated method stub
199
		
200
	}
196 201

  
197 202

  
203

  
204

  
198 205
}
199 206

  
tmp/org.txm.chartsengine.jfreechart.core/src/org/txm/chartsengine/jfreechart/core/themes/highcharts/defaulttheme/renderers/ItemSelectionCategoryStepRenderer.java (revision 650)
163 163
	}
164 164

  
165 165

  
166
	@Override
167
	public void init() {
168
		// TODO Auto-generated method stub
169
		
170
	}
166 171

  
172

  
173

  
167 174
}
tmp/org.txm.chartsengine.jfreechart.core/src/org/txm/chartsengine/jfreechart/core/themes/highcharts/defaulttheme/renderers/ItemSelectionXYCardinalSplineRenderer.java (revision 650)
357 357
	}
358 358

  
359 359

  
360
	@Override
361
	public void init() {
362
		// TODO Auto-generated method stub
363
		
364
	}
365

  
366

  
360 367
}
tmp/org.txm.chartsengine.jfreechart.core/src/org/txm/chartsengine/jfreechart/core/themes/highcharts/defaulttheme/renderers/ItemSelectionXYSplineRenderer.java (revision 650)
37 37

  
38 38
/**
39 39
 * Renderer providing item selection system and drawing features for selected item and custom rendering for XY charts with splines drawing support.
40
 * @author Sebastien Jacquot
40
 * 
41
 * @author sjacquot
41 42
 *
42 43
 */
43 44
public class ItemSelectionXYSplineRenderer extends XYSplineRenderer implements IRendererWithItemSelection {
......
375 376
	}
376 377

  
377 378

  
379
	@Override
380
	public void init() {
381
		// TODO Auto-generated method stub
382
		
383
	}
384

  
385

  
378 386
}
tmp/org.txm.chartsengine.jfreechart.core/src/org/txm/chartsengine/jfreechart/core/themes/highcharts/defaulttheme/renderers/ItemSelectionXYLineAndShapeRenderer.java (revision 650)
11 11
import java.awt.geom.Rectangle2D;
12 12
import java.text.DecimalFormat;
13 13

  
14
import org.jfree.chart.JFreeChart;
14 15
import org.jfree.chart.axis.SymbolAxis;
15 16
import org.jfree.chart.axis.ValueAxis;
16
import org.jfree.chart.entity.EntityCollection;
17 17
import org.jfree.chart.labels.XYToolTipGenerator;
18 18
import org.jfree.chart.plot.CrosshairState;
19 19
import org.jfree.chart.plot.PlotRenderingInfo;
......
23 23
import org.jfree.data.xy.XYDataset;
24 24
import org.jfree.data.xy.XYSeriesCollection;
25 25
import org.txm.chartsengine.core.messages.ChartsEngineCoreMessages;
26
import org.txm.chartsengine.core.results.ChartResult;
26 27
import org.txm.chartsengine.jfreechart.core.renderers.MouseOverItemSelector;
27 28
import org.txm.chartsengine.jfreechart.core.renderers.MultipleItemsSelector;
28 29
import org.txm.chartsengine.jfreechart.core.renderers.interfaces.IRendererWithItemSelection;
......
41 42
	 */
42 43
	protected MultipleItemsSelector multipleItemsSelector;
43 44

  
45
	
46
	/**
47
	 * The linked chart.
48
	 */
49
	protected JFreeChart chart;
50
	
44 51

  
45 52
	/**
46 53
	 * Values number format.
......
51 58
	/**
52 59
	 * Creates a renderer with visible lines and visible shapes.
53 60
	 */
54
	public ItemSelectionXYLineAndShapeRenderer()	{
55
		this(true, true);
61
	public ItemSelectionXYLineAndShapeRenderer(ChartResult result, JFreeChart chart)	{
62
		this(result, chart, true, true);
56 63
	}
57 64

  
58 65

  
......
61 68
	 * @param linesVisible
62 69
	 * @param shapesVisible
63 70
	 */
64
	public ItemSelectionXYLineAndShapeRenderer(boolean linesVisible, boolean shapesVisible) {
71
	public ItemSelectionXYLineAndShapeRenderer(ChartResult result, JFreeChart chart, boolean linesVisible, boolean shapesVisible) {
65 72
		super(linesVisible, shapesVisible);
66 73

  
67 74
		this.multipleItemsSelector = new MultipleItemsSelector(this);
68

  
75
		this.multipleItemsSelector.setResult(result);
76
		
77
		this.chart = chart;
78
		
69 79
		// Default Values format
70 80
		String pattern = new String("#0.####");
71 81
		this.valuesNumberFormat = new DecimalFormat(pattern);
72 82

  
83
		
84
		this.init();
85
		
73 86
		// Labels
74 87
		this.initItemLabelGenerator();
75 88
		// Tooltips
76 89
		this.initToolTipGenerator(this);
90
		
91
		
77 92
	}
78 93

  
79 94

  
95
	@Override
96
	public void init() {
97
		// TODO Auto-generated method stub
98
	}
99
	
80 100
	/**
81 101
	 * Initializes the item label generator.
82 102
	 */
......
334 354
    }
335 355

  
336 356

  
357

  
358

  
359

  
337 360
}
tmp/org.txm.chartsengine.jfreechart.core/src/org/txm/chartsengine/jfreechart/core/themes/highcharts/defaulttheme/renderers/ItemSelectionXYStepRenderer.java (revision 650)
587 587
	public String getSelectedItemLabelFromDataset(XYDataset dataset, int series, int item)	{
588 588
		return "test label";
589 589
	}
590

  
591
	@Override
592
	public void init() {
593
		// TODO Auto-generated method stub
594
		
595
	}
590 596
}
tmp/org.txm.chartsengine.jfreechart.core/src/org/txm/chartsengine/jfreechart/core/themes/highcharts/defaulttheme/renderers/ItemSelectionCategoryBarRenderer.java (revision 650)
236 236
		this.mouseOverItemSelector.setChartType(chartType);
237 237
	}
238 238

  
239
	@Override
240
	public void init() {
241
		// TODO Auto-generated method stub
242
		
243
	}
239 244

  
240 245

  
246

  
241 247
}
tmp/org.txm.chartsengine.jfreechart.core/src/org/txm/chartsengine/jfreechart/core/themes/highcharts/defaulttheme/renderers/ItemSelectionXYBarRenderer.java (revision 650)
189 189
	}
190 190

  
191 191

  
192
	@Override
193
	public void init() {
194
		// TODO Auto-generated method stub
195
		
196
	}
192 197

  
198

  
199

  
193 200
}
tmp/org.txm.chartsengine.jfreechart.core/src/org/txm/chartsengine/jfreechart/core/themes/highcharts/defaulttheme/HighchartsDefaultTheme.java (revision 650)
529 529

  
530 530

  
531 531
	@Override
532
	public XYLineAndShapeRenderer createXYLineAndShapeRenderer(boolean linesVisible, boolean shapesVisible) {
533
		return new ItemSelectionXYLineAndShapeRenderer(linesVisible, shapesVisible);
532
	public XYLineAndShapeRenderer createXYLineAndShapeRenderer(ChartResult result, JFreeChart chart, boolean linesVisible, boolean shapesVisible) {
533
		return new ItemSelectionXYLineAndShapeRenderer(result, chart, linesVisible, shapesVisible);
534 534
	}
535 535

  
536 536

  
tmp/org.txm.chartsengine.jfreechart.core/src/org/txm/chartsengine/jfreechart/core/themes/base/JFCTheme.java (revision 650)
260 260
	 * @param shapesVisible
261 261
	 * @return
262 262
	 */
263
	public XYLineAndShapeRenderer createXYLineAndShapeRenderer(boolean linesVisible, boolean shapesVisible)	{
263
	public XYLineAndShapeRenderer createXYLineAndShapeRenderer(ChartResult result, JFreeChart chart, boolean linesVisible, boolean shapesVisible)	{
264 264
		return new XYLineAndShapeRenderer(linesVisible, shapesVisible);
265 265
	}
266 266

  
tmp/org.txm.chartsengine.jfreechart.core/src/org/txm/chartsengine/jfreechart/core/renderers/interfaces/IRendererWithItemSelection.java (revision 650)
68 68
     * @see #applySeriesPaint(int, Paint)
69 69
     */
70 70
    public Paint getSeriesPaint(int series);
71
    
72
    /**
73
     * Initializes the renderer.
74
     */
75
    public void init();
76
    
71 77
}
tmp/org.txm.chartsengine.jfreechart.core/src/org/txm/chartsengine/jfreechart/core/JFCChartsEngine.java (revision 650)
25 25
import org.jfree.data.xy.XYSeriesCollection;
26 26
import org.jfree.graphics2d.svg.SVGGraphics2D;
27 27
import org.txm.chartsengine.core.ChartsEngine;
28
import org.txm.chartsengine.core.results.ChartResult;
28 29
import org.txm.chartsengine.jfreechart.core.preferences.JFCChartsEnginePreferences;
29 30
import org.txm.chartsengine.jfreechart.core.themes.base.ExtendedNumberAxis;
31
import org.txm.chartsengine.jfreechart.core.themes.base.JFCTheme;
30 32
import org.txm.chartsengine.jfreechart.core.themes.base.SymbolAxisBetweenTicks;
31
import org.txm.chartsengine.jfreechart.core.themes.base.JFCTheme;
32 33
import org.txm.chartsengine.jfreechart.core.themes.highcharts.defaulttheme.HighchartsDefaultTheme;
33 34
import org.txm.core.preferences.TXMPreferences;
34 35

  
......
98 99
	 * @param dataset
99 100
	 * @return the JFreeChart chart
100 101
	 */
101
	public JFreeChart createXYLineChart(XYSeriesCollection dataset, String title, String xAxisLabel, String yAxisLabel, boolean showLegends, boolean useSplines, boolean linesVisible, boolean shapesVisible,
102
	public JFreeChart createXYLineChart(ChartResult result, XYSeriesCollection dataset, String title, String xAxisLabel, String yAxisLabel, boolean showLegends, boolean useSplines, boolean linesVisible, boolean shapesVisible,
102 103
			boolean domainAxisintegerTicks, boolean rangeAxisintegerTicks, boolean applyTheme, String[] domainAxisSymbols) {
103 104

  
104 105
		JFreeChart chart = ChartFactory.createXYLineChart(title, xAxisLabel, yAxisLabel, dataset, PlotOrientation.VERTICAL, true, false, false);
......
107 108
		XYPlot plot = chart.getXYPlot();
108 109
		if(!useSplines)	{
109 110
			// Custom XYLineAndShapeRenderer selection renderer
110
			plot.setRenderer(this.jfcTheme.createXYLineAndShapeRenderer(linesVisible, shapesVisible));
111
			plot.setRenderer(this.jfcTheme.createXYLineAndShapeRenderer(result, chart, linesVisible, shapesVisible));
111 112
		}
112 113
		else	{
113 114
			// Custom XYSplineRenderer selection renderer
......
146 147

  
147 148
	}
148 149

  
149
	public JFreeChart createXYLineChart(XYSeriesCollection dataset, String title, String xAxisLabel, String yAxisLabel, boolean showLegends, boolean useSplines, boolean linesVisible, boolean shapesVisible,
150
	public JFreeChart createXYLineChart(ChartResult result, XYSeriesCollection dataset, String title, String xAxisLabel, String yAxisLabel, boolean showLegends, boolean useSplines, boolean linesVisible, boolean shapesVisible,
150 151
			boolean domainAxisintegerTicks, boolean rangeAxisintegerTicks, boolean applyTheme) {
151
		return this.createXYLineChart(dataset, title, xAxisLabel, yAxisLabel, showLegends, useSplines, linesVisible, shapesVisible, domainAxisintegerTicks, rangeAxisintegerTicks, applyTheme, null);
152
		return this.createXYLineChart(result, dataset, title, xAxisLabel, yAxisLabel, showLegends, useSplines, linesVisible, shapesVisible, domainAxisintegerTicks, rangeAxisintegerTicks, applyTheme, null);
152 153
	}
153 154

  
154 155
	/**
......
163 164
	 * @param shapesVisible
164 165
	 * @return
165 166
	 */
166
	public JFreeChart createXYLineChart(XYSeriesCollection dataset, String title, String xAxisLabel, String yAxisLabel, boolean showLegends, boolean useSplines, boolean linesVisible, boolean shapesVisible) {
167
		return this.createXYLineChart(dataset, title, xAxisLabel, yAxisLabel, showLegends, useSplines, linesVisible, shapesVisible, false, false, true, null);
167
	public JFreeChart createXYLineChart(ChartResult result, XYSeriesCollection dataset, String title, String xAxisLabel, String yAxisLabel, boolean showLegends, boolean useSplines, boolean linesVisible, boolean shapesVisible) {
168
		return this.createXYLineChart(result, dataset, title, xAxisLabel, yAxisLabel, showLegends, useSplines, linesVisible, shapesVisible, false, false, true, null);
168 169
	}
169 170

  
170 171

  
tmp/org.txm.chartsengine.jfreechart.core/src/org/txm/chartsengine/jfreechart/core/JFCChartCreator.java (revision 650)
10 10
import org.txm.chartsengine.core.ChartCreator;
11 11
import org.txm.chartsengine.core.preferences.ChartsEnginePreferences;
12 12
import org.txm.chartsengine.core.results.ChartResult;
13
import org.txm.chartsengine.jfreechart.core.renderers.interfaces.IRendererWithItemSelection;
13 14

  
14 15

  
15 16

  
......
65 66
			if(chart.getLegend() != null && result.hasParameterChanged(ChartsEnginePreferences.SHOW_LEGEND))	{
66 67
				chart.getLegend().setVisible(result.isLegendVisible());
67 68
			}
68
			// grid visibility
69 69
			// CategoryPlot
70 70
			if(chart.getPlot() instanceof CategoryPlot)	{
71 71
				CategoryPlot plot = (CategoryPlot) chart.getPlot();
72
				// grid visibility
72 73
				plot.setDomainGridlinesVisible(result.isGridVisible());
73 74
				plot.setRangeGridlinesVisible(result.isGridVisible());
75
				
76
				// force the renderer initialization to override theme settings
77
				if(plot.getRenderer() instanceof IRendererWithItemSelection)	{
78
					((IRendererWithItemSelection) plot.getRenderer()).init();
79
				}
74 80
			}
75 81
			// XYPlot
76 82
			else if(chart.getPlot() instanceof XYPlot)	{
77 83
				XYPlot plot = (XYPlot) chart.getPlot();
84
				// grid visibility
78 85
				plot.setRangeGridlinesVisible(result.isGridVisible());
79 86
				plot.setDomainGridlinesVisible(result.isGridVisible());
87
				
88
				// force the renderer initialization to override theme settings
89
				if(plot.getRenderer() instanceof IRendererWithItemSelection)	{
90
					((IRendererWithItemSelection) plot.getRenderer()).init();
91
				}
80 92
			}
81 93
			
94
			
95
			
96
			
97
			
82 98
			chart.setNotify(true);
83 99
		}
84 100
		// File
tmp/org.txm.xmleditor.rcp/src/org/txm/xmleditor/OpenXMLEditor.java (revision 650)
8 8
import org.eclipse.core.commands.ExecutionException;
9 9
import org.eclipse.core.filesystem.EFS;
10 10
import org.eclipse.core.filesystem.IFileStore;
11
import org.eclipse.core.resources.IStorage;
12 11
import org.eclipse.core.runtime.Path;
13
import org.eclipse.equinox.internal.ds.storage.file.FileStorage;
14 12
import org.eclipse.jface.viewers.ISelection;
15 13
import org.eclipse.jface.viewers.IStructuredSelection;
16
import org.eclipse.osgi.util.NLS;
17 14
import org.eclipse.swt.SWT;
18 15
import org.eclipse.swt.widgets.FileDialog;
19 16
import org.eclipse.swt.widgets.Shell;
20
import org.eclipse.ui.IStorageEditorInput;
21 17
import org.eclipse.ui.IWorkbenchPage;
22 18
import org.eclipse.ui.IWorkbenchWindow;
23 19
import org.eclipse.ui.PartInitException;
24 20
import org.eclipse.ui.PlatformUI;
25 21
import org.eclipse.ui.handlers.HandlerUtil;
26 22
import org.eclipse.ui.ide.FileStoreEditorInput;
27
import org.eclipse.wst.xml.ui.internal.tabletree.XMLMultiPageEditorPart;
28
import org.txm.Toolbox;
29 23
import org.txm.core.preferences.TBXPreferences;
30 24
import org.txm.core.preferences.TXMPreferences;
31
import org.txm.rcp.Messages;
32 25
import org.txm.rcp.StatusLine;
33
import org.txm.rcp.TXMWindows;
34 26
import org.txm.rcp.swt.dialog.LastOpened;
35 27
import org.txm.utils.logger.Log;
36 28

  
tmp/org.txm.specificities.core/src/org/txm/specificities/core/chartsengine/jfreechart/JFCSpecificitiesBarChartCreator.java (revision 650)
49 49
        }
50 50
        else	{
51 51
			// Create the line chart
52
	        chart = this.getChartsEngine().createXYLineChart(dataset, specificitiesSelection.getName(), SpecificitiesCoreMessages.Charts_X_AXIS_LABEL, SpecificitiesCoreMessages.Charts_Y_AXIS_LABEL,
52
	        chart = this.getChartsEngine().createXYLineChart(result, dataset, specificitiesSelection.getName(), SpecificitiesCoreMessages.Charts_X_AXIS_LABEL, SpecificitiesCoreMessages.Charts_Y_AXIS_LABEL,
53 53
	        		true, false, true, true, true, false, false);
54 54
        }
55 55

  

Formats disponibles : Unified diff