00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00041 #ifndef VTK_EVENT_QT_SLOT_CONNECT
00042 #define VTK_EVENT_QT_SLOT_CONNECT
00043
00044 #include "vtkObject.h"
00045 #include "vtkCommand.h"
00046 #include "QVTKWin32Header.h"
00047 #include "qobject.h"
00048
00049 class QObject;
00050 class vtkQtConnections;
00051 class vtkQtConnection;
00052
00053
00054 class QVTK_EXPORT vtkEventQtSlotConnect : public vtkObject
00055 {
00056 public:
00057 static vtkEventQtSlotConnect* New();
00058 vtkTypeMacro(vtkEventQtSlotConnect, vtkObject)
00059
00060
00061 void PrintSelf(ostream& os, vtkIndent indent);
00062
00064
00067 virtual void Connect(vtkObject* vtk_obj, unsigned long event,
00068 const QObject* qt_obj, const char* slot,
00069 void* client_data=NULL, float priority=0.0
00070 ,Qt::ConnectionType type = Qt::AutoConnection);
00072
00074
00079 virtual void Disconnect(
00080 vtkObject* vtk_obj=NULL, unsigned long event=vtkCommand::NoEvent,
00081 const QObject* qt_obj=NULL, const char* slot = 0, void* client_data=NULL);
00083
00084 protected:
00085 vtkQtConnections* Connections;
00086 friend class vtkQtConnection;
00087 void RemoveConnection(vtkQtConnection*);
00088
00089 vtkEventQtSlotConnect();
00090 ~vtkEventQtSlotConnect();
00091
00092 private:
00093
00094 vtkEventQtSlotConnect(const vtkEventQtSlotConnect&);
00095 void operator=(const vtkEventQtSlotConnect&);
00096 };
00097
00098 #endif
00099