libosmscout  0.1
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules
osmscout::AvailableVoicesModel Class Reference

List model with voices available by configured providers (see Settings::GetVoiceProviders). More...

#include <AvailableVoicesModel.h>

+ Inheritance diagram for osmscout::AvailableVoicesModel:

Public Types

enum  Roles {
  NameRole = Qt::UserRole, LangRole = Qt::UserRole + 1, GenderRole = Qt::UserRole + 2, LicenseRole = Qt::UserRole + 3,
  DirectoryRole = Qt::UserRole + 4, AuthorRole = Qt::UserRole + 5, DescriptionRole = Qt::UserRole + 6, StateRole = Qt::UserRole + 7
}
 
enum  VoiceState { Available, Downloading, Downloaded }
 

Public Slots

void listDownloaded (const VoiceProvider &provider, QNetworkReply *)
 
void onVoiceStateChanged (const AvailableVoice &voice)
 
void reload ()
 

Signals

void loadingChanged ()
 

Public Member Functions

 AvailableVoicesModel ()
 
Q_INVOKABLE QVariant data (const QModelIndex &index, int role) const override
 
Q_INVOKABLE void download (const QModelIndex &index)
 
Q_INVOKABLE Qt::ItemFlags flags (const QModelIndex &index) const override
 
QString getFetchError ()
 
bool isLoading ()
 
Q_INVOKABLE void remove (const QModelIndex &index)
 
QHash< int, QByteArray > roleNames () const override
 
Q_INVOKABLE int rowCount (const QModelIndex &parent=QModelIndex()) const override
 
Q_INVOKABLE QString stateStr (VoiceState state) const
 
virtual ~AvailableVoicesModel ()
 

Properties

QString fetchError
 
bool loading
 

Detailed Description

List model with voices available by configured providers (see Settings::GetVoiceProviders).

Every voice provider have to expose list of voices by json. Json format exammple:

[
 {
   "lang": "American English",
   "gender": "female",
   "name": "Alex",
   "license": "CC-By-SA 3.0",
   "dir": "American English - Alex (female)",
   "author": "Alex Spehr",
   "description": "American English speaker"
 } 
]

Member Enumeration Documentation

◆ Roles

Enumerator
NameRole 
LangRole 
GenderRole 
LicenseRole 
DirectoryRole 
AuthorRole 
DescriptionRole 
StateRole 

◆ VoiceState

Enumerator
Available 
Downloading 
Downloaded 

Constructor & Destructor Documentation

◆ AvailableVoicesModel()

◆ ~AvailableVoicesModel()

osmscout::AvailableVoicesModel::~AvailableVoicesModel ( )
virtual

Member Function Documentation

◆ data()

◆ download()

void osmscout::AvailableVoicesModel::download ( const QModelIndex &  index)

◆ flags()

Qt::ItemFlags osmscout::AvailableVoicesModel::flags ( const QModelIndex &  index) const
override

◆ getFetchError()

QString osmscout::AvailableVoicesModel::getFetchError ( )
inline

◆ isLoading()

bool osmscout::AvailableVoicesModel::isLoading ( )
inline

◆ listDownloaded

void osmscout::AvailableVoicesModel::listDownloaded ( const VoiceProvider &  provider,
QNetworkReply *  reply 
)
slot

References fetchError, and loadingChanged().

Referenced by reload().

◆ loadingChanged

void osmscout::AvailableVoicesModel::loadingChanged ( )
signal

Referenced by listDownloaded(), and reload().

◆ onVoiceStateChanged

void osmscout::AvailableVoicesModel::onVoiceStateChanged ( const AvailableVoice voice)
slot

◆ reload

void osmscout::AvailableVoicesModel::reload ( )
slot

◆ remove()

void osmscout::AvailableVoicesModel::remove ( const QModelIndex &  index)

◆ roleNames()

QHash< int, QByteArray > osmscout::AvailableVoicesModel::roleNames ( ) const
override

◆ rowCount()

int osmscout::AvailableVoicesModel::rowCount ( const QModelIndex &  parent = QModelIndex()) const
override

◆ stateStr()

QString osmscout::AvailableVoicesModel::stateStr ( VoiceState  state) const

References Available, Downloaded, and Downloading.

Property Documentation

◆ fetchError

QString osmscout::AvailableVoicesModel::fetchError
read

Referenced by listDownloaded(), and reload().

◆ loading

bool osmscout::AvailableVoicesModel::loading
read

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