blob: cfdc45d04965bc2a5f727b669e5e1da2a004fab9 [file] [log] [blame]
/*
* System resources loading
*
* Copyright 1995 Alexandre Julliard
*/
#include "winbase.h"
#include "wine/winbase16.h"
#include "global.h"
#include "options.h"
#include "resource.h"
#include "wrc_rsc.h"
extern const wrc_resource32_t * const sysres_En_ResTable[];
extern const wrc_resource32_t * const sysres_Es_ResTable[];
extern const wrc_resource32_t * const sysres_De_ResTable[];
extern const wrc_resource32_t * const sysres_No_ResTable[];
extern const wrc_resource32_t * const sysres_Fr_ResTable[];
extern const wrc_resource32_t * const sysres_Fi_ResTable[];
extern const wrc_resource32_t * const sysres_Da_ResTable[];
extern const wrc_resource32_t * const sysres_Cs_ResTable[];
extern const wrc_resource32_t * const sysres_Eo_ResTable[];
extern const wrc_resource32_t * const sysres_It_ResTable[];
extern const wrc_resource32_t * const sysres_Ko_ResTable[];
extern const wrc_resource32_t * const sysres_Hu_ResTable[];
extern const wrc_resource32_t * const sysres_Pl_ResTable[];
extern const wrc_resource32_t * const sysres_Pt_ResTable[];
extern const wrc_resource32_t * const sysres_Sv_ResTable[];
extern const wrc_resource32_t * const sysres_Ca_ResTable[];
extern const wrc_resource32_t * const sysres_Nl_ResTable[];
extern const wrc_resource32_t * const sysres_Ru_ResTable[];
extern const wrc_resource32_t * const sysres_Wa_ResTable[];
static const wrc_resource32_t * const * SYSRES_Resources[] =
{
sysres_En_ResTable, /* LANG_En */
sysres_Es_ResTable, /* LANG_Es */
sysres_De_ResTable, /* LANG_De */
sysres_No_ResTable, /* LANG_No */
sysres_Fr_ResTable, /* LANG_Fr */
sysres_Fi_ResTable, /* LANG_Fi */
sysres_Da_ResTable, /* LANG_Da */
sysres_Cs_ResTable, /* LANG_Cs */
sysres_Eo_ResTable, /* LANG_Eo */
sysres_It_ResTable, /* LANG_It */
sysres_Ko_ResTable, /* LANG_Ko */
sysres_Hu_ResTable, /* LANG_Hu */
sysres_Pl_ResTable, /* LANG_Pl */
sysres_Pt_ResTable, /* LANG_Pt */
sysres_Sv_ResTable, /* LANG_Sv */
sysres_Ca_ResTable, /* LANG_Ca */
sysres_Nl_ResTable, /* LANG_Nl */
sysres_Ru_ResTable, /* LANG_Ru */
sysres_Wa_ResTable /* LANG_Wa */
};
/***********************************************************************
* SYSRES_GetResourcePtr
*
* Return a pointer to a system resource.
*/
LPCVOID SYSRES_GetResPtr( SYSTEM_RESOURCE id )
{
return SYSRES_Resources[Options.language][id]->data;
}
/***********************************************************************
* SYSRES_LoadResource
*
* Create a global memory block for a system resource.
*/
HGLOBAL16 SYSRES_LoadResource( SYSTEM_RESOURCE id )
{
const wrc_resource32_t *resPtr;
resPtr = SYSRES_Resources[Options.language][id];
return GLOBAL_CreateBlock( GMEM_FIXED, resPtr->data, resPtr->datasize,
GetCurrentPDB16(), FALSE, FALSE, TRUE, NULL );
}
/***********************************************************************
* SYSRES_FreeResource
*
* Free a global memory block for a system resource.
*/
void SYSRES_FreeResource( HGLOBAL16 handle )
{
GLOBAL_FreeBlock( handle );
}