1 #ifndef _Win32WindowSystem_
\r
2 #define _Win32WindowSystem_
\r
5 #include <dali/public-api/signals/callback.h>
\r
7 typedef bool Eina_Bool;
\r
9 typedef unsigned int Ecore_Window;
\r
11 typedef unsigned int Ecore_Win_Window;
\r
13 typedef unsigned int Ecore_Win_Drawable;
\r
15 namespace Win32WindowSystem
\r
19 void SetParent(long child, long parent);
\r
21 int GetEdgeHeight();
\r
23 long CreateWinWindow(
\r
24 _In_opt_ const char *lpClassName,
\r
25 _In_opt_ const char *lpWindowName,
\r
30 _In_opt_ long parent);
\r
32 typedef void (*winEventCallback)(long hWnd, unsigned int uMsg, long wParam, long lParam);
\r
34 void RemoveListener(int msgType);
\r
36 void AddListener( winEventCallback callback );
\r
37 void AddListener( int msgType, Dali::CallbackBase *callback );
\r
39 bool PostWinMessage(
\r
40 _In_ unsigned int Msg,
\r
43 _In_ long hWnd = 0);
\r
45 void ShowWindow(long hWnd);
\r
46 void HideWindow(long hWnd);
\r
48 void GetNanoseconds(uint64_t& timeInNanoseconds);
\r
50 unsigned int GetCurrentMilliSeconds(void);
\r
52 long CreateWinSemaphore(_In_ long lInitialCount, _In_ long lMaximumCount);
\r
54 unsigned long WaitForSingleObject(_In_ long hHandle, _In_ unsigned long dwMilliseconds);
\r
56 bool ReleaseSemaphore(_In_ long hSemaphore, _In_ long lReleaseCount, _Out_opt_ long *lpPreviousCount);
\r
58 void Sleep(uint64_t timeInNanoseconds);
\r
60 typedef void(*timerCallback)(void *data);
\r
62 int SetTimer(int interval, timerCallback callback, void *data);
\r
64 void KillTimer(int id);
\r
66 void GetDPI( float &xDpi, float &yDpi );
\r
68 const char* GetKeyName( int keyCode );
\r
70 long GetCurrentThreadId();
\r