/********************************************************************************
 * Copyright (c) 2015-2018 Contributors to the Eclipse Foundation
 *
 * See the NOTICE file(s) distributed with this work for additional
 * information regarding copyright ownership.
 *
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Public License v. 2.0 which is available at
 * http://www.eclipse.org/legal/epl-2.0.
 *
 * SPDX-License-Identifier: EPL-2.0
 *
 ********************************************************************************/
import { Node } from '../../../navigator/node';
import { MeasuredValues } from './measured-values.class';
import { ChartPoint } from './chart-point.class';
import { PrimeChartDataSet } from '../chartviewer.model';

export class ChartXyDataSet implements PrimeChartDataSet {
  // mandatory
  label: string;
  data: ChartPoint[];

  xUnit?: string;
  yUnit?: string;

  // remove?
  hidden?: boolean;
  measuredValues?: MeasuredValues;
  channel?: Node;

  // point styles
  pointBackgroundColor?: string;
  pointBorderColor?: string;
  pointHoverBackgroundColor?: string;
  pointHoverBorderColor?: string;
  pointRadius: number;
  pointHoverRadius?: number;

  // line styles
  borderWidth: number;
  fill: boolean;
  borderColor: string;
  lineTension: number;
  showLine: boolean;

  // general
  backgroundColor?: string;

  constructor (label: string, data: ChartPoint[]) {
    this.label = label;
    this.data = data;
  }
}
