100 lines
2.3 KiB
C++
100 lines
2.3 KiB
C++
|
//--------------------------------------------------------------------------;
|
||
|
//
|
||
|
// File: Roland.cpp
|
||
|
//
|
||
|
// Copyright (c) 1997 Microsoft Corporation. All rights reserved
|
||
|
//
|
||
|
//--------------------------------------------------------------------------;
|
||
|
|
||
|
#include "mmcpl.h"
|
||
|
#include <windowsx.h>
|
||
|
#include <cpl.h>
|
||
|
#include <commctrl.h>
|
||
|
#include <string.h>
|
||
|
#include <memory.h>
|
||
|
|
||
|
////////////
|
||
|
// Functions
|
||
|
////////////
|
||
|
|
||
|
|
||
|
INT_PTR CALLBACK RolandDlgHandler(HWND hDlg, UINT msg, WPARAM wParam, LPARAM lParam)
|
||
|
{
|
||
|
BOOL fReturnVal = FALSE;
|
||
|
static HBITMAP hLogo = NULL;
|
||
|
|
||
|
switch (msg)
|
||
|
{
|
||
|
default:
|
||
|
fReturnVal = FALSE;
|
||
|
break;
|
||
|
|
||
|
case WM_SYSCOLORCHANGE:
|
||
|
{
|
||
|
if (hLogo)
|
||
|
{
|
||
|
DeleteObject( (HGDIOBJ) hLogo);
|
||
|
hLogo = NULL;
|
||
|
}
|
||
|
|
||
|
hLogo = (HBITMAP) LoadImage(ghInstance,MAKEINTATOM(IDB_ROLAND), IMAGE_BITMAP, 0, 0, LR_LOADTRANSPARENT | LR_LOADMAP3DCOLORS);
|
||
|
|
||
|
if (hLogo)
|
||
|
{
|
||
|
SendDlgItemMessage(hDlg, IDC_LOGO_FRAME, STM_SETIMAGE, IMAGE_BITMAP, (LPARAM) hLogo);
|
||
|
}
|
||
|
|
||
|
fReturnVal = TRUE;
|
||
|
}
|
||
|
break;
|
||
|
|
||
|
case WM_DESTROY:
|
||
|
{
|
||
|
if (hLogo)
|
||
|
{
|
||
|
DeleteObject( (HGDIOBJ) hLogo);
|
||
|
hLogo = NULL;
|
||
|
}
|
||
|
}
|
||
|
break;
|
||
|
|
||
|
case WM_INITDIALOG:
|
||
|
{
|
||
|
if (lParam)
|
||
|
{
|
||
|
SetWindowText(GetDlgItem(hDlg, IDC_RENDERER), (TCHAR *) lParam);
|
||
|
}
|
||
|
|
||
|
hLogo = (HBITMAP) LoadImage(ghInstance,MAKEINTATOM(IDB_ROLAND), IMAGE_BITMAP, 0, 0, LR_LOADTRANSPARENT | LR_LOADMAP3DCOLORS);
|
||
|
|
||
|
if (hLogo)
|
||
|
{
|
||
|
SendDlgItemMessage(hDlg, IDC_LOGO_FRAME, STM_SETIMAGE, IMAGE_BITMAP, (LPARAM) hLogo);
|
||
|
}
|
||
|
|
||
|
fReturnVal = TRUE;
|
||
|
}
|
||
|
break;
|
||
|
|
||
|
case WM_COMMAND:
|
||
|
{
|
||
|
switch (LOWORD(wParam))
|
||
|
{
|
||
|
case IDCANCEL:
|
||
|
case IDOK:
|
||
|
EndDialog(hDlg, TRUE);
|
||
|
break;
|
||
|
}
|
||
|
break;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
return fReturnVal;
|
||
|
}
|
||
|
|
||
|
STDAPI_(void) RolandProp(HWND hwnd, HINSTANCE hInst, TCHAR *szName)
|
||
|
{
|
||
|
DialogBoxParam(hInst,MAKEINTRESOURCE(IDD_ROLAND),hwnd, RolandDlgHandler, (LPARAM) szName);
|
||
|
}
|
||
|
|