]> Creatis software - cpPlugins.git/blob - lib/cpExtensions/QT/MPRInteractionCommand.h
...
[cpPlugins.git] / lib / cpExtensions / QT / MPRInteractionCommand.h
1 #ifndef __cpExtensions__QT__MPRInteractionCommand__h__
2 #define __cpExtensions__QT__MPRInteractionCommand__h__
3
4 #include <cpExtensions/Config.h>
5 #include <cpExtensions/Interaction/BaseStyle.h>
6 #include <vtkCommand.h>
7 #include <vtkSmartPointer.h>
8 #include <set>
9
10 // -------------------------------------------------------------------------
11 namespace cpExtensions
12 {
13   namespace QT
14   {
15     class ImageWidget;
16     class MPR3DWidget;
17
18     /**
19      */
20     class cpExtensions_EXPORT MPRInteractionCommand
21       : public vtkCommand
22     {
23     public:
24       typedef MPRInteractionCommand Self;
25
26     public:
27       vtkTypeMacro( MPRInteractionCommand, vtkCommand );
28
29     public:
30       static Self* New( );
31
32       void AddWidget( QWidget* w );
33
34       virtual void Execute(
35         vtkObject* caller, unsigned long evId, void* data
36         ) cpExtensions_OVERRIDE;
37       
38     protected:
39       MPRInteractionCommand( );
40       virtual ~MPRInteractionCommand( );
41
42     private:
43       // Purposely not implemented
44       MPRInteractionCommand( const Self& );
45       Self& operator=( const Self& );
46
47     protected:
48       std::set< cpExtensions::QT::ImageWidget* > m_ImageWidgets;
49       std::set< cpExtensions::QT::MPR3DWidget* > m_MPR3DWidgets;
50     };
51
52   } // ecapseman
53
54 } // ecapseman
55
56 #endif // __cpExtensions__QT__MPRInteractionCommand__h__
57
58 // eof - $RCSfile$