DIB Engine: implement most engine functions
[wine/hacks.git] / dlls / winedib.drv / dibdrv_main.c
blobe4364409a147490a72c285ad1173e2da21b3b91e
1 /*
2 * DIBDRV initialization code
4 * Copyright 2009 Massimo Del Fedele
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
21 #include "config.h"
22 #include "wine/port.h"
24 #include "dibdrv.h"
26 WINE_DEFAULT_DEBUG_CHANNEL(dibdrv);
28 /***********************************************************************
29 * DIBDRV initialization routine
31 BOOL WINAPI DllMain( HINSTANCE hinst, DWORD reason, LPVOID reserved )
33 BOOL ret = TRUE;
35 switch(reason)
37 case DLL_PROCESS_ATTACH:
39 /* Loads display driver */
40 _DIBDRV_LoadDisplayDriver();
42 /* initializes freetype library */
43 if(!_DIBDRV_FreeType_Init())
44 ERR("Couldn't initialize freetype library.\n");
46 break;
47 case DLL_THREAD_DETACH:
48 /* do thread detach */
49 break;
50 case DLL_PROCESS_DETACH:
52 /* terminates freetype library */
53 _DIBDRV_FreeType_Terminate();
55 /* unloads display driver */
56 _DIBDRV_FreeDisplayDriver();
58 break;
60 return ret;