VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkQtChartSeriesSelectionHandler.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 00023 00024 #ifndef _vtkQtChartSeriesSelectionHandler_h 00025 #define _vtkQtChartSeriesSelectionHandler_h 00026 00027 #include "vtkQtChartExport.h" 00028 #include "vtkQtChartMouseSelectionHandler.h" 00029 00030 class vtkQtChartSeriesLayer; 00031 class vtkQtChartSeriesSelectionHandlerInternal; 00032 00033 00038 class VTKQTCHART_EXPORT vtkQtChartSeriesSelectionHandler : 00039 public vtkQtChartMouseSelectionHandler 00040 { 00041 public: 00045 vtkQtChartSeriesSelectionHandler(QObject *parent=0); 00046 virtual ~vtkQtChartSeriesSelectionHandler(); 00047 00049 00050 00051 00052 00053 00054 00055 00056 00057 void setModeNames(const QString &series, const QString &points); 00058 00069 void setMousePressModifiers(Qt::KeyboardModifiers series, 00070 Qt::KeyboardModifiers points); 00071 00076 vtkQtChartSeriesLayer *getLayer() const {return this->Layer;} 00077 00081 void setLayer(vtkQtChartSeriesLayer *layer) {this->Layer = layer;} 00083 00085 00086 virtual int getNumberOfModes() const; 00087 virtual void getModeList(QStringList &list) const; 00088 00089 virtual bool mousePressEvent(const QString &mode, QMouseEvent *e, 00090 vtkQtChartArea *chart); 00091 virtual bool isMouseMoveAvailable(const QString &mode) const; 00092 virtual void startMouseMove(const QString &mode, vtkQtChartArea *chart); 00093 virtual void mouseMoveEvent(const QString &mode, QMouseEvent *e, 00094 vtkQtChartArea *chart); 00095 virtual void finishMouseMove(const QString &mode, vtkQtChartArea *chart); 00096 virtual bool mouseReleaseEvent(const QString &mode, QMouseEvent *e, 00097 vtkQtChartArea *chart); 00098 virtual bool mouseDoubleClickEvent(const QString &mode, QMouseEvent *e, 00099 vtkQtChartArea *chart); 00101 00102 protected: 00103 vtkQtChartSeriesLayer *Layer; 00104 00105 private: 00107 vtkQtChartSeriesSelectionHandlerInternal *Internal; 00108 00109 private: 00110 vtkQtChartSeriesSelectionHandler(const vtkQtChartSeriesSelectionHandler &); 00111 vtkQtChartSeriesSelectionHandler &operator=( 00112 const vtkQtChartSeriesSelectionHandler &); 00113 }; 00114 00115 #endif