Release 970215

Sat Feb 15 11:59:17 1997  Alexandre Julliard  <julliard@lrc.epfl.ch>

	* [*/*]
	Converted a lot of functions to Win32 types.
	Removed HWND type.

Fri Feb 14 15:09:19 1997  Onno Hovers <onno@stack.nl>

	* [memory/global.c]
	Implemented GMEM_MOVEABLE blocks for Win32.

Fri Feb 14 00:24:39 1997  Alex Korobka <alex@trantor.pharm.sunysb.edu>

	* [loader/task.c] [windows/queue.c]
	Do not read X events while in the intertask SendMessage().

	* [misc/lstr.c]
	Fixed CharPrev32A().

	* [windows/hook.c] [include/hook.h]
	Restored broken WH_CALLWNDPROC functionality for dialogs, etc...

	* [windows/win.c] [windows/defwnd.c] [windows/mdi.c]
	  [windows/event.c] [controls/edit.c] 
	Added WIN_ISWIN32 flag to windows created by Win32 calls. 
	Several new Win32 messages are sent when this flag is on.
	
	* [msdos/dosmem.c] [memory/global.c]
	Some changes in DOS memory allocation.

Fri Feb  7 21:46:03 1997  Andrew Taylor  <andrew@riscan.com>

	* [win32/security.c]
	Added SID manipulation functions.

	* [include/debug.h]
	Added debugging class "security".

Fri  Feb 7 20:46:33 1997  Robert Pouliot <krynos@clic.net>

	* [debugger/msc.c] [debugger/source.c] 
	  [documentation/wine_os2.txt] [loader/signal.c]
	Some more changes for OS/2. Doesn't work yet.

Fri  Feb 7 09:31:17 1997  Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>

	* [scheduler/process.c]
	Added ExpandEnvironmentStrings*.

	* [misc/ntdll.c] [include/ntdll.h]
	Added some new functions.

	* [objects/cursoricon.c]
	CURSORICON_LoadHandler: check against some bizarre out of memory
	conditions.
	
	* [windows/mdi.c]
	Fixed DefFrameProc32*, added TranslateMDISysAccel32.

Wed Feb  5 01:31:05 1997  John Zero <john@globe.graphisoft.hu>

	* [resources/sysres_Hu.rc] [misc/ole2nls.c] [misc/main.c]
	  [programs/progman/Hu.rc] [programs/winhelp/Hu.rc]
	Added Hungarian language support.
diff --git a/misc/clipboard.c b/misc/clipboard.c
index f7d38ae..bc64aac 100644
--- a/misc/clipboard.c
+++ b/misc/clipboard.c
@@ -41,9 +41,9 @@
  *			internal variables
  */
 
-static HWND hWndClipOwner  = 0;		/* current clipboard owner */
-static HWND hWndClipWindow = 0;		/* window that opened clipboard */
-static HWND hWndViewer     = 0;		/* start of viewers chain */
+static HWND32 hWndClipOwner  = 0;   /* current clipboard owner */
+static HWND32 hWndClipWindow = 0;   /* window that opened clipboard */
+static HWND32 hWndViewer     = 0;   /* start of viewers chain */
 
 static BOOL bClipChanged  = FALSE;
 static WORD LastRegFormat = CF_REGFORMATBASE;
@@ -160,7 +160,7 @@
  */
 BOOL CLIPBOARD_RequestXSelection()
 {
-  HWND hWnd = (hWndClipWindow) ? hWndClipWindow : GetActiveWindow16();
+  HWND32 hWnd = (hWndClipWindow) ? hWndClipWindow : GetActiveWindow32();
 
   if( !hWnd ) return FALSE;
 
@@ -197,7 +197,7 @@
     /* special case */
 
     if( wFormat == CF_TEXT || wFormat == CF_OEMTEXT )
-        return lpFormat[CF_TEXT-1].wDataPresent | 
+        return lpFormat[CF_TEXT-1].wDataPresent ||
                lpFormat[CF_OEMTEXT-1].wDataPresent;
 
     while(TRUE) {
@@ -210,11 +210,20 @@
 }
 
 /**************************************************************************
- *			OpenClipboard		[USER.137]
+ *            OpenClipboard16   (USER.137)
  */
-BOOL OpenClipboard(HWND hWnd)
+BOOL16 OpenClipboard16( HWND16 hWnd )
 {
-    BOOL bRet = FALSE;
+    return OpenClipboard32( hWnd );
+}
+
+
+/**************************************************************************
+ *            OpenClipboard32   (USER32.406)
+ */
+BOOL32 OpenClipboard32( HWND32 hWnd )
+{
+    BOOL32 bRet = FALSE;
     dprintf_clipboard(stddeb,"OpenClipboard(%04x) = ", hWnd);
 
     if (!hWndClipWindow)
@@ -230,9 +239,18 @@
 
 
 /**************************************************************************
- *			CloseClipboard		[USER.138]
+ *            CloseClipboard16   (USER.138)
  */
-BOOL CloseClipboard()
+BOOL16 CloseClipboard16(void)
+{
+    return CloseClipboard32();
+}
+
+
+/**************************************************************************
+ *            CloseClipboard32   (USER32.53)
+ */
+BOOL32 CloseClipboard32(void)
 {
     dprintf_clipboard(stddeb,"CloseClipboard(); !\n");
 
@@ -246,9 +264,18 @@
 
 
 /**************************************************************************
- *			EmptyClipboard		[USER.139]
+ *            EmptyClipboard16   (USER.139)
  */
-BOOL EmptyClipboard()
+BOOL16 EmptyClipboard16(void)
+{
+    return EmptyClipboard32();
+}
+
+
+/**************************************************************************
+ *            EmptyClipboard32   (USER32.168)
+ */
+BOOL32 EmptyClipboard32(void)
 {
     LPCLIPFORMAT lpFormat = ClipFormats; 
 
@@ -287,12 +314,19 @@
 
 
 /**************************************************************************
- *			GetClipboardOwner	[USER.140]
+ *            GetClipboardOwner16   (USER.140)
  */
-HWND GetClipboardOwner()
+HWND16 GetClipboardOwner16(void)
 {
-    dprintf_clipboard(stddeb,
-		"GetClipboardOwner() = %04x !\n", hWndClipOwner);
+    return hWndClipOwner;
+}
+
+
+/**************************************************************************
+ *            GetClipboardOwner32   (USER32.224)
+ */
+HWND32 GetClipboardOwner32(void)
+{
     return hWndClipOwner;
 }
 
@@ -452,11 +486,20 @@
 
 
 /**************************************************************************
- *			CountClipboardFormats	[USER.143]
+ *           CountClipboardFormats16   (USER.143)
  */
-INT CountClipboardFormats()
+INT16 CountClipboardFormats16(void)
 {
-    int 	 FormatCount = 0;
+    return CountClipboardFormats32();
+}
+
+
+/**************************************************************************
+ *           CountClipboardFormats32   (USER32.62)
+ */
+INT32 CountClipboardFormats32(void)
+{
+    INT32 FormatCount = 0;
     LPCLIPFORMAT lpFormat = ClipFormats; 
 
     dprintf_clipboard(stddeb,"CountClipboardFormats()\n");
@@ -483,9 +526,18 @@
 
 
 /**************************************************************************
- *			EnumClipboardFormats	[USER.144]
+ *            EnumClipboardFormats16   (USER.144)
  */
-UINT16 EnumClipboardFormats(UINT16 wFormat)
+UINT16 EnumClipboardFormats16( UINT16 wFormat )
+{
+    return EnumClipboardFormats32( wFormat );
+}
+
+
+/**************************************************************************
+ *            EnumClipboardFormats32   (USER32.178)
+ */
+UINT32 EnumClipboardFormats32( UINT32 wFormat )
 {
     LPCLIPFORMAT lpFormat = ClipFormats; 
 
@@ -621,11 +673,20 @@
 
 
 /**************************************************************************
- *			SetClipboardViewer	[USER.147]
+ *            SetClipboardViewer16   (USER.147)
  */
-HWND SetClipboardViewer(HWND hWnd)
+HWND16 SetClipboardViewer16( HWND16 hWnd )
 {
-    HWND hwndPrev = hWndViewer;
+    return SetClipboardViewer32( hWnd );
+}
+
+
+/**************************************************************************
+ *            SetClipboardViewer32   (USER32.470)
+ */
+HWND32 SetClipboardViewer32( HWND32 hWnd )
+{
+    HWND32 hwndPrev = hWndViewer;
 
     dprintf_clipboard(stddeb,"SetClipboardViewer(%04x)\n", hWnd);
 
@@ -635,12 +696,19 @@
 
 
 /**************************************************************************
- *			GetClipboardViewer	[USER.148]
+ *           GetClipboardViewer16   (USER.148)
  */
-HWND GetClipboardViewer()
+HWND16 GetClipboardViewer16(void)
 {
-    dprintf_clipboard(stddeb,"GetClipboardFormat() = %04x\n", hWndViewer);
+    return hWndViewer;
+}
 
+
+/**************************************************************************
+ *           GetClipboardViewer32   (USER32.225)
+ */
+HWND32 GetClipboardViewer32(void)
+{
     return hWndViewer;
 }
 
@@ -676,9 +744,18 @@
 
 
 /**************************************************************************
- *			IsClipboardFormatAvailable	[USER.193]
+ *           IsClipboardFormatAvailable16   (USER.193)
  */
-BOOL IsClipboardFormatAvailable(WORD wFormat)
+BOOL16 IsClipboardFormatAvailable16( UINT16 wFormat )
+{
+    return IsClipboardFormatAvailable32( wFormat );
+}
+
+
+/**************************************************************************
+ *           IsClipboardFormatAvailable32   (USER32.339)
+ */
+BOOL32 IsClipboardFormatAvailable32( UINT32 wFormat )
 {
     dprintf_clipboard(stddeb,"IsClipboardFormatAvailable(%04X) !\n", wFormat);
 
@@ -690,12 +767,19 @@
 
 
 /**************************************************************************
- *			GetOpenClipboardWindow	[USER.248]
+ *             GetOpenClipboardWindow16   (USER.248)
  */
-HWND GetOpenClipboardWindow()
+HWND16 GetOpenClipboardWindow16(void)
 {
-    dprintf_clipboard(stddeb,
-		"GetOpenClipboardWindow() = %04x\n", hWndClipWindow);
+    return hWndClipWindow;
+}
+
+
+/**************************************************************************
+ *             GetOpenClipboardWindow32   (USER32.276)
+ */
+HWND32 GetOpenClipboardWindow32(void)
+{
     return hWndClipWindow;
 }
 
@@ -793,7 +877,7 @@
  * Wine might have lost XA_PRIMARY selection because of
  * EmptyClipboard() or other client. 
  */
-void CLIPBOARD_ReleaseSelection(Window w, HWND hwnd)
+void CLIPBOARD_ReleaseSelection(Window w, HWND32 hwnd)
 {
   /* w is the window that lost selection,
    *