X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Flanguage.h;h=a043c0af83c3488c64ff477e3eaeda39eed9e746;hb=498f06d43a0f2000c3f704db1ea39fda3c819fe6;hp=0fe01ff608e47c46b6ad2ef0d8550378ebdd6230;hpb=797d87b4513088a66b17c7ac653b84e36ea80458;p=lyx.git diff --git a/src/language.h b/src/language.h index 0fe01ff608..a043c0af83 100644 --- a/src/language.h +++ b/src/language.h @@ -1,21 +1,17 @@ // -*- C++ -*- /* This file is part of - * ====================================================== - * + * ====================================================== + * * LyX, The Document Processor - * + * * Copyright 1995 Matthias Ettrich - * Copyright 1995-2000 The LyX Team. + * Copyright 1995-2001 The LyX Team. * * ====================================================== */ #ifndef LANGUAGE_H #define LANGUAGE_H -#ifdef __GNUG__ -#pragma interface -#endif - #include #include "LString.h" @@ -27,14 +23,21 @@ public: /// Language() : RightToLeft_(false) {} /// - Language(string const & l, string const & d, - bool rtl, Encoding const * e) - : lang_(l), display_(d), RightToLeft_(rtl) , encoding_(e) {} + Language(string const & l, string const & b, string const & d, + bool rtl, Encoding const * e, string const & c, + string const & o) + : lang_(l), babel_(b), display_(d), RightToLeft_(rtl), + encoding_(e), code_(c), latex_options_(o) + {} /// string const & lang() const { return lang_; } /// + string const & babel() const { + return babel_; + } + /// string const & display() const { return display_; } @@ -46,41 +49,69 @@ public: Encoding const * encoding() const { return encoding_; } + /// + string const & code() const { + return code_; + } + /// + string const & latex_options() const { + return latex_options_; + } private: /// string lang_; /// + string babel_; + /// string display_; /// bool RightToLeft_; /// Encoding const * encoding_; + /// + string code_; + /// + 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(string const & filename); + /// + void setDefaults(); + /// + Language const * getLanguage(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