Skip to content

Commit

Permalink
Add an API to obtain the shortest code for lang
Browse files Browse the repository at this point in the history
  • Loading branch information
tagoh committed Jan 5, 2012
1 parent 0b039dd commit dd10ae0
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 5 deletions.
18 changes: 18 additions & 0 deletions liblangtag/lt-lang.c
Expand Up @@ -197,3 +197,21 @@ lt_lang_get_code(const lt_lang_t *lang,

return retval;
}

const gchar *
lt_lang_get_shortest_code(lt_lang_t *lang)
{
const gchar *retval = NULL;

g_return_val_if_fail (lang != NULL, NULL);

retval = lt_lang_get_code(lang, LT_LANG_CODE_1);
if (!retval) {
retval = lt_lang_get_code(lang, LT_LANG_CODE_2T);
if (!retval) {
retval = lt_lang_get_code(lang, LT_LANG_CODE_2B);
}
}

return retval;
}
11 changes: 6 additions & 5 deletions liblangtag/lt-lang.h
Expand Up @@ -40,11 +40,12 @@ typedef struct _lt_lang_t lt_lang_t;
typedef enum _lt_lang_code_t lt_lang_code_t;


lt_lang_t *lt_lang_ref (lt_lang_t *lang);
void lt_lang_unref (lt_lang_t *lang);
const gchar *lt_lang_get_name(const lt_lang_t *lang);
const gchar *lt_lang_get_code(const lt_lang_t *lang,
lt_lang_code_t code_type);
lt_lang_t *lt_lang_ref (lt_lang_t *lang);
void lt_lang_unref (lt_lang_t *lang);
const gchar *lt_lang_get_name (const lt_lang_t *lang);
const gchar *lt_lang_get_code (const lt_lang_t *lang,
lt_lang_code_t code_type);
const gchar *lt_lang_get_shortest_code(lt_lang_t *lang);

G_END_DECLS

Expand Down

0 comments on commit dd10ae0

Please sign in to comment.