aboutsummaryrefslogtreecommitdiff
path: root/Src/Winamp/setup/langutil.cpp
blob: a461fc3b6b6654f0c703284b7a11a0f9d91e6eba (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#include "main.h"
#include "./langutil.h"



INT_PTR WADialogBoxParam(LPCWSTR lpTemplateName, HWND hWndParent, DLGPROC lpDialogFunc, LPARAM dwInitParam)
{
	INT_PTR ret(0);
	HINSTANCE hInst = (language_pack_instance) ? language_pack_instance : hMainInstance;
	while(hInst)
	{
		ret = DialogBoxParamW(hInst, lpTemplateName, hWndParent, lpDialogFunc, dwInitParam);
		if (-1 == ret && hInst != hMainInstance) hInst = hMainInstance;
		else break;
	}
	return ret;
}

HWND WACreateDialogParam(LPCWSTR lpTemplateName, HWND hWndParent, DLGPROC lpDialogFunc, LPARAM dwInitParam)
{
	HWND ret(NULL);
	HINSTANCE hInst = (language_pack_instance) ? language_pack_instance : hMainInstance;
	while(hInst)
	{
		ret = CreateDialogParamW(hInst, lpTemplateName, hWndParent, lpDialogFunc, dwInitParam);
		if (NULL == ret && hInst != hMainInstance) hInst = hMainInstance;
		else break;
	}
	return ret;
}

HBITMAP WALoadImage2(LPCWSTR pszSectionName, LPCWSTR lpImageName, BOOL bPremult)
{
	HBITMAP ret(NULL);
	HINSTANCE hInst = (language_pack_instance) ? language_pack_instance : hMainInstance;
	while(hInst)
	{
		ret = WALoadImage(hInst, pszSectionName, lpImageName, bPremult);
		if (NULL == ret && hInst != hMainInstance) hInst = hMainInstance;
		else break;
	}
	return ret;
}