/*=========================================================================*/ /* CPAMCapt.hpp : MouseCapturer class. virtual class that all objects capturing*/ /* mouse movement messages must derive from.*/ /**/ /* Version 1.0*/ /* Creation date 24/01/97*/ /* Revision date*/ /**/ /* (c) Ubi Studios 1997*/ /**/ /* DO NOT MODIFY THAT FILE. IF SOMETHING NEEDS TO BE CHANGE, PLEASE CONTACT*/ /* BENOIT GERMAIN.*/ /*=========================================================================*/ #ifndef __CPAMCAPT_HPP__ #define __CPAMCAPT_HPP__ /****************************************/ #ifndef CPA_EXPORT #if defined(CPA_WANTS_IMPORT) #define CPA_EXPORT __declspec(dllimport) #elif defined(CPA_WANTS_EXPORT) #define CPA_EXPORT __declspec(dllexport) #else #define CPA_EXPORT #endif #endif /****************************************/ #ifdef ACTIVE_EDITOR class CPA_MouseCapturer { public: CPA_MouseCapturer(); ~CPA_MouseCapturer(); /*any class deriving from CPA_MouseCapturer one must declare these methods as follows,*/ /*because CPA_MouseCapturer does not derive from CWnd*/ /*CWnd *m_p_oGrabCapture() { return m_p_oGrabCaptureFor(this); }*/ /*if the object deriving from CPA_MouseCapturer does not derive from CWnd,*/ /*an alternative is provided to the no-argument method, but the first one must overloaded as is:*/ /*CWnd *m_p_oGrabCapture() { ASSERT(FALSE); return (CWnd *) NULL; }*/ virtual CWnd *m_p_oGrabCapture() = 0; CWnd *m_p_oGrabCaptureFor(CWnd *pWnd); CWnd *m_p_oSurrenderCapture(BOOL bCheckCoherence = TRUE); private: CWnd *m_p_oPreviousCapturer; CWnd *m_p_oCurrentCapturer; BOOL m_bDestruction; }; #endif /* ACTIVE_EDITOR*/ /*///////////////////////////////////////////////////////////////////////////*/ #endif /* __CPAMCAPT_HPP__*/