/* This file is part of Telegram Desktop, the official desktop version of Telegram messaging app, see https://telegram.org Telegram Desktop 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 3 of the License, or (at your option) any later version. It 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. Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE Copyright (c) 2014 John Preston, https://desktop.telegram.org */ #include "stdafx.h" #include "lang.h" Qt::LayoutDirection langDir() { // current lang dependent return Qt::LeftToRight; } LangString langCounted(ushort key0, ushort tag, float64 value) { // current lang dependent int v = qFloor(value); QString sv; ushort key = key0; if (v != qCeil(value)) { key += 2; sv = QString::number(value); } else { if (v == 1) { key += 1; } else if (v) { key += 2; } sv = QString::number(v); } while (key > key0) { LangString v = lang(LangKey(key)); if (!v.isEmpty()) return v.tag(tag, sv); --key; } return lang(LangKey(key0)).tag(tag, sv); } const QString &LangLoader::errors() const { if (_errors.isEmpty() && !_err.isEmpty()) { _errors = _err.join('\n'); } return _errors; } const QString &LangLoader::warnings() const { if (!_checked) { for (int32 i = 0; i < lngkeys_cnt; ++i) { if (!_found[i]) { _warn.push_back(qsl("No value found for key '%1'").arg(langKeyName(LangKey(i)))); } } _checked = true; } if (_warnings.isEmpty() && !_warn.isEmpty()) { _warnings = _warn.join('\n'); } return _warnings; }