1 /* $Id: regcontrol.c,v 1.13 2003/08/28 19:24:28 gvg Exp $
3 * COPYRIGHT: See COPYING in the top level directory
4 * PROJECT: ReactOS User32
5 * PURPOSE: Built-in control registration
6 * FILE: lib/user32/controls/regcontrol.c
7 * PROGRAMER: Ge van Geldorp (ge@gse.nl)
8 * REVISION HISTORY: 2003/06/16 GvG Created
9 * NOTES: Adapted from Wine
13 #include "user32/regcontrol.h"
15 static void RegisterBuiltinClass(const struct builtin_class_descr
*Descr
)
20 wc
.lpszClassName
= Descr
->name
;
21 wc
.lpfnWndProc
= Descr
->procW
;
22 wc
.style
= Descr
->style
;
25 wc
.hCursor
= LoadCursorW(NULL
, Descr
->cursor
);
26 wc
.hbrBackground
= Descr
->brush
;
27 wc
.lpszMenuName
= NULL
;
29 wc
.cbWndExtra
= Descr
->extra
;
32 if(IS_ATOM(wc
.lpszClassName
))
33 DbgPrint("Registering built-in class atom=0x%x\n", wc
.lpszClassName
);
35 DbgPrint("Registering built-in class %wS\n", wc
.lpszClassName
);
37 Class
= RegisterClassW(&wc
);
39 DbgPrint("RegisterClassW = %d\n", Class
);
43 /***********************************************************************
46 * Register the classes for the builtin controls
48 void ControlsInit(void)
51 DbgPrint("ControlsInit()\n");
54 RegisterBuiltinClass(&DIALOG_builtin_class
);
55 RegisterBuiltinClass(&POPUPMENU_builtin_class
);
57 RegisterBuiltinClass(&COMBO_builtin_class
);
58 RegisterBuiltinClass(&COMBOLBOX_builtin_class
);
59 RegisterBuiltinClass(&DESKTOP_builtin_class
);
60 RegisterBuiltinClass(&MDICLIENT_builtin_class
);
61 RegisterBuiltinClass(&MENU_builtin_class
);
62 RegisterBuiltinClass(&SCROLL_builtin_class
);
64 RegisterBuiltinClass(&BUTTON_builtin_class
);
65 RegisterBuiltinClass(&LISTBOX_builtin_class
);
66 RegisterBuiltinClass(&EDIT_builtin_class
);
67 RegisterBuiltinClass(&COMBO_builtin_class
);
68 RegisterBuiltinClass(&ICONTITLE_builtin_class
);
69 RegisterBuiltinClass(&STATIC_builtin_class
);