Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

GUI/Widgets/vtkKWObject.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Module:    $RCSfile: vtkKWObject.h,v $
00004 
00005   Copyright (c) Kitware, Inc.
00006   All rights reserved.
00007   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
00008 
00009      This software is distributed WITHOUT ANY WARRANTY; without even
00010      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00011      PURPOSE.  See the above copyright notice for more information.
00012 
00013 =========================================================================*/
00025 #ifndef __vtkKWObject_h
00026 #define __vtkKWObject_h
00027 
00028 #include "vtkObject.h"
00029 
00030 #include "vtkTcl.h" // Needed for Tcl interpreter
00031 #include "vtkKWWidgets.h" // Needed for export symbols directives
00032 
00033 class vtkKWApplication;
00034 class vtkCallbackCommand;
00035 
00036 class KWWIDGETS_EXPORT vtkKWObject : public vtkObject
00037 {
00038 public:
00039   static vtkKWObject* New();
00040   vtkTypeRevisionMacro(vtkKWObject,vtkObject);
00041   void PrintSelf(ostream& os, vtkIndent indent);
00042 
00044   const char *GetTclName();
00045 
00047 
00048   vtkGetObjectMacro(Application,vtkKWApplication);
00049   virtual void SetApplication (vtkKWApplication* arg);
00051 
00052   //BTX
00054 
00056   virtual const char* Script(const char *EventString, ...);
00057   //ETX
00059   
00061 
00070   virtual void AddCallbackCommandObserver(
00071     vtkObject *object, unsigned long event);
00072   virtual void RemoveCallbackCommandObserver(
00073     vtkObject *object, unsigned long event);
00075 
00077 
00081   virtual void AddCallbackCommandObservers() {};
00082   virtual void RemoveCallbackCommandObservers();
00084 
00085 protected:
00086   vtkKWObject();
00087   ~vtkKWObject();
00088 
00090 
00097   void SetObjectMethodCommand(
00098     char **command, vtkObject *object, const char *method);
00100 
00108   virtual vtkCallbackCommand* GetCallbackCommand();
00109 
00111 
00114   static void ProcessCallbackCommandEventsFunction(
00115     vtkObject *object, unsigned long event, void *clientdata, void *calldata);
00117 
00119 
00122   virtual void ProcessCallbackCommandEvents(
00123     vtkObject *caller, unsigned long event, void *calldata);
00125 
00126 private:
00127 
00128   vtkKWApplication *Application;
00129   char *TclName;
00130   
00133   vtkCallbackCommand *CallbackCommand;
00134 
00135   vtkKWObject(const vtkKWObject&); // Not implemented
00136   void operator=(const vtkKWObject&); // Not implemented
00137 };
00138 
00139 #endif
00140 

Generated on Tue May 30 12:31:43 2006 for ParaView by doxygen 1.3.5