94ac8ede26b6ca7675840df2dbbca2825c6272ae
2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: ReactOS kernel
4 * PURPOSE: Functions for creation and destruction of DCs
5 * FILE: subsystem/win32/win32k/objects/device.c
6 * PROGRAMER: Timo Kreuzer (timo.kreuzer@rectos.org)
14 PDC defaultDCstate
= NULL
;
17 IntGdiReferencePdev(PPDEVOBJ ppdev
)
23 IntGdiUnreferencePdev(PPDEVOBJ ppdev
, DWORD CleanUpType
)
29 IntCreatePrimarySurface(VOID
)
36 UserAttachMonitor((HDEV
)gppdevPrimary
);
38 DPRINT("IntCreatePrimarySurface, gppdevPrimary=%p, gppdevPrimary->pSurface = %p\n",
39 gppdevPrimary
, gppdevPrimary
->pSurface
);
42 pso
= &PDEVOBJ_pSurface(gppdevPrimary
)->SurfObj
;
43 SurfSize
= pso
->sizlBitmap
;
45 /* Put the pointer in the center of the screen */
46 gpsi
->ptCursor
.x
= pso
->sizlBitmap
.cx
/ 2;
47 gpsi
->ptCursor
.y
= pso
->sizlBitmap
.cy
/ 2;
49 rpDesk
= IntGetActiveDesktop();
51 { /* First time going in from winlogon and starting up application desktop and
52 haven't switch to winlogon desktop. Also still in WM_CREATE. */
53 PTHREADINFO pti
= PsGetCurrentThreadWin32Thread();
57 DPRINT1("No DESKTOP Window!!!!!\n");
60 co_IntShowDesktop(rpDesk
, SurfSize
.cx
, SurfSize
.cy
);
62 // Init Primary Displays Device Capabilities.
63 PDEVOBJ_vGetDeviceCaps(gppdevPrimary
, &GdiHandleTable
->DevCaps
);
69 IntDestroyPrimarySurface(VOID
)
77 // I guess we will soon have more than one primary surface.
78 // This will do for now.
89 IN OPTIONAL LPSTR pjIn
)