#region License Information /* HeuristicLab * Copyright (C) 2002-2013 Heuristic and Evolutionary Algorithms Laboratory (HEAL) * * This file is part of HeuristicLab. * * HeuristicLab is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * HeuristicLab is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with HeuristicLab. If not, see . */ #endregion using System.Drawing; using HeuristicLab.Common; using HeuristicLab.Core; using HeuristicLab.Data; using System; using System.Collections.Generic; namespace HeuristicLab.DataPreprocessing { [Item("PreprocessingChart", "Represents a preprocessing chart.")] public class PreprocessingChartContent : Item, IViewChartShortcut { private bool allInOneMode = true; private ICheckedItemList variableItemList = null; private readonly IChartLogic chartLogic; public PreprocessingChartContent(IChartLogic chartLogic) { this.chartLogic = chartLogic; } public PreprocessingChartContent(PreprocessingChartContent content, Cloner cloner) : base(content, cloner) { this.allInOneMode = content.allInOneMode; this.chartLogic = content.chartLogic; this.variableItemList = cloner.Clone>(variableItemList); } public IChartLogic ChartLogic { get { return chartLogic; } } public static new Image StaticItemImage { get { return HeuristicLab.Common.Resources.VSImageLibrary.PieChart; } } public override IDeepCloneable Clone(Cloner cloner) { return new PreprocessingChartContent(this, cloner); } public event DataPreprocessingChangedEventHandler Changed { add { chartLogic.Changed += value; } remove { chartLogic.Changed -= value; } } public bool AllInOneMode { get { return this.allInOneMode; } set { this.allInOneMode = value; } } public ICheckedItemList VariableItemList { get { return this.variableItemList; } set { this.variableItemList = value; } } } }