53 lines
1.6 KiB
Kotlin
53 lines
1.6 KiB
Kotlin
package content
|
|
|
|
/**
|
|
* Enum class representing different languages.
|
|
*
|
|
* @property name The name of the language, as in Soundbank Database
|
|
*/
|
|
enum class Language(val value: String, val googletts: String) {
|
|
INDONESIA(value="INDONESIA", googletts="id-ID"),
|
|
ENGLISH(value="ENGLISH", googletts="en-US"),
|
|
LOCAL(value="LOCAL", googletts=""),
|
|
JAPANESE(value="JAPANESE", googletts="ja-JP"),
|
|
CHINESE(value="CHINESE", googletts="zh-CN"),
|
|
ARABIC(value="ARABIC", googletts="ar-SA");
|
|
|
|
companion object{
|
|
var DEFAULT: Language = INDONESIA
|
|
|
|
/**
|
|
* Default language link string
|
|
*/
|
|
fun DefaultLanguageLink() : String {
|
|
return DEFAULT.value+";"+ENGLISH.value
|
|
}
|
|
|
|
/**
|
|
* Default language order
|
|
*/
|
|
fun LanguageOrder() : List<String> {
|
|
return listOf(
|
|
INDONESIA.value,
|
|
LOCAL.value,
|
|
ENGLISH.value,
|
|
CHINESE.value,
|
|
JAPANESE.value,
|
|
ARABIC.value
|
|
)
|
|
}
|
|
fun from_GoogleTTSLanguage(lang: google.GoogleTTSLanguage) : Language {
|
|
return when(lang) {
|
|
google.GoogleTTSLanguage.Indonesia -> INDONESIA
|
|
google.GoogleTTSLanguage.English -> ENGLISH
|
|
google.GoogleTTSLanguage.Japanese -> JAPANESE
|
|
google.GoogleTTSLanguage.Chinese -> CHINESE
|
|
google.GoogleTTSLanguage.Arabic -> ARABIC
|
|
}
|
|
}
|
|
|
|
fun from_GoogleTTSLanguage(code: String) : Language? {
|
|
return entries.find { it.googletts == code }
|
|
}
|
|
}
|
|
} |