mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-11 13:46:43 +00:00
1eb8155fa0
Licence details can be found in the file COPYING. and thank God for sed. git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@5211 a592a061-630c-0410-9148-cb99ea01b6c8
69 lines
1.4 KiB
C
69 lines
1.4 KiB
C
/**
|
|
* \file frnt_lang.C
|
|
* This file is part of LyX, the document processor.
|
|
* Licence details can be found in the file COPYING.
|
|
*
|
|
* \author Angus Leeming
|
|
*
|
|
* Full author contact details are available in file CREDITS
|
|
*/
|
|
|
|
#include <config.h>
|
|
|
|
#ifdef __GNUG__
|
|
#pragma implementation
|
|
#endif
|
|
|
|
#include "frnt_lang.h"
|
|
#include "gettext.h"
|
|
#include "language.h"
|
|
#include <iostream>
|
|
#include <algorithm>
|
|
|
|
using std::vector;
|
|
|
|
namespace {
|
|
|
|
struct Sorter {
|
|
bool operator()(frnt::LanguagePair const & lhs,
|
|
frnt::LanguagePair const & rhs) const
|
|
{
|
|
return lhs.first < rhs.first;
|
|
}
|
|
};
|
|
|
|
} // namespace anon
|
|
|
|
namespace frnt {
|
|
|
|
vector<LanguagePair> const getLanguageData(bool character_dlg)
|
|
{
|
|
vector<LanguagePair>::size_type const size = character_dlg ?
|
|
languages.size() + 2 : languages.size();
|
|
|
|
vector<LanguagePair> langs(size);
|
|
|
|
if (character_dlg) {
|
|
langs[0].first = _("No change"); langs[0].second = "ignore";
|
|
langs[1].first = _("Reset"); langs[1].second = "reset";
|
|
}
|
|
|
|
vector<string>::size_type i = character_dlg ? 2 : 0;
|
|
for (Languages::const_iterator cit = languages.begin();
|
|
cit != languages.end(); ++cit) {
|
|
langs[i].first = _(cit->second.display());
|
|
langs[i].second = cit->second.lang();
|
|
++i;
|
|
}
|
|
|
|
// Don't sort "ignore" and "reset"
|
|
vector<LanguagePair>::iterator begin = character_dlg ?
|
|
langs.begin() + 2 : langs.begin();
|
|
|
|
std::sort(begin, langs.end(), Sorter());
|
|
|
|
return langs;
|
|
}
|
|
|
|
} // namespace frnt
|