X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Flanguage.h;h=66d1d5066446e65fa21e922afcd5f960b67f377d;hb=fd2124c83dfcfeaf33b64d1d33c8ceb8d9f5f9b9;hp=7015a59f79c7d120cb7c7de14844f12076c8de2f;hpb=4148a9244547e7184c1dcc8234e9e62d3143a42c;p=lyx.git diff --git a/src/language.h b/src/language.h index 7015a59f79..66d1d50664 100644 --- a/src/language.h +++ b/src/language.h @@ -1,23 +1,23 @@ // -*- C++ -*- -/* This file is part of - * ====================================================== - * - * LyX, The Document Processor - * - * Copyright 1995 Matthias Ettrich - * Copyright 1995-2000 The LyX Team. +/** + * \file language.h + * This file is part of LyX, the document processor. + * Licence details can be found in the file COPYING. * - * ====================================================== */ + * \author Lars Gullik Bjønnes + * \author Jean-Marc Lasgouttes + * \author Dekel Tsur + * \author Jürgen Vigna + * + * Full author contact details are available in file CREDITS. + */ #ifndef LANGUAGE_H #define LANGUAGE_H -#ifdef __GNUG__ -#pragma interface -#endif - #include -#include "LString.h" +#include + class Encoding; @@ -25,76 +25,79 @@ class Encoding; class Language { public: /// - Language() : RightToLeft_(false) {} + Language() : rightToLeft_(false) {} /// - Language(string const & l, string const & b, string const & d, - bool rtl, Encoding const * e, string const & c) - : lang_(l), babel_(b), display_(d), RightToLeft_(rtl), - encoding_(e), code_(c) + Language(std::string const & l, std::string const & b, std::string const & d, + bool rtl, std::string const & es, Encoding const * e, std::string const & c, + std::string const & o) + : lang_(l), babel_(b), display_(d), rightToLeft_(rtl), + encodingStr_(es), encoding_(e), code_(c), latex_options_(o) {} /// - string const & lang() const { - return lang_; - } + std::string const & lang() const { return lang_; } /// - string const & babel() const { - return babel_; - } + std::string const & babel() const { return babel_; } /// - string const & display() const { - return display_; - } + std::string const & display() const { return display_; } /// - bool RightToLeft() const { - return RightToLeft_; - } + bool RightToLeft() const { return rightToLeft_; } /// - Encoding const * encoding() const { - return encoding_; - } + Encoding const * encoding() const { return encoding_; } /// - string const & code() const { - return code_; - } + std::string const & encodingStr() const { return encodingStr_; } + /// + std::string const & code() const { return code_; } + /// + std::string const & latex_options() const { return latex_options_; } private: /// - string lang_; + std::string lang_; /// - string babel_; + std::string babel_; /// - string display_; + std::string display_; /// - bool RightToLeft_; + bool rightToLeft_; + /// + std::string encodingStr_; /// Encoding const * encoding_; /// - string code_; + std::string code_; + /// + std::string latex_options_; }; -#if 0 -/// -bool operator==(Language const & l1, Language const & l2) +class Languages { - return l1.lang == l2.lang - && l1.display_ == l2.display_ - && l1.RightToLeft_ == l2.RightToLeft_ - && l1.encoding_ == l2.encoding_; -} +public: + /// + typedef std::map LanguageList; + /// + typedef LanguageList::const_iterator const_iterator; + /// + typedef LanguageList::size_type size_type; + /// + void read(std::string const & filename); + /// + Language const * getLanguage(std::string const & language) const; + /// + size_type size() const { return languagelist.size(); } + /// + const_iterator begin() const { return languagelist.begin(); } + /// + const_iterator end() const { return languagelist.end(); } + /// -/// -bool operator!=(Language const l1, Language const & l2) -{ - return !(l1 == l2); +private: + /// + LanguageList languagelist; +}; -} -#endif -/// -typedef std::map Languages; -/// extern Languages languages; -/// extern Language const * default_language; -/// -extern Language const *ignore_language; +extern Language const * english_language; +extern Language const * ignore_language; +extern Language const * latex_language; #endif