From 932126ad426803596f17a7ad320c8ded1ea8b2d7 Mon Sep 17 00:00:00 2001 From: Peng Wu Date: Thu, 21 Feb 2013 13:14:55 +0800 Subject: write pinyin_get_pinyin_strings --- src/libpinyin.ver | 1 + src/pinyin.cpp | 13 +++++++++++++ src/pinyin.h | 16 ++++++++++++++++ 3 files changed, 30 insertions(+) diff --git a/src/libpinyin.ver b/src/libpinyin.ver index a156215..078ad86 100644 --- a/src/libpinyin.ver +++ b/src/libpinyin.ver @@ -34,6 +34,7 @@ LIBPINYIN { pinyin_reset; pinyin_get_chewing_string; pinyin_get_pinyin_string; + pinyin_get_pinyin_strings; pinyin_token_get_phrase; pinyin_token_get_n_pronunciation; pinyin_token_get_nth_pronunciation; diff --git a/src/pinyin.cpp b/src/pinyin.cpp index 2b9eb69..e880bb1 100644 --- a/src/pinyin.cpp +++ b/src/pinyin.cpp @@ -1763,6 +1763,19 @@ bool pinyin_get_pinyin_string(pinyin_instance_t * instance, return true; } +bool pinyin_get_pinyin_strings(pinyin_instance_t * instance, + ChewingKey * key, + gchar ** shengmu, + gchar ** yunmu) { + *shengmu = NULL; *yunmu = NULL; + if (0 == key->get_table_index()) + return false; + + *shengmu = key->get_shengmu_string(); + *yunmu = key->get_yunmu_string(); + return true; +} + bool pinyin_token_get_phrase(pinyin_instance_t * instance, phrase_token_t token, guint * len, diff --git a/src/pinyin.h b/src/pinyin.h index 9c2618e..6cde671 100644 --- a/src/pinyin.h +++ b/src/pinyin.h @@ -491,6 +491,22 @@ bool pinyin_get_pinyin_string(pinyin_instance_t * instance, ChewingKey * key, gchar ** utf8_str); +/** + * pinyin_get_pinyin_strings: + * @instance: the pinyin instance. + * @key: the pinyin key. + * @shengmu: the shengmu string. + * @yunmu: the yunmu string. + * @returns: whether the get operation is successful. + * + * Get the shengmu and yunmu strings of the key. + * + */ +bool pinyin_get_pinyin_strings(pinyin_instance_t * instance, + ChewingKey * key, + gchar ** shengmu, + gchar ** yunmu); + /** * pinyin_token_get_phrase: * @instance: the pinyin instance. -- cgit