digiKam
Loading...
Searching...
No Matches
Digikam::DOnlineTranslator Class Reference

Provides translation data. More...

#include <donlinetranslator.h>

+ Inheritance diagram for Digikam::DOnlineTranslator:

Classes

class  Private
 

Public Types

enum  Engine {
  Google , Yandex , Bing , LibreTranslate ,
  Lingva
}
 Represents online engines. More...
 
enum  Language {
  NoLanguage = -1 , Auto , Afrikaans , Albanian ,
  Amharic , Arabic , Armenian , Azerbaijani ,
  Bashkir , Basque , Belarusian , Bengali ,
  Bosnian , Bulgarian , Cantonese , Catalan ,
  Cebuano , Chichewa , Corsican , Croatian ,
  Czech , Danish , Dutch , English ,
  Esperanto , Estonian , Fijian , Filipino ,
  Finnish , French , Frisian , Galician ,
  Georgian , German , Greek , Gujarati ,
  HaitianCreole , Hausa , Hawaiian , Hebrew ,
  HillMari , Hindi , Hmong , Hungarian ,
  Icelandic , Igbo , Indonesian , Irish ,
  Italian , Japanese , Javanese , Kannada ,
  Kazakh , Khmer , Kinyarwanda , Klingon ,
  KlingonPlqaD , Korean , Kurdish , Kyrgyz ,
  Lao , Latin , Latvian , LevantineArabic ,
  Lithuanian , Luxembourgish , Macedonian , Malagasy ,
  Malay , Malayalam , Maltese , Maori ,
  Marathi , Mari , Mongolian , Myanmar ,
  Nepali , Norwegian , Oriya , Papiamento ,
  Pashto , Persian , Polish , Portuguese ,
  Punjabi , QueretaroOtomi , Romanian , Russian ,
  Samoan , ScotsGaelic , SerbianCyrillic , SerbianLatin ,
  Sesotho , Shona , SimplifiedChinese , Sindhi ,
  Sinhala , Slovak , Slovenian , Somali ,
  Spanish , Sundanese , Swahili , Swedish ,
  Tagalog , Tahitian , Tajik , Tamil ,
  Tatar , Telugu , Thai , Tongan ,
  TraditionalChinese , Turkish , Turkmen , Udmurt ,
  Uighur , Ukrainian , Urdu , Uzbek ,
  Vietnamese , Welsh , Xhosa , Yiddish ,
  Yoruba , YucatecMaya , Zulu
}
 Represents all languages for translation. More...
 
enum  TranslationError {
  NoError , ParametersError , NetworkError , ServiceError ,
  ParsingError
}
 Indicates all possible error conditions found during the processing of the translation. More...
 

Signals

void signalFinished ()
 Translation finished.
 

Public Member Functions

void abort ()
 Cancel translation operation (if any).
 
void detectLanguage (const QString &text, Engine engine=Google)
 Detect language.
 
 DOnlineTranslator (QObject *const parent=nullptr)
 Create object.
 
TranslationError error () const
 Last error.
 
QString errorString () const
 Last error string.
 
bool isRunning () const
 Check translation progress.
 
bool isSourceTranscriptionEnabled () const
 Check if source transcription is enabled.
 
bool isSourceTranslitEnabled () const
 Check if source transliteration is enabled.
 
bool isTranslationOptionsEnabled () const
 Check if translation options are enabled.
 
bool isTranslationTranslitEnabled () const
 Check if translation transliteration is enabled.
 
void setEngineApiKey (Engine engine, const QByteArray &apiKey)
 Set api key for engine.
 
void setEngineUrl (Engine engine, const QString &url)
 Set the URL engine.
 
void setSourceTranscriptionEnabled (bool enable)
 Enable or disable source transcription.
 
void setSourceTranslitEnabled (bool enable)
 Enable or disable source transliteration.
 
void setTranslationOptionsEnabled (bool enable)
 Enable or disable translation options.
 
void setTranslationTranslitEnabled (bool enable)
 Enable or disable translation transliteration.
 
QString source () const
 Source text.
 
Language sourceLanguage () const
 Source language.
 
QString sourceLanguageName () const
 Source language name.
 
QString sourceTranscription () const
 Source transcription.
 
QString sourceTranslit () const
 Source transliteration.
 
QJsonDocument toJson () const
 Converts the object to JSON.
 
void translate (const QString &text, Engine engine=Google, Language translationLang=Auto, Language sourceLang=Auto, Language uiLang=Auto)
 Translate text.
 
QString translation () const
 Translated text.
 
Language translationLanguage () const
 Translation language.
 
QString translationLanguageName () const
 Translation language name.
 
QMap< QString, QVector< DOnlineTranslatorOption > > translationOptions () const
 Translation options.
 
QString translationTranslit () const
 Translation transliteration.
 
 ~DOnlineTranslator () override
 

Static Public Member Functions

static QString engineName (Engine engine)
 
static QString fromRFC3066 (Engine engine, const QString &langCodeRFC3066)
 
static bool isSupportTranslation (Engine engine, Language lang)
 Check if transliteration is supported.
 
static Language language (const QLocale &locale)
 Language.
 
static Language language (const QString &langCode)
 Returns general language code.
 
static QString languageCode (Language lang)
 Language code.
 
static QString languageName (Language lang)
 Language name.
 
static QStringList supportedRFC3066 (Engine engine)
 

Friends

class DOnlineTts
 

Detailed Description

Provides translation data.

Member Enumeration Documentation

◆ Engine

Represents online engines.

Enumerator
Google 
Yandex 
Bing 
LibreTranslate 
Lingva 

◆ Language

Represents all languages for translation.

Enumerator
NoLanguage 
Auto 
Afrikaans 
Albanian 
Amharic 
Arabic 
Armenian 
Azerbaijani 
Bashkir 
Basque 
Belarusian 
Bengali 
Bosnian 
Bulgarian 
Cantonese 
Catalan 
Cebuano 
Chichewa 
Corsican 
Croatian 
Czech 
Danish 
Dutch 
English 
Esperanto 
Estonian 
Fijian 
Filipino 
Finnish 
French 
Frisian 
Galician 
Georgian 
German 
Greek 
Gujarati 
HaitianCreole 
Hausa 
Hawaiian 
Hebrew 
HillMari 
Hindi 
Hmong 
Hungarian 
Icelandic 
Igbo 
Indonesian 
Irish 
Italian 
Japanese 
Javanese 
Kannada 
Kazakh 
Khmer 
Kinyarwanda 
Klingon 
KlingonPlqaD 
Korean 
Kurdish 
Kyrgyz 
Lao 
Latin 
Latvian 
LevantineArabic 
Lithuanian 
Luxembourgish 
Macedonian 
Malagasy 
Malay 
Malayalam 
Maltese 
Maori 
Marathi 
Mari 
Mongolian 
Myanmar 
Nepali 
Norwegian 
Oriya 
Papiamento 
Pashto 
Persian 
Polish 
Portuguese 
Punjabi 
QueretaroOtomi 
Romanian 
Russian 
Samoan 
ScotsGaelic 
SerbianCyrillic 
SerbianLatin 
Sesotho 
Shona 
SimplifiedChinese 
Sindhi 
Sinhala 
Slovak 
Slovenian 
Somali 
Spanish 
Sundanese 
Swahili 
Swedish 
Tagalog 
Tahitian 
Tajik 
Tamil 
Tatar 
Telugu 
Thai 
Tongan 
TraditionalChinese 
Turkish 
Turkmen 
Udmurt 
Uighur 
Ukrainian 
Urdu 
Uzbek 
Vietnamese 
Welsh 
Xhosa 
Yiddish 
Yoruba 
YucatecMaya 
Zulu 

◆ TranslationError

Indicates all possible error conditions found during the processing of the translation.

Enumerator
NoError 

No error condition

ParametersError 

Unsupported combination of parameters

NetworkError 

Network error

ServiceError 

Service unavailable or maximum number of requests

ParsingError 

The request could not be parsed (report a bug if you see this)

Constructor & Destructor Documentation

◆ DOnlineTranslator()

Digikam::DOnlineTranslator::DOnlineTranslator ( QObject *const  parent = nullptr)
explicit

Create object.

Constructs an object with empty data and with parent. You can use translate() to send text to object.

Parameters
parentthe parent object

References signalFinished(), and Digikam::DOnlineTranslator::Private::stateMachine.

◆ ~DOnlineTranslator()

Digikam::DOnlineTranslator::~DOnlineTranslator ( )
override

Member Function Documentation

◆ abort()

void Digikam::DOnlineTranslator::abort ( )

Cancel translation operation (if any).

References Digikam::DOnlineTranslator::Private::currentReply.

Referenced by detectLanguage(), and translate().

◆ detectLanguage()

◆ engineName()

QString Digikam::DOnlineTranslator::engineName ( Engine  engine)
static

Return the engine literal name.

References Bing, LibreTranslate, Lingva, and Yandex.

◆ error()

DOnlineTranslator::TranslationError Digikam::DOnlineTranslator::error ( ) const

Last error.

Error that was found during the processing of the last translation. If no error was found, returns DOnlineTranslator::NoError. The text of the error can be obtained by errorString().

Returns
last error

References Digikam::DOnlineTranslator::Private::error.

◆ errorString()

QString Digikam::DOnlineTranslator::errorString ( ) const

Last error string.

A human-readable description of the last translation error that occurred.

Returns
last error string

References Digikam::DOnlineTranslator::Private::errorString.

◆ fromRFC3066()

◆ isRunning()

bool Digikam::DOnlineTranslator::isRunning ( ) const

Check translation progress.

Returns
true when the translation is still processing and has not finished or was aborted yet.

References Digikam::DOnlineTranslator::Private::stateMachine.

◆ isSourceTranscriptionEnabled()

bool Digikam::DOnlineTranslator::isSourceTranscriptionEnabled ( ) const

Check if source transcription is enabled.

Returns
true if source transcription is enabled

References Digikam::DOnlineTranslator::Private::sourceTranscriptionEnabled.

◆ isSourceTranslitEnabled()

bool Digikam::DOnlineTranslator::isSourceTranslitEnabled ( ) const

Check if source transliteration is enabled.

Returns
true if source transliteration is enabled

References Digikam::DOnlineTranslator::Private::sourceTranslitEnabled.

◆ isSupportTranslation()

◆ isTranslationOptionsEnabled()

bool Digikam::DOnlineTranslator::isTranslationOptionsEnabled ( ) const

Check if translation options are enabled.

Returns
true if translation options are enabled
See also
DOnlineTranslatorOption

References Digikam::DOnlineTranslator::Private::translationOptionsEnabled.

◆ isTranslationTranslitEnabled()

bool Digikam::DOnlineTranslator::isTranslationTranslitEnabled ( ) const

Check if translation transliteration is enabled.

Returns
true if translation transliteration is enabled

References Digikam::DOnlineTranslator::Private::translationTranslitEnabled.

◆ language() [1/2]

◆ language() [2/2]

DOnlineTranslator::Language Digikam::DOnlineTranslator::language ( const QString &  langCode)
static

Returns general language code.

Parameters
langCodecode
Returns
language

References NoLanguage, and Digikam::DOnlineTranslator::Private::s_genericLanguageCodes.

Referenced by detectLanguage(), Digikam::s_inlineTranslateString(), and translate().

◆ languageCode()

QString Digikam::DOnlineTranslator::languageCode ( Language  lang)
static

Language code.

Parameters
langlanguage
Returns
language code

References Digikam::DOnlineTranslator::Private::s_genericLanguageCodes.

◆ languageName()

◆ setEngineApiKey()

void Digikam::DOnlineTranslator::setEngineApiKey ( Engine  engine,
const QByteArray &  apiKey 
)

Set api key for engine.

Affects only LibreTranslate.

Parameters
enginethe engine to use
apiKeyyour key for this particular instance

References Digikam::DOnlineTranslator::Private::libreApiKey, and LibreTranslate.

◆ setEngineUrl()

void Digikam::DOnlineTranslator::setEngineUrl ( Engine  engine,
const QString &  url 
)

Set the URL engine.

Only affects LibreTranslate and Lingva because these engines have multiple instances. You need to call this function to specify the URL of an instance for them.

Parameters
enginethe engine to use
urlengine url

References LibreTranslate, Digikam::DOnlineTranslator::Private::libreUrl, Lingva, and Digikam::DOnlineTranslator::Private::lingvaUrl.

◆ setSourceTranscriptionEnabled()

void Digikam::DOnlineTranslator::setSourceTranscriptionEnabled ( bool  enable)

Enable or disable source transcription.

Parameters
enablewhether to enable source transcription

References Digikam::DOnlineTranslator::Private::sourceTranscriptionEnabled.

◆ setSourceTranslitEnabled()

void Digikam::DOnlineTranslator::setSourceTranslitEnabled ( bool  enable)

Enable or disable source transliteration.

Parameters
enablewhether to enable source transliteration

References Digikam::DOnlineTranslator::Private::sourceTranslitEnabled.

◆ setTranslationOptionsEnabled()

void Digikam::DOnlineTranslator::setTranslationOptionsEnabled ( bool  enable)

Enable or disable translation options.

Parameters
enablewhether to enable translation options
See also
DOnlineTranslatorOption

References Digikam::DOnlineTranslator::Private::translationOptionsEnabled.

◆ setTranslationTranslitEnabled()

void Digikam::DOnlineTranslator::setTranslationTranslitEnabled ( bool  enable)

Enable or disable translation transliteration.

Parameters
enablewhether to enable translation transliteration

References Digikam::DOnlineTranslator::Private::translationTranslitEnabled.

◆ signalFinished

void Digikam::DOnlineTranslator::signalFinished ( )
signal

Translation finished.

This signal is emitted when the translation is complete.

Referenced by Digikam::AltLangStrEdit::AltLangStrEdit(), detectLanguage(), DOnlineTranslator(), Digikam::s_inlineTranslateString(), and translate().

◆ source()

QString Digikam::DOnlineTranslator::source ( ) const

Source text.

Returns
source text

References Digikam::DOnlineTranslator::Private::source.

◆ sourceLanguage()

DOnlineTranslator::Language Digikam::DOnlineTranslator::sourceLanguage ( ) const

Source language.

Returns
language of the source text

References Digikam::DOnlineTranslator::Private::sourceLang.

◆ sourceLanguageName()

QString Digikam::DOnlineTranslator::sourceLanguageName ( ) const

Source language name.

Returns
language name of the source text

References languageName(), and Digikam::DOnlineTranslator::Private::sourceLang.

◆ sourceTranscription()

QString Digikam::DOnlineTranslator::sourceTranscription ( ) const

Source transcription.

Returns
transcription of the source text

References Digikam::DOnlineTranslator::Private::sourceTranscription.

◆ sourceTranslit()

QString Digikam::DOnlineTranslator::sourceTranslit ( ) const

Source transliteration.

Returns
transliteration of the source text

References Digikam::DOnlineTranslator::Private::sourceTranslit.

◆ supportedRFC3066()

◆ toJson()

◆ translate()

void Digikam::DOnlineTranslator::translate ( const QString &  text,
Engine  engine = Google,
Language  translationLang = Auto,
Language  sourceLang = Auto,
Language  uiLang = Auto 
)

◆ translation()

QString Digikam::DOnlineTranslator::translation ( ) const

Translated text.

Returns
translated text.

References Digikam::DOnlineTranslator::Private::translation.

◆ translationLanguage()

DOnlineTranslator::Language Digikam::DOnlineTranslator::translationLanguage ( ) const

Translation language.

Returns
language of the translated text

References Digikam::DOnlineTranslator::Private::translationLang.

◆ translationLanguageName()

QString Digikam::DOnlineTranslator::translationLanguageName ( ) const

Translation language name.

Returns
language name of the translated text

References languageName(), and Digikam::DOnlineTranslator::Private::translationLang.

◆ translationOptions()

QMap< QString, QVector< DOnlineTranslatorOption > > Digikam::DOnlineTranslator::translationOptions ( ) const

Translation options.

Returns
QMap whose key represents the type of speech, and the value is a QVector of translation options
See also
DOnlineTranslatorOption

References Digikam::DOnlineTranslator::Private::translationOptions.

Referenced by toJson().

◆ translationTranslit()

QString Digikam::DOnlineTranslator::translationTranslit ( ) const

Translation transliteration.

Returns
transliteration of the translated text

References Digikam::DOnlineTranslator::Private::translationTranslit.

Friends And Related Symbol Documentation

◆ DOnlineTts

friend class DOnlineTts
friend

The documentation for this class was generated from the following files: