[w32file] Move MonoIO.Find{First,Next,Close} to managed
[mono.git] / support / supportw.c
index 158fce068be1a60a773f894bcc2ec6e5f66ffb12..b5fdae354c22ba3e820da8c13b5b2ae9e7db394d 100644 (file)
@@ -1,3 +1,14 @@
+/*
+ * Helper routines for some of the common methods that people P/Invoke
+ * on their applications.
+ *
+ * Authors:
+ *   Gonzalo Paniagua (gonzalo@ximian.com)
+ *   Miguel de Icaza  (miguel@novell.com)
+ *
+ * (C) 2005 Novell, Inc.
+ *
+ */
 #include <glib.h>
 #include <stdlib.h>
 #include <string.h>
 #include "mono/metadata/class.h"
 #include "mono/metadata/object.h"
 #include "mono/metadata/tabledefs.h"
-#include "mono/io-layer/wapi.h"
 
 typedef struct {
        const char *fname;
        void *fnptr;
 } FnPtr;
 
-gpointer FindWindowExW (gpointer hwndParent, gpointer hwndChildAfter,
-                       const char *classw, const char *window);
+gpointer FindWindowExW        (gpointer hwndParent, gpointer hwndChildAfter,
+                              const char *classw, const char *window);
 
-gpointer HeapAlloc (gpointer unused1, gint32 unused2, gint32 nbytes);
-gpointer HeapCreate (gint32 flags, gint32 initial_size, gint32 max_size);
-gboolean HeapSetInformation (gpointer handle, gpointer heap_info_class,
-                               gpointer heap_info, gint32 head_info_length);
-
-gboolean HeapQueryInformation (gpointer handle, gpointer heap_info_class,
-                       gpointer heap_info, gint32 head_info_length, gint32 *ret_length);
-
-gpointer HeapAlloc (gpointer handle, gint32 flags, gint32 nbytes);
-gpointer HeapReAlloc (gpointer handle, gint32 flags, gpointer mem, gint32 nbytes);
-gint32 HeapSize (gpointer handle, gint32 flags, gpointer mem);
-gboolean HeapFree (gpointer handle, gint32 flags, gpointer mem);
-gboolean HeapValidate (gpointer handle, gpointer mem);
-gboolean HeapDestroy (gpointer handle);
-gpointer GetProcessHeap (void);
+gpointer GetProcessHeap       (void);
 
 static FnPtr functions [] = {
        { "FindWindowExW", NULL }, /* user32 */
@@ -56,7 +52,7 @@ get_function (const char *name)
                        compare_names);
 
        if (ptr == NULL) {
-               g_warning ("Function '%s' not not found.", name);
+               g_warning ("Function '%s' not found.", name);
                return NULL;
        }
 
@@ -161,70 +157,31 @@ FindWindowExW (gpointer hwndParent, gpointer hwndChildAfter, const char *classw,
        return func (hwndParent, hwndChildAfter, classw, window);
 }
 
-/* begin Heap* functions */
-gpointer
-HeapCreate (gint32 flags, gint32 initial_size, gint32 max_size)
-{
-       return (gpointer) 0xDEADBEEF;
-}
-
-gboolean
-HeapSetInformation (gpointer handle, gpointer heap_info_class, gpointer heap_info,
-                       gint32 head_info_length)
-{
-       return TRUE;
-}
-
-gboolean
-HeapQueryInformation (gpointer handle, gpointer heap_info_class, gpointer heap_info,
-                       gint32 head_info_length, gint32 *ret_length)
-{
-       *ret_length = 0;
-       return TRUE;
-}
+int
+SetWindowPos (gpointer hwnd, gpointer hwndInsertAfter, int x, int y, int cx, int cy, unsigned int flags);
 
-gpointer
-HeapAlloc (gpointer handle, gint32 flags, gint32 nbytes)
+int
+SetWindowPos (gpointer hwnd, gpointer hwndInsertAfter, int x, int y, int cx, int cy, unsigned int flags)
 {
-       return g_malloc0 (nbytes);
+       fprintf (stderr, "SetWindowPos %p %p to [%d,%dx%d,%d] %d\n", hwnd, hwndInsertAfter, x, y, cx, cy, flags);
+       return 1;
 }
 
-gpointer
-HeapReAlloc (gpointer handle, gint32 flags, gpointer mem, gint32 nbytes)
-{
-       return g_realloc (mem, nbytes);
-}
+int
+SendMessageA (gpointer hwnd, unsigned int msg, gpointer wparam, gpointer lparam);
 
-gint32
-HeapSize (gpointer handle, gint32 flags, gpointer mem)
+int
+SendMessageA (gpointer hwnd, unsigned int msg, gpointer wparam, gpointer lparam)
 {
+       fprintf (stderr, "SendMessage (%d, 0x%x, %p, %p)\n", (int) GPOINTER_TO_INT (hwnd), msg, wparam, lparam);
        return 0;
 }
 
-gboolean
-HeapFree (gpointer handle, gint32 flags, gpointer mem)
-{
-       g_free (mem);
-       return TRUE;
-}
-
-gboolean
-HeapValidate (gpointer handle, gpointer mem)
-{
-       return TRUE;
-}
-
-gboolean
-HeapDestroy (gpointer handle)
-{
-       return TRUE;
-}
-
+int
+GetWindowLongA (gpointer hwnd, int a);
 
-gpointer 
-GetProcessHeap ()
+int
+GetWindowLongA (gpointer hwnd, int a)
 {
-       return (gpointer) 0xDEADBEEF;
+       return 0;
 }
-/* end Heap* functions */
-