VTK
dox/Interaction/Widgets/vtkRectilinearWipeWidget.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    vtkRectilinearWipeWidget.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 =========================================================================*/
00082 #ifndef __vtkRectilinearWipeWidget_h
00083 #define __vtkRectilinearWipeWidget_h
00084 
00085 #include "vtkInteractionWidgetsModule.h" // For export macro
00086 #include "vtkAbstractWidget.h"
00087 
00088 class vtkRectilinearWipeRepresentation;
00089 
00090 
00091 class VTKINTERACTIONWIDGETS_EXPORT vtkRectilinearWipeWidget : public vtkAbstractWidget
00092 {
00093 public:
00095   static vtkRectilinearWipeWidget *New();
00096 
00098 
00099   vtkTypeMacro(vtkRectilinearWipeWidget,vtkAbstractWidget);
00100   void PrintSelf(ostream& os, vtkIndent indent);
00102 
00104 
00107   void SetRepresentation(vtkRectilinearWipeRepresentation *r)
00108     {this->Superclass::SetWidgetRepresentation(reinterpret_cast<vtkWidgetRepresentation*>(r));}
00110 
00112 
00113   vtkRectilinearWipeRepresentation *GetRectilinearWipeRepresentation()
00114     {return reinterpret_cast<vtkRectilinearWipeRepresentation*>(this->WidgetRep);}
00116 
00118   virtual void CreateDefaultRepresentation();
00119 
00120 protected:
00121   vtkRectilinearWipeWidget();
00122   ~vtkRectilinearWipeWidget();
00123 
00124   // These methods handle events
00125   static void SelectAction(vtkAbstractWidget*);
00126   static void MoveAction(vtkAbstractWidget*);
00127   static void EndSelectAction(vtkAbstractWidget*);
00128 
00129   // helper methods for cursor management
00130   void SetCursor(int state);
00131 
00132 //BTX - manage the state of the widget
00133   int WidgetState;
00134   enum _WidgetState
00135   {
00136     Start=0,
00137     Selected
00138   };
00139 //ETX
00140 
00141 private:
00142   vtkRectilinearWipeWidget(const vtkRectilinearWipeWidget&);  //Not implemented
00143   void operator=(const vtkRectilinearWipeWidget&);  //Not implemented
00144 };
00145 
00146 #endif