kodi
WinEventsOSX.h
1 /*
2  * Copyright (C) 2011-2018 Team Kodi
3  * This file is part of Kodi - https://kodi.tv
4  *
5  * SPDX-License-Identifier: GPL-2.0-or-later
6  * See LICENSES/README.md for more information.
7  */
8 
9 #pragma once
10 
11 #include "threads/Thread.h"
12 #include "windowing/WinEvents.h"
13 #include "windowing/XBMC_events.h"
14 
15 #include <memory>
16 
18 @class NSEvent;
19 
20 class CWinEventsOSX : public IWinEvents, public CThread
21 {
22 public:
23  CWinEventsOSX();
24  ~CWinEventsOSX();
25 
26  void MessagePush(XBMC_Event* newEvent);
27  bool MessagePump();
28  size_t GetQueueSize();
29 
30  void enableInputEvents();
31  void disableInputEvents();
32 
33  void signalMouseEntered();
34  void signalMouseExited();
35  void SendInputEvent(NSEvent* nsEvent);
36 
37 private:
38  std::unique_ptr<CWinEventsOSXImplWrapper> m_eventsImplWrapper;
39 };
Definition: WinEventsOSX.h:20
Definition: Thread.h:44
Definition: XBMC_events.h:117
Definition: WinEvents.h:13
Definition: WinEventsOSX.mm:13