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 #if QT_VERSION >= 0x040000
00071 ,Qt::ConnectionType type = Qt::AutoConnection);
00073 #else
00074 );
00075 #endif
00076
00078
00083 virtual void Disconnect(
00084 vtkObject* vtk_obj=NULL, unsigned long event=vtkCommand::NoEvent,
00085 const QObject* qt_obj=NULL, const char* slot = 0, void* client_data=NULL);
00087
00088 protected:
00089 vtkQtConnections* Connections;
00090 friend class vtkQtConnection;
00091 void RemoveConnection(vtkQtConnection*);
00092
00093 vtkEventQtSlotConnect();
00094 ~vtkEventQtSlotConnect();
00095
00096 private:
00097
00098 vtkEventQtSlotConnect(const vtkEventQtSlotConnect&);
00099 void operator=(const vtkEventQtSlotConnect&);
00100 };
00101
00102 #endif
00103