blob: c50a748e4434b8c130651fa81e3f0af418aee48e [file] [log] [blame]
/*****************************************************************************
* Copyright (c) 2016 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
* which accompanies this distribution, and is available at
* https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
*
* Contributors:
* David LOPEZ BETANCUR (CEA LIST)
* Sebastien REVOL (CEA LIST)
*
*****************************************************************************/
package org.eclipse.papyrus.moka.xygraph.mapping.writing;
import org.eclipse.nebula.visualization.xygraph.figures.Trace;
import org.eclipse.papyrus.moka.xygraph.model.reflection.TraceStructuralFeature;
import org.eclipse.papyrus.moka.xygraph.model.xygraph.TraceDescriptor;
import org.eclipse.papyrus.moka.xygraph.mapping.common.XYGraphWidgetBinder;
import org.eclipse.papyrus.moka.xygraph.mapping.common.XYGraphMappingHelper;
public interface TraceUpdateStrategy {
public void commitUpdate();
public void updateTraceDescriptor(Trace trace, XYGraphWidgetBinder map);
public <T> void updateTraceFeature( TraceDescriptor tDesc, TraceStructuralFeature field, T newValue);
default void updateAllFeatures(Trace trace, XYGraphWidgetBinder map){
TraceDescriptor tDesc = map.getDescriptorFor(trace);
updateTraceFeature(tDesc, TraceStructuralFeature.AreaAlpha, trace.getAreaAlpha());
updateTraceFeature(tDesc, TraceStructuralFeature.BaseLine,XYGraphMappingHelper.descTraceBaseLine(trace.getBaseLine()));
updateTraceFeature(tDesc, TraceStructuralFeature.ErrorBarCapWidth,tDesc.getErrorBarCapWidth());
updateTraceFeature(tDesc, TraceStructuralFeature.ErrorBarColor,XYGraphMappingHelper.mapColor(trace.getErrorBarColor()));
updateTraceFeature(tDesc, TraceStructuralFeature.LineWidth,trace.getLineWidth());
updateTraceFeature(tDesc, TraceStructuralFeature.PointSize,trace.getPointSize());
updateTraceFeature(tDesc, TraceStructuralFeature.PointStyle,XYGraphMappingHelper.descPointStyle(trace.getPointStyle()));
updateTraceFeature(tDesc, TraceStructuralFeature.TraceColor,XYGraphMappingHelper.mapColor(trace.getTraceColor()));
updateTraceFeature(tDesc, TraceStructuralFeature.TraceType,XYGraphMappingHelper.descTraceType(trace.getTraceType()));
updateTraceFeature(tDesc, TraceStructuralFeature.XErrorBarType,XYGraphMappingHelper.descErrorBarType(trace.getXErrorBarType()));
updateTraceFeature(tDesc, TraceStructuralFeature.YErrorBarType,XYGraphMappingHelper.descErrorBarType(trace.getYErrorBarType()));
updateTraceFeature(tDesc, TraceStructuralFeature.AntiAliasing,trace.isAntiAliasing());
updateTraceFeature(tDesc, TraceStructuralFeature.DrawYErrorInArea,trace.isDrawYErrorInArea());
updateTraceFeature(tDesc, TraceStructuralFeature.ErrorBarEnabled,trace.isErrorBarEnabled());
updateTraceFeature(tDesc, TraceStructuralFeature.Name,trace.getName());
//Only
updateTraceFeature(tDesc, TraceStructuralFeature.XAxis,map.getDescriptorFor(trace.getXAxis()));
updateTraceFeature(tDesc, TraceStructuralFeature.YAxis,map.getDescriptorFor(trace.getYAxis()));
}
}