From 00bb99ac80741fc50ef8a289719373032f2391eb Mon Sep 17 00:00:00 2001 From: toma Date: Wed, 25 Nov 2009 17:56:58 +0000 Subject: Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. BUG:215923 git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdeaccessibility@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da --- kttsd/kcmkttsmgr/addtalker.h | 89 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 89 insertions(+) create mode 100644 kttsd/kcmkttsmgr/addtalker.h (limited to 'kttsd/kcmkttsmgr/addtalker.h') diff --git a/kttsd/kcmkttsmgr/addtalker.h b/kttsd/kcmkttsmgr/addtalker.h new file mode 100644 index 0000000..29bbfb5 --- /dev/null +++ b/kttsd/kcmkttsmgr/addtalker.h @@ -0,0 +1,89 @@ +/***************************************************** vim:set ts=4 sw=4 sts=4: + Dialog to allow user to add a new Talker by selecting a language and synthesizer + (button). Uses addtalkerwidget.ui. + ------------------- + Copyright: + (C) 2004 by Gary Cramblitt + ------------------- + Original author: Gary Cramblitt + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + ******************************************************************************/ + +#ifndef ADDTALKER_H +#define ADDTALKER_H + +// Qt includes. +#include + +#include "addtalkerwidget.h" + +typedef QMap SynthToLangMap; +typedef QMap LangToSynthMap; + +class AddTalker : public AddTalkerWidget +{ + Q_OBJECT + +public: + /** + * Constructor. + * @param synthToLangMap QMap of supported language codes indexed by synthesizer. + * @param parent Inherited KDialog parameter. + * @param name Inherited KDialog parameter. + */ + AddTalker(SynthToLangMap synthToLangMap, QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); + + /** + * Destructor. + */ + ~AddTalker(); + + /** + * Returns user's chosen language code. + */ + QString getLanguageCode(); + + /** + * Returns user's chosen synthesizer. + */ + QString getSynthesizer(); + + +private: + /** + * Set the synthesizer-to-languages map. + * @param synthToLang QMap of supported language codes indexed by synthesizer. + */ + void setSynthToLangMap(SynthToLangMap synthToLangMap); + + // Converts a language code plus optional country code to language description. + QString languageCodeToLanguage(const QString &languageCode); + + // QMap of language descriptions to language codes. + QMap m_languageToLanguageCodeMap; + // QMap of supported languages indexed by synthesizer. + SynthToLangMap m_synthToLangMap; + // QMap of synthesizers indexed by language code they support. + LangToSynthMap m_langToSynthMap; + +private slots: + // Based on user's radio button selection, filters choices for language or synthesizer + // comboboxes based on what is selected in the other combobox. + void applyFilter(); +}; + +#endif + -- cgit v1.2.1