00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkQtChartNamedSeriesOptionsModel.h 00005 00006 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen 00007 All rights reserved. 00008 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00009 00010 This software is distributed WITHOUT ANY WARRANTY; without even 00011 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00012 PURPOSE. See the above copyright notice for more information. 00013 00014 =========================================================================*/ 00015 /*------------------------------------------------------------------------- 00016 Copyright 2008 Sandia Corporation. 00017 Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation, 00018 the U.S. Government retains certain rights in this software. 00019 -------------------------------------------------------------------------*/ 00020 00021 #ifndef __vtkQtChartNamedSeriesOptionsModel_h 00022 #define __vtkQtChartNamedSeriesOptionsModel_h 00023 00024 #include "vtkQtChartSeriesOptionsModel.h" 00025 #include <QMap> 00026 00027 class VTKQTCHART_EXPORT vtkQtChartNamedSeriesOptionsModel : 00028 public vtkQtChartSeriesOptionsModel 00029 { 00030 Q_OBJECT 00031 public: 00032 typedef vtkQtChartSeriesOptionsModel Superclass; 00033 00039 vtkQtChartNamedSeriesOptionsModel(vtkQtChartSeriesModel* model, 00040 QObject* parent=0); 00041 virtual ~vtkQtChartNamedSeriesOptionsModel(); 00042 00046 vtkQtChartSeriesModel* getSeriesModel() const; 00047 00050 virtual int getNumberOfOptions() const; 00051 00057 virtual vtkQtChartSeriesOptions* getOptions(int series) const; 00058 00064 virtual int getOptionsIndex(vtkQtChartSeriesOptions *options) const; 00065 00066 // this will create new options if none exist. 00067 vtkQtChartSeriesOptions* getOptions(const QString& name); 00068 00070 QString getSeriesName(int series) const; 00071 00072 void addOptions(const QString& name, vtkQtChartSeriesOptions* options); 00073 void removeOptions(const QString& name); 00074 void removeAllOptions(); 00075 00076 protected slots: 00077 virtual void reset(); 00078 virtual void insertSeriesOptions(int first, int last); 00079 00080 protected: 00081 QMap<QString, vtkQtChartSeriesOptions*> Options; 00082 vtkQtChartSeriesModel* Model; 00083 00084 private: 00085 vtkQtChartNamedSeriesOptionsModel(const vtkQtChartNamedSeriesOptionsModel&); // Not implemented. 00086 void operator=(const vtkQtChartNamedSeriesOptionsModel&); // Not implemented. 00087 }; 00088 00089 #endif 00090 00091