VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkQtChartMouseSelectionHandler.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 _vtkQtChartMouseSelectionHandler_h 00025 #define _vtkQtChartMouseSelectionHandler_h 00026 00027 #include "vtkQtChartExport.h" 00028 #include <QObject> 00029 00030 class vtkQtChartArea; 00031 class vtkQtChartMouseBox; 00032 class QMouseEvent; 00033 class QString; 00034 class QStringList; 00035 00036 00041 class VTKQTCHART_EXPORT vtkQtChartMouseSelectionHandler : public QObject 00042 { 00043 public: 00047 vtkQtChartMouseSelectionHandler(QObject *parent=0); 00048 virtual ~vtkQtChartMouseSelectionHandler() {} 00049 00054 virtual int getNumberOfModes() const=0; 00055 00059 virtual void getModeList(QStringList &list) const=0; 00060 00068 virtual bool mousePressEvent(const QString &mode, QMouseEvent *e, 00069 vtkQtChartArea *chart)=0; 00070 00076 virtual bool isMouseMoveAvailable(const QString &mode) const=0; 00077 00082 virtual void startMouseMove(const QString &mode, vtkQtChartArea *chart)=0; 00083 00089 virtual void mouseMoveEvent(const QString &mode, QMouseEvent *e, 00090 vtkQtChartArea *chart)=0; 00091 00096 virtual void finishMouseMove(const QString &mode, vtkQtChartArea *chart)=0; 00097 00105 virtual bool mouseReleaseEvent(const QString &mode, QMouseEvent *e, 00106 vtkQtChartArea *chart)=0; 00107 00115 virtual bool mouseDoubleClickEvent(const QString &mode, QMouseEvent *e, 00116 vtkQtChartArea *chart)=0; 00117 }; 00118 00119 #endif