• Main Page
  • Related Pages
  • Namespaces
  • Classes
  • Files
  • File List
  • File Members

dox/Widgets/vtkParallelopipedWidget.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    $RCSfile: vtkParallelopipedWidget.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 =========================================================================*/
00046 #ifndef __vtkParallelopipedWidget_h
00047 #define __vtkParallelopipedWidget_h
00048 
00049 #include "vtkAbstractWidget.h"
00050 
00051 class vtkParallelopipedRepresentation;
00052 class vtkHandleWidget;
00053 class vtkWidgetSet;
00054 
00055 class VTK_WIDGETS_EXPORT vtkParallelopipedWidget : public vtkAbstractWidget
00056 {
00057   //BTX
00058   friend class vtkWidgetSet;
00059   //ETX
00060 public:
00062   static vtkParallelopipedWidget *New();
00063 
00064   vtkTypeRevisionMacro(vtkParallelopipedWidget,vtkAbstractWidget);
00065   void PrintSelf(ostream& os, vtkIndent indent);
00066 
00071   virtual void SetEnabled(int);
00072 
00074 
00077   void SetRepresentation(vtkParallelopipedRepresentation *r)
00078     {
00079     this->Superclass::SetWidgetRepresentation(
00080         reinterpret_cast<vtkWidgetRepresentation*>(r));
00081     }
00083   
00085 
00087   vtkSetMacro(EnableChairCreation,int);
00088   vtkGetMacro(EnableChairCreation,int);
00089   vtkBooleanMacro(EnableChairCreation,int);
00091 
00093   void CreateDefaultRepresentation();
00094 
00097   virtual void SetProcessEvents(int);
00098   
00099 protected:
00100   vtkParallelopipedWidget();
00101   ~vtkParallelopipedWidget();
00102 
00103   static void RequestResizeCallback             (vtkAbstractWidget* );
00104   static void RequestResizeAlongAnAxisCallback  (vtkAbstractWidget* );
00105   static void RequestChairModeCallback          (vtkAbstractWidget* );
00106   static void TranslateCallback                 (vtkAbstractWidget* );
00107   static void OnMouseMoveCallback               (vtkAbstractWidget* );
00108   static void OnLeftButtonUpCallback            (vtkAbstractWidget* );
00109 
00110   // Control whether chairs can be created
00111   int EnableChairCreation;
00112 
00114   void BeginTranslateAction ( vtkParallelopipedWidget *dispatcher);
00115   void TranslateAction ( vtkParallelopipedWidget *dispatcher);
00117    
00118   // helper methods for cursor management
00119   void SetCursor(int state);
00120 
00121   // To break reference count loops
00122   virtual void ReportReferences(vtkGarbageCollector* collector);
00123 
00124   // The positioning handle widgets
00125   vtkHandleWidget **HandleWidgets;
00126 
00127   //BTX
00129 
00130   enum WidgetEventIds 
00131     {
00132     RequestResizeEvent = 10000,
00133     RequestResizeAlongAnAxisEvent,
00134     RequestChairModeEvent
00135     };
00136   //ETX
00138   
00139   vtkWidgetSet* WidgetSet;
00140   
00141 private:
00142   vtkParallelopipedWidget(const vtkParallelopipedWidget&);  //Not implemented
00143   void operator=(const vtkParallelopipedWidget&);  //Not implemented
00144 };
00145 
00146 #endif

Generated by  doxygen 1.7.1