char * hb_langSelectID( const char * pszID ) { char * pszIDOld = hb_langID(); HB_TRACE( HB_TR_DEBUG, ( "hb_langSelectID(%s)", pszID ) ); hb_langSelect( hb_langFind( pszID ) ); return pszIDOld; }
const char * hb_langGetItem( const char * pszID, int iIndex ) { PHB_LANG lang; HB_TRACE( HB_TR_DEBUG, ( "hb_langGetItem(%s,%i)", pszID, iIndex ) ); lang = pszID ? hb_langFind( pszID ) : hb_vmLang(); if( lang && iIndex >= 0 && iIndex < HB_LANG_ITEM_MAX_ ) return lang->pItemList[ iIndex ]; else return NULL; }
const char * hb_langSelectID( const char * pszID ) { const char * pszIDOld = hb_langID(); PHB_LANG lang; HB_TRACE( HB_TR_DEBUG, ( "hb_langSelectID(%s)", pszID ) ); lang = hb_langFind( pszID ); if( lang ) hb_langSelect( lang ); else hb_errRT_BASE( EG_ARG, 1303, NULL, HB_ERR_FUNCNAME, HB_ERR_ARGS_BASEPARAMS ); return pszIDOld; }
char * hb_langName( const char * pszID ) { char * pszName; PHB_LANG lang; lang = pszID ? hb_langFind( pszID ) : hb_vmLang(); if( lang ) { pszName = ( char * ) hb_xgrab( 128 ); hb_snprintf( pszName, 128, "Harbour Language: %s %s (%s)", hb_langGetItem( pszID, HB_LANG_ITEM_BASE_ID + HB_LANG_ITEM_ID_ID ), hb_langGetItem( pszID, HB_LANG_ITEM_BASE_ID + HB_LANG_ITEM_ID_NAME ), hb_langGetItem( pszID, HB_LANG_ITEM_BASE_ID + HB_LANG_ITEM_ID_NAMENAT ) ); } else pszName = hb_strdup( "Harbour Language: (not installed)" ); return pszName; }