public TrendQualitySpec quality = TrendQualitySpec.DEFAULT;
public boolean printing = false;
boolean singleAxis;
+ boolean singleAxisShowLegends;
// Data nodes
List<ItemNode> analogItems = new ArrayList<ItemNode>();
// Setup vertical ruler nodes
singleAxis = spec.axisMode == YAxisMode.SingleAxis;
- if (singleAxis) {
+ singleAxisShowLegends = spec.axisMode == YAxisMode.SingleAxisShowLegends;
+ if(singleAxisShowLegends) {
+ if (yaxisModeChanged || vertRulers.size() != 1 || vertRuler == null) {
+ for (VertRuler vr : vertRulers) removeNode(vr);
+ vertRulers.clear();
+
+ vertRuler = addNode("VertRuler", VertRuler.class);
+ vertRulers.add( vertRuler );
+ }
+
+ vertRuler.manualscale = true;
+ vertRuler.singleAxisShowLegendsMaxLegends = spec.singleAxisShowLegendsMaxLegends;
+ for (int i=0; i<analogItems.size(); i++) {
+ ItemNode item = analogItems.get(i);
+ vertRuler.addExtraLabel(item.item.label, item.color);
+ item.ruler = vertRuler;
+ item.trendNode = this;
+ if (item.item.scale instanceof Scale.Manual == false) vertRuler.manualscale = false;
+ }
+ }
+ else if (singleAxis) {
if (yaxisModeChanged || vertRulers.size() != 1 || vertRuler == null) {
for (VertRuler vr : vertRulers) removeNode(vr);
vertRulers.clear();
ItemNode item = analogItems.get(i);
VertRuler vr = vertRulers.get(i);
vr.setZIndex(1000 + i);
- vr.color = item.color;
vr.label = item.item.label;
+ vr.color = item.color;
vr.manualscale = item.item.scale instanceof Scale.Manual;
item.ruler = vr;
item.trendNode = this;