00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkQtChartKeyboardZoom.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 _vtkQtChartKeyboardZoom_h 00025 #define _vtkQtChartKeyboardZoom_h 00026 00027 00028 #include "vtkQtChartExport.h" 00029 #include "vtkQtChartKeyboardFunction.h" 00030 00031 00035 class VTKQTCHART_EXPORT vtkQtChartKeyboardZoom : 00036 public vtkQtChartKeyboardFunction 00037 { 00038 public: 00039 enum ZoomFlags 00040 { 00041 ZoomBoth, 00042 ZoomXOnly, 00043 ZoomYOnly 00044 }; 00045 00046 enum ZoomMethod 00047 { 00048 ZoomIn, 00049 ZoomOut 00050 }; 00051 00052 public: 00056 vtkQtChartKeyboardZoom(QObject *parent=0); 00057 virtual ~vtkQtChartKeyboardZoom() {} 00058 00063 virtual void activate(); 00064 00065 protected: 00069 void setZoomFlags(ZoomFlags flags) {this->Flags = flags;} 00070 00074 void setZoomMethod(ZoomMethod method) {this->Method = method;} 00075 00076 private: 00077 ZoomFlags Flags; 00078 ZoomMethod Method; 00079 00080 private: 00081 vtkQtChartKeyboardZoom(const vtkQtChartKeyboardZoom &); 00082 vtkQtChartKeyboardZoom &operator=(const vtkQtChartKeyboardZoom &); 00083 }; 00084 00085 00090 class VTKQTCHART_EXPORT vtkQtChartKeyboardZoomX : 00091 public vtkQtChartKeyboardZoom 00092 { 00093 public: 00097 vtkQtChartKeyboardZoomX(QObject *parent=0); 00098 virtual ~vtkQtChartKeyboardZoomX() {} 00099 00100 private: 00101 vtkQtChartKeyboardZoomX(const vtkQtChartKeyboardZoomX &); 00102 vtkQtChartKeyboardZoomX &operator=(const vtkQtChartKeyboardZoomX &); 00103 }; 00104 00105 00110 class VTKQTCHART_EXPORT vtkQtChartKeyboardZoomY : 00111 public vtkQtChartKeyboardZoom 00112 { 00113 public: 00117 vtkQtChartKeyboardZoomY(QObject *parent=0); 00118 virtual ~vtkQtChartKeyboardZoomY() {} 00119 00120 private: 00121 vtkQtChartKeyboardZoomY(const vtkQtChartKeyboardZoomY &); 00122 vtkQtChartKeyboardZoomY &operator=(const vtkQtChartKeyboardZoomY &); 00123 }; 00124 00125 00130 class VTKQTCHART_EXPORT vtkQtChartKeyboardZoomOut : 00131 public vtkQtChartKeyboardZoom 00132 { 00133 public: 00137 vtkQtChartKeyboardZoomOut(QObject *parent=0); 00138 virtual ~vtkQtChartKeyboardZoomOut() {} 00139 00140 private: 00141 vtkQtChartKeyboardZoomOut(const vtkQtChartKeyboardZoomOut &); 00142 vtkQtChartKeyboardZoomOut &operator=(const vtkQtChartKeyboardZoomOut &); 00143 }; 00144 00145 00150 class VTKQTCHART_EXPORT vtkQtChartKeyboardZoomOutX : 00151 public vtkQtChartKeyboardZoomOut 00152 { 00153 public: 00157 vtkQtChartKeyboardZoomOutX(QObject *parent=0); 00158 virtual ~vtkQtChartKeyboardZoomOutX() {} 00159 00160 private: 00161 vtkQtChartKeyboardZoomOutX(const vtkQtChartKeyboardZoomOutX &); 00162 vtkQtChartKeyboardZoomOutX &operator=(const vtkQtChartKeyboardZoomOutX &); 00163 }; 00164 00165 00170 class VTKQTCHART_EXPORT vtkQtChartKeyboardZoomOutY : 00171 public vtkQtChartKeyboardZoomOut 00172 { 00173 public: 00177 vtkQtChartKeyboardZoomOutY(QObject *parent=0); 00178 virtual ~vtkQtChartKeyboardZoomOutY() {} 00179 00180 private: 00181 vtkQtChartKeyboardZoomOutY(const vtkQtChartKeyboardZoomOutY &); 00182 vtkQtChartKeyboardZoomOutY &operator=(const vtkQtChartKeyboardZoomOutY &); 00183 }; 00184 00185 #endif