1///////////////////////////////////////////////////////////////////////////// 2// Name: wx/cocoa/trackingrectmanager.h 3// Purpose: wxCocoaTrackingRectManager 4// Notes: Source in window.mm 5// Author: David Elliott <dfe@cox.net> 6// Modified by: 7// Created: 2007/05/02 8// RCS-ID: $Id: trackingrectmanager.h 51595 2008-02-08 09:12:04Z DE $ 9// Copyright: (c) 2007 Software 2000 Ltd. 10// Licence: wxWindows licence 11///////////////////////////////////////////////////////////////////////////// 12#ifndef __WX_COCOA_TRACKINGRECTMANAGER_H__ 13#define __WX_COCOA_TRACKINGRECTMANAGER_H__ 14 15#include <CoreFoundation/CFRunLoop.h> 16 17#define wxTRACE_COCOA_TrackingRect wxT("COCOA_TrackingRect") 18 19class wxCocoaTrackingRectManager 20{ 21 DECLARE_NO_COPY_CLASS(wxCocoaTrackingRectManager) 22public: 23 wxCocoaTrackingRectManager(wxWindow *window); 24 void ClearTrackingRect(); 25 void BuildTrackingRect(); 26 void RebuildTrackingRectIfNeeded(); 27 void RebuildTrackingRect(); 28 bool IsOwnerOfEvent(NSEvent *anEvent); 29 ~wxCocoaTrackingRectManager(); 30 void BeginSynthesizingEvents(); 31 void StopSynthesizingEvents(); 32protected: 33 wxWindow *m_window; 34 bool m_isTrackingRectActive; 35 NSInteger m_trackingRectTag; 36 NSRect m_trackingRectInWindowCoordinates; 37private: 38 wxCocoaTrackingRectManager(); 39}; 40 41#endif // ndef __WX_COCOA_TRACKINGRECTMANAGER_H__ 42