Implemented GetAncestor and removed WIN_GetTopParent.
Removed a few more accesses to the WND structure.

diff --git a/include/winuser.h b/include/winuser.h
index cce1900..16beba9 100644
--- a/include/winuser.h
+++ b/include/winuser.h
@@ -1089,6 +1089,11 @@
 #define GW_OWNER	4
 #define GW_CHILD	5
 
+/* GetAncestor() constants */
+#define GA_PARENT       1
+#define GA_ROOT         2
+#define GA_ROOTOWNER    3
+
   /* WM_GETMINMAXINFO struct */
 typedef struct
 {
@@ -3537,16 +3542,17 @@
 HWND      WINAPI FindWindowExA(HWND,HWND,LPCSTR,LPCSTR);
 HWND      WINAPI FindWindowExW(HWND,HWND,LPCWSTR,LPCWSTR);
 #define     FindWindowEx WINELIB_NAME_AW(FindWindowEx)
-BOOL      WINAPI FlashWindow(HWND,BOOL);
-INT       WINAPI FrameRect(HDC,const RECT*,HBRUSH);
-HWND      WINAPI GetActiveWindow(void);
+BOOL        WINAPI FlashWindow(HWND,BOOL);
+INT         WINAPI FrameRect(HDC,const RECT*,HBRUSH);
+HWND        WINAPI GetActiveWindow(void);
+HWND        WINAPI GetAncestor(HWND,UINT);
 DWORD       WINAPI GetAppCompatFlags(HTASK);
 WORD        WINAPI GetAsyncKeyState(INT);
-HWND      WINAPI GetCapture(void);
-UINT      WINAPI GetCaretBlinkTime(void);
-BOOL      WINAPI GetCaretPos(LPPOINT);
-BOOL      WINAPI GetClassInfoA(HINSTANCE,LPCSTR,WNDCLASSA *);
-BOOL      WINAPI GetClassInfoW(HINSTANCE,LPCWSTR,WNDCLASSW *);
+HWND        WINAPI GetCapture(void);
+UINT        WINAPI GetCaretBlinkTime(void);
+BOOL        WINAPI GetCaretPos(LPPOINT);
+BOOL        WINAPI GetClassInfoA(HINSTANCE,LPCSTR,WNDCLASSA *);
+BOOL        WINAPI GetClassInfoW(HINSTANCE,LPCWSTR,WNDCLASSW *);
 #define     GetClassInfo WINELIB_NAME_AW(GetClassInfo)
 BOOL      WINAPI GetClassInfoExA(HINSTANCE,LPCSTR,WNDCLASSEXA *);
 BOOL      WINAPI GetClassInfoExW(HINSTANCE,LPCWSTR,WNDCLASSEXW *);