VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkQtChartViewBase.h,v $ 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 (c) Sandia Corporation 00017 See Copyright.txt or http://www.paraview.org/HTML/Copyright.html for details. 00018 ----------------------------------------------------------------------------*/ 00030 #ifndef __vtkQtChartViewBase_h 00031 #define __vtkQtChartViewBase_h 00032 00033 #include "QVTKWin32Header.h" 00034 #include "vtkView.h" 00035 00036 class vtkQtChartArea; 00037 class vtkQtChartAxis; 00038 class vtkQtChartLegend; 00039 class vtkQtChartMouseSelection; 00040 class vtkQtChartSeriesModelCollection; 00041 class vtkQtChartWidget; 00042 class vtkTable; 00043 00044 class QVTK_EXPORT vtkQtChartViewBase : public vtkView 00045 { 00046 public: 00047 static vtkQtChartViewBase *New(); 00048 vtkTypeRevisionMacro(vtkQtChartViewBase, vtkView); 00049 void PrintSelf(ostream& os, vtkIndent indent); 00050 00052 virtual void Update(); 00053 00055 virtual void Render(); 00056 00058 void Show(); 00059 00062 void AddTableToView(vtkTable* table); 00063 00065 void SetTitle(const char* title); 00066 00068 void SetTitleFont(const char* family, int pointSize, bool bold, bool italic); 00069 00071 void SetTitleColor(double red, double green, double blue); 00072 00074 void SetTitleAlignment(int alignment); 00075 00077 void SetAxisTitle(int index, const char* title); 00078 00080 00081 void SetAxisTitleFont(int index, const char* family, int pointSize, 00082 bool bold, bool italic); 00084 00086 void SetAxisTitleColor(int index, double red, double green, double blue); 00087 00089 void SetAxisTitleAlignment(int index, int alignment); 00090 00092 void SetLegendVisibility(bool visible); 00093 00095 void SetLegendLocation(int location); 00096 00098 void SetLegendFlow(int flow); 00099 00101 void SetAxisVisibility(int index, bool visible); 00102 00104 void SetAxisColor(int index, double red, double green, double blue); 00105 00107 void SetGridVisibility(int index, bool visible); 00108 00110 void SetGridColorType(int index, int gridColorType); 00111 00113 void SetGridColor(int index, double red, double green, double blue); 00114 00116 void SetAxisLabelVisibility(int index, bool visible); 00117 00119 00120 void SetAxisLabelFont(int index, const char* family, int pointSize, 00121 bool bold, bool italic); 00123 00125 void SetAxisLabelColor(int index, double red, double green, double blue); 00126 00128 void SetAxisLabelNotation(int index, int notation); 00129 00131 void SetAxisLabelPrecision(int index, int precision); 00132 00134 void SetAxisScale(int index, int scale); 00135 00137 void SetAxisBehavior(int index, int behavior); 00138 00140 void SetAxisRange(int index, double minimum, double maximum); 00141 00143 void SetAxisRange(int index, int minimum, int maximum); 00144 00145 //BTX 00147 virtual void AddChartSelectionHandlers(vtkQtChartMouseSelection* selector); 00148 00150 vtkQtChartWidget* GetChartWidget(); 00151 00154 vtkQtChartArea* GetChartArea(); 00155 00157 vtkQtChartAxis* GetAxis(int index); 00158 00160 virtual vtkQtChartSeriesModelCollection* GetChartSeriesModel(); 00161 00163 00164 vtkQtChartLegend* GetLegend(); 00165 //ETX 00167 00169 virtual void SetupDefaultInteractor(); 00170 00172 00173 void SetColorSchemeToSpectrum(); 00174 void SetColorSchemeToWarm(); 00175 void SetColorSchemeToCool(); 00176 void SetColorSchemeToBlues(); 00177 void SetColorSchemeToWildFlower(); 00178 void SetColorSchemeToCitrus(); 00180 00181 protected: 00183 virtual vtkDataRepresentation* CreateDefaultRepresentation(vtkAlgorithmOutput* conn); 00184 00185 vtkQtChartViewBase(); 00186 ~vtkQtChartViewBase(); 00187 00188 private: 00189 //BTX 00190 class vtkInternal; 00191 vtkInternal* Internal; 00192 //ETX 00193 00194 private: 00195 vtkQtChartViewBase(const vtkQtChartViewBase&); // Not implemented. 00196 void operator=(const vtkQtChartViewBase&); // Not implemented. 00197 }; 00198 00199 #endif