00001 //============================================================================= 00002 // This file is part of VTKEdge. See vtkedge.org for more information. 00003 // 00004 // Copyright (c) 2010 Kitware, Inc. 00005 // 00006 // VTKEdge may be used under the terms of the BSD License 00007 // Please see the file Copyright.txt in the root directory of 00008 // VTKEdge for further information. 00009 // 00010 // Alternatively, you may see: 00011 // 00012 // http://www.vtkedge.org/vtkedge/project/license.html 00013 // 00014 // 00015 // For custom extensions, consulting services, or training for 00016 // this or any other Kitware supported open source project, please 00017 // contact Kitware at sales@kitware.com. 00018 // 00019 // 00020 //============================================================================= 00021 00031 #ifndef __vtkKWEAbstractPaintbrushWidget_h 00032 #define __vtkKWEAbstractPaintbrushWidget_h 00033 00034 #include "VTKEdgeConfigure.h" // needed for export symbols directives 00035 #include "vtkAbstractWidget.h" 00036 00037 class vtkKWEPaintbrushRepresentation; 00038 class vtkKWEPaintbrushAnnotationWidget; 00039 class vtkKWEWidgetGroup; 00040 class vtkKWEPaintbrushWidgetCallbackMapper; 00041 00042 class VTKEdge_WIDGETS_EXPORT vtkKWEAbstractPaintbrushWidget : public vtkAbstractWidget 00043 { 00044 //BTX 00045 // TODO: Move this to the superclass. 00046 friend class vtkKWEWidgetGroup; 00047 //ETX 00048 public: 00049 00051 00052 vtkTypeRevisionMacro(vtkKWEAbstractPaintbrushWidget,vtkAbstractWidget); 00053 void PrintSelf(ostream& os, vtkIndent indent); 00055 00057 00059 virtual void Register(vtkObjectBase* o); 00060 virtual void UnRegister(vtkObjectBase* o); 00062 00064 00068 virtual void SetCallbackMapper( vtkKWEPaintbrushWidgetCallbackMapper * ); 00069 vtkGetObjectMacro( CallbackMapper, vtkWidgetCallbackMapper ); 00071 00073 00074 vtkGetObjectMacro( WidgetGroup, vtkKWEWidgetGroup ); 00076 00077 protected: 00078 vtkKWEAbstractPaintbrushWidget(); 00079 ~vtkKWEAbstractPaintbrushWidget() {}; 00080 00081 vtkKWEWidgetGroup* WidgetGroup; 00082 00083 // We need to break reference count loops. The WidgetGroup ref counts us 00084 // and we ref-count the WidgetGroup. 00085 virtual void ReportReferences(vtkGarbageCollector* collector); 00086 00087 void * Payload; 00088 00089 private: 00090 vtkKWEAbstractPaintbrushWidget(const vtkKWEAbstractPaintbrushWidget&); //Not implemented 00091 void operator=(const vtkKWEAbstractPaintbrushWidget&); //Not implemented 00092 }; 00093 00094 #endif 00095
1.7.1