1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
|
from Interface import Interface
class ITranslatable(Interface):
"""
Interface for translatable content.
"""
def isTranslation():
"""
Return language if this object is used as multilingual content,
0 otherwise.
"""
def addTranslation(language, **kwargs):
"""
Add a new language translation of this content.
"""
def removeTranslation(language):
"""
Removes a translation.
"""
def getTranslation(language='language'):
"""
Return the object corresponding to a translated version or None.
If called without arguments it returns the translation in the currently
selected language, or self.
"""
def getTranslationLanguages():
"""
Return a list of language codes.
"""
def getTranslations():
"""
Return a dict of {lang : [object, wf_state]}.
"""
def isCanonical():
"""
Boolean, is this the original, canonical translation of the content.
"""
def getCanonicalLanguage():
"""
Return the language code for the canonical translation of this content.
"""
def getCanonical():
"""
Return the original, canonical translation of this content.
"""
def setLanguage(language):
"""
Sets the language for the current translation - same as DC.
"""
def Language():
"""
Returns the language of this translation - same as DC.
"""
|