Changed cdtext_select_language to take a cdtext_lang_t instead of a const char * to specify the desired language.
This commit is contained in:
@@ -20,7 +20,7 @@
|
|||||||
libcdio. See also corresponding C++ programs of similar names. */
|
libcdio. See also corresponding C++ programs of similar names. */
|
||||||
|
|
||||||
#define EXAMPLE_CUE_FILE "../test/data/cdtext.cue"
|
#define EXAMPLE_CUE_FILE "../test/data/cdtext.cue"
|
||||||
#define EXAMPLE_PREF_LANG "German"
|
#define EXAMPLE_PREF_LANG CDTEXT_LANGUAGE_GERMAN
|
||||||
|
|
||||||
#ifdef HAVE_CONFIG_H
|
#ifdef HAVE_CONFIG_H
|
||||||
#include "config.h"
|
#include "config.h"
|
||||||
@@ -78,7 +78,7 @@ print_disc_info(CdIo_t *p_cdio) {
|
|||||||
|
|
||||||
/* select language */
|
/* select language */
|
||||||
if(cdtext_select_language(cdtext, EXAMPLE_PREF_LANG)) {
|
if(cdtext_select_language(cdtext, EXAMPLE_PREF_LANG)) {
|
||||||
printf("%s selected.\n", EXAMPLE_PREF_LANG);
|
printf("%s selected.\n", cdtext_lang2str (EXAMPLE_PREF_LANG));
|
||||||
} else {
|
} else {
|
||||||
printf("'%s' is not available. Using '%s'\n", EXAMPLE_PREF_LANG,
|
printf("'%s' is not available. Using '%s'\n", EXAMPLE_PREF_LANG,
|
||||||
cdtext_lang2str (cdtext_get_language (cdtext)));
|
cdtext_lang2str (cdtext_get_language (cdtext)));
|
||||||
|
|||||||
@@ -86,7 +86,7 @@ cdtext_lang_t getLanguage()
|
|||||||
/*!
|
/*!
|
||||||
selects a language
|
selects a language
|
||||||
*/
|
*/
|
||||||
bool selectLanguage(const char *lang)
|
bool selectLanguage(cdtext_lang_t lang)
|
||||||
{
|
{
|
||||||
return cdtext_select_language(p_cdtext, lang);
|
return cdtext_select_language(p_cdtext, lang);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -277,7 +277,7 @@ cdtext_lang_t cdtext_get_language (const cdtext_t *p_cdtext);
|
|||||||
|
|
||||||
@return true on success, false if language is not available
|
@return true on success, false if language is not available
|
||||||
*/
|
*/
|
||||||
bool cdtext_select_language(cdtext_t *p_cdtext, const char *lang);
|
bool cdtext_select_language(cdtext_t *p_cdtext, cdtext_lang_t lang);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Returns a list of available languages or NULL.
|
Returns a list of available languages or NULL.
|
||||||
|
|||||||
@@ -342,24 +342,21 @@ cdtext_lang_t
|
|||||||
return false.
|
return false.
|
||||||
|
|
||||||
@param p_cdtext the CD-TEXT object
|
@param p_cdtext the CD-TEXT object
|
||||||
@param language string representation of the language
|
@param language language identifier
|
||||||
|
|
||||||
@return true on success, false if language is not available
|
@return true on success, false if language is not available
|
||||||
*/
|
*/
|
||||||
bool
|
bool
|
||||||
cdtext_select_language(cdtext_t *p_cdtext, const char *language)
|
cdtext_select_language(cdtext_t *p_cdtext, cdtext_lang_t language)
|
||||||
{
|
{
|
||||||
cdtext_lang_t lang_id;
|
|
||||||
lang_id = cdtext_is_language(language);
|
|
||||||
|
|
||||||
if(NULL == p_cdtext)
|
if(NULL == p_cdtext)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
if (CDTEXT_LANGUAGE_UNKNOWN != lang_id)
|
if (CDTEXT_LANGUAGE_UNKNOWN != language)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
for (i=0; i<CDTEXT_NUM_BLOCKS_MAX; i++) {
|
for (i=0; i<CDTEXT_NUM_BLOCKS_MAX; i++) {
|
||||||
if (lang_id == p_cdtext->block[i].language_code) {
|
if (language == p_cdtext->block[i].language_code) {
|
||||||
p_cdtext->block_i = i;
|
p_cdtext->block_i = i;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -445,7 +445,7 @@ print_cdtext_info(CdIo_t *p_cdio, track_t i_tracks, track_t i_first_track) {
|
|||||||
languages = cdtext_list_languages(p_cdtext);
|
languages = cdtext_list_languages(p_cdtext);
|
||||||
for(i=0; i<8; i++)
|
for(i=0; i<8; i++)
|
||||||
if ( CDTEXT_LANGUAGE_UNKNOWN != languages[i]
|
if ( CDTEXT_LANGUAGE_UNKNOWN != languages[i]
|
||||||
&& cdtext_select_language(p_cdtext, cdtext_lang2str(languages[i])))
|
&& cdtext_select_language(p_cdtext, languages[i]))
|
||||||
{
|
{
|
||||||
printf("\nLanguage %d '%s':\n", i, cdtext_lang2str(languages[i]));
|
printf("\nLanguage %d '%s':\n", i, cdtext_lang2str(languages[i]));
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user