2 * PROJECT: ReactOS System Control Panel Applet
3 * LICENSE: GPL - See COPYING in the top level directory
4 * FILE: dll/cpl/sysdm/licence.c
5 * PURPOSE: Licence dialog box message handler
6 * COPYRIGHT: Copyright 2006 Ged Murphy <gedmurphy@gmail.com>
12 typedef struct _LIC_CONTEXT
16 } LIC_CONTEXT
, *PLIC_CONTEXT
;
20 OnInitDialog(HWND hDlg
, PLIC_CONTEXT pLicInfo
)
26 pLicInfo
->hIcon
= LoadImage(hApplet
,
27 MAKEINTRESOURCE(IDI_LICENSE
),
29 GetSystemMetrics(SM_CXICON
),
30 GetSystemMetrics(SM_CYICON
),
32 pLicInfo
->hIconSm
= LoadImage(hApplet
,
33 MAKEINTRESOURCE(IDI_LICENSE
),
35 GetSystemMetrics(SM_CXSMICON
),
36 GetSystemMetrics(SM_CYSMICON
),
39 SendMessage(hDlg
, WM_SETICON
, ICON_BIG
, (LPARAM
)pLicInfo
->hIcon
);
40 SendMessage(hDlg
, WM_SETICON
, ICON_SMALL
, (LPARAM
)pLicInfo
->hIconSm
);
42 /* Load license from resource */
43 if (!(hResInfo
= FindResource(hApplet
,
44 MAKEINTRESOURCE(RC_LICENSE
),
45 MAKEINTRESOURCE(RTDATA
))) ||
46 !(hResMem
= LoadResource(hApplet
, hResInfo
)) ||
47 !(LicenseText
= LockResource(hResMem
)))
49 ShowLastWin32Error(hDlg
);
53 /* Insert the license into the edit control */
58 PostMessage(GetDlgItem(hDlg
, IDC_LICENCEEDIT
),
62 PostMessage(GetDlgItem(hDlg
, IDC_LICENCEEDIT
), WM_VSCROLL
, SB_TOP
, 0);
68 LicenceDlgProc(HWND hDlg
,
73 PLIC_CONTEXT pLicInfo
;
75 UNREFERENCED_PARAMETER(lParam
);
77 pLicInfo
= (PLIC_CONTEXT
)GetWindowLongPtr(hDlg
, DWLP_USER
);
82 pLicInfo
= HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY
, sizeof(LIC_CONTEXT
));
88 SetWindowLongPtr(hDlg
, DWLP_USER
, (LONG_PTR
)pLicInfo
);
89 return OnInitDialog(hDlg
, pLicInfo
);
94 if (pLicInfo
->hIconSm
)
95 DestroyIcon(pLicInfo
->hIconSm
);
98 DestroyIcon(pLicInfo
->hIcon
);
100 HeapFree(GetProcessHeap(), 0, pLicInfo
);
105 if ((LOWORD(wParam
) == IDOK
) || (LOWORD(wParam
) == IDCANCEL
))