";
}
}
--
cgit v0.12
From 753ad4e8282d0c7c172a33035066792a8e64e6ad Mon Sep 17 00:00:00 2001
From: Peter Hartmann
Date: Mon, 31 May 2010 14:00:32 +0200
Subject: QXmlSchema documentation correction
use a QByteArray to load the schema, not a QIODevice.
Reviewed-by: David Boddie
---
doc/src/snippets/qxmlschema/main.cpp | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/doc/src/snippets/qxmlschema/main.cpp b/doc/src/snippets/qxmlschema/main.cpp
index 83fb245..26a8741 100644
--- a/doc/src/snippets/qxmlschema/main.cpp
+++ b/doc/src/snippets/qxmlschema/main.cpp
@@ -91,11 +91,8 @@ void Schema::loadFromData() const
" elementFormDefault=\"qualified\">"
"" );
- QBuffer buffer(&data);
- buffer.open(QIODevice::ReadOnly);
-
QXmlSchema schema;
- schema.load(&buffer);
+ schema.load(data);
if (schema.isValid())
qDebug() << "schema is valid";
--
cgit v0.12
From 7ccd9996c41fcbe481726fadd8cac0dac1c25399 Mon Sep 17 00:00:00 2001
From: Ritt Konstantin
Date: Mon, 31 May 2010 15:14:39 +0200
Subject: update Russian translation for Qt libraries
this contains some changes from symbian-commissioned "professional" translations
Merge-request: 621
Reviewed-by: Oswald Buddenhagen
---
tools/linguist/phrasebooks/russian.qph | 2 +-
translations/qt_ru.ts | 6204 ++++++++++++++++++++------------
2 files changed, 3813 insertions(+), 2393 deletions(-)
diff --git a/tools/linguist/phrasebooks/russian.qph b/tools/linguist/phrasebooks/russian.qph
index ae1a9b9..750fda0 100644
--- a/tools/linguist/phrasebooks/russian.qph
+++ b/tools/linguist/phrasebooks/russian.qph
@@ -826,7 +826,7 @@
- ползунок
+ регулятор
diff --git a/translations/qt_ru.ts b/translations/qt_ru.ts
index e9cdfd4..deae134 100644
--- a/translations/qt_ru.ts
+++ b/translations/qt_ru.ts
@@ -1,10 +1,31 @@
-
+
+
+ CloseButton
+
+
+
+ Закрыть вкладку
+
+
+
+ FakeReply
+
+
+
+ Фиктивная ошибка !
+
+
+
+
+ Некорректный адрес URL
+
+MAC_APPLICATION_MENU
-
+ Службы
@@ -40,27 +61,6 @@
- CloseButton
-
-
-
- Закрыть вкладку
-
-
-
- FakeReply
-
-
-
-
-
-
-
-
- Некорректный URL
-
-
-Phonon::
@@ -96,25 +96,32 @@
Phonon::AudioOutput
-
+
+ <html>Звуковое устройство <b>%1</b> не работает.<br/>Будет использоваться <b>%2</b>.</html>
-
+
- <html>Переключение на звуковое устройство <b>%1</b><br/>, которое доступно и имеет высший приоритет.</html>
+ <html>Переключение на звуковое устройство <b>%1</b><br/>, которое стало доступно и имеет высший приоритет.</html>
+
- Возвращение к устройству '%1'
+ Возвращение к устройству "%1"
+
+
+
+
+ <html>Переключение на устройство вывода звука <b>%1</b><br/>, которое имеет высший приоритет или настроено для обработки данного потока.</html>Phonon::Gstreamer::Backend
-
+ Внимание: Похоже, пакет gstreamer0.10-plugins-good не установлен.
@@ -131,40 +138,50 @@
Phonon::Gstreamer::MediaObject
-
+ Невозможно начать воспроизведение.
-Проверьте установку GStreamer и убедитесь,
+Проверьте правильность установки GStreamer и убедитесь,
что пакет libgstreamer-plugins-base установлен.
-
+
+
+ Отсутствует сценарий установки кодека.
+
+
+
+
+ Не удалось установить модуль кодека: %0
+
+
+ Отсутствует необходимый кодек. Вам нужно установить следующие кодеки для воспроизведения данного содержимого: %0
-
-
-
-
+
-
-
+
+
+
+
+ Не удалось открыть источник медиа-данных.
-
+
- Неверный тип источника медиа-данных.
+ Некорректный тип источника медиа-данных.
-
+ Не удалось найти источник медиа-данных.
@@ -192,14 +209,14 @@ have libgstreamer-plugins-base installed.
Устройство воспроизведения звука
-
+ Нет ошибки
- Не найден
+ Не найдено
@@ -214,12 +231,12 @@ have libgstreamer-plugins-base installed.
-
+ Переполнение
-
+ Переполнение
@@ -239,7 +256,7 @@ have libgstreamer-plugins-base installed.
- Не готов
+ Не готово
@@ -264,7 +281,7 @@ have libgstreamer-plugins-base installed.
- Недостаточная ширина канала
+ Недостаточная скорость передачи данных
@@ -274,17 +291,17 @@ have libgstreamer-plugins-base installed.
- Ошибка сетевого обмена данными
+ Ошибка сетевого обмена данными
-
+ Потоковое воспроизведение не поддерживается
-
+ Сигнал сервера
@@ -294,12 +311,12 @@ have libgstreamer-plugins-base installed.
- Некорректный URL
+ Некорректный адрес URL
-
+ Ошибка широковещательной передачи
@@ -358,7 +375,7 @@ have libgstreamer-plugins-base installed.
- Ошибка открытия URL
+ Ошибка открытия адреса URL
@@ -366,12 +383,40 @@ have libgstreamer-plugins-base installed.
Не удалось установить уровень громкости
-
+
+
+ Не удалось загрузить клип
+
+
+ Воспроизведение завершено
+ Phonon::MMF::AbstractVideoPlayer
+
+
+
+ Не удалось приостановить воспроизведение
+
+
+
+
+ Не удалось установить позицию
+
+
+
+
+ Не удалось получить позицию
+
+
+
+
+ Не удалось открыть клип
+
+
+Phonon::MMF::AudioEqualizer
@@ -384,12 +429,19 @@ have libgstreamer-plugins-base installed.
-
+ Не удалось получить позицию
+
+
+ Phonon::MMF::DsaVideoPlayer
-
-
-
+
+
+
+
+
+
+ Ошибка отображения видео
@@ -397,7 +449,7 @@ have libgstreamer-plugins-base installed.
- Активно
+ Включено
@@ -406,74 +458,74 @@ have libgstreamer-plugins-base installed.
DecayHFRatio: Ratio of high-frequency decay time to the value specified by DecayTime.
-
+ Коэффициент затухания ВЧ (%)DecayTime: Time over which reverberation is diminished.
-
+ Время затухания (мс)Density Delay between first and subsequent reflections. Note that the S60 platform documentation does not make clear the distinction between this value and the Diffusion value.
-
+ Плотность (%)Diffusion: Delay between first and subsequent reflections. Note that the S60 platform documentation does not make clear the distinction between this value and the Density value.
-
+ Рассеивание (%)ReflectionsDelay: Amount of delay between the arrival the direct path from the source and the arrival of the first reflection.
-
+ Затухание отражений (мс)ReflectionsLevel: Amplitude of reflections. This value is corrected by the RoomLevel to give the final reflection amplitude.
-
+ Уровень отражений (мБар)ReverbDelay: Amount of time between arrival of the first reflection and start of the late reverberation.
-
+ Задержка эха (мс)ReverbLevel Amplitude of reverberations. This value is corrected by the RoomLevel to give the final reverberation amplitude.
-
+ Уровень эха (мБар)RoomHFLevel: Amplitude of low-pass filter used to attenuate the high frequency component of reflected sound.
-
+ Уровень ВЧ отраженийRoomLevel: Master volume control for all reflected sound.
-
+ Уровень отражений (мБар)Phonon::MMF::MediaObject
-
+ Ошибка открытыия источника: тип не поддерживается
- Ошибка открытыия источника: тип медиа-данных не определён
+ Ошибка открытыия источника: тип носителя не определён
@@ -485,40 +537,12 @@ have libgstreamer-plugins-base installed.
- Phonon::MMF::VideoPlayer
-
-
-
-
-
+ Phonon::MMF::SurfaceVideoPlayer
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ Ошибка отображения видео
@@ -536,7 +560,7 @@ have libgstreamer-plugins-base installed.
- Используйте данный ползунок для настройки громкости. Крайнее левое положение соответствует 0%, крайнее правое - %1%
+ Используйте данный регулятор для настройки громкости. Крайнее левое положение соответствует 0%, крайнее правое - %1%
@@ -549,7 +573,7 @@ have libgstreamer-plugins-base installed.
- %1, %2 не определён
+ %1, %2 не определён
@@ -1149,43 +1173,43 @@ to
- Протокол '%1' не поддерживается
+ Протокол "%1" не поддерживается
- Протокол '%1' не поддерживает просмотр каталогов
+ Протокол "%1" не поддерживает просмотр каталогов
- Протокол '%1' не поддерживает создание каталогов
+ Протокол "%1" не поддерживает создание каталогов
- Протокол '%1' не поддерживает удаление файлов или каталогов
+ Протокол "%1" не поддерживает удаление файлов или каталогов
- Протокол '%1' не поддерживает переименование файлов или каталогов
+ Протокол "%1" не поддерживает переименование файлов или каталогов
- Протокол '%1' не поддерживает доставку файлов
+ Протокол "%1" не поддерживает доставку файлов
- Протокол '%1' не поддерживает отправку файлов
+ Протокол "%1" не поддерживает отправку файлов
- Протокол '%1' не поддерживает копирование или перемещение файлов или каталогов
+ Протокол "%1" не поддерживает копирование или перемещение файлов или каталогов
@@ -1225,7 +1249,7 @@ to
QAbstractSocket
-
+
@@ -1247,12 +1271,12 @@ to
-
+ Операция с сокетом не поддерживается
-
+ Время на операцию с сокетом истекло
@@ -1271,7 +1295,7 @@ to
QAbstractSpinBox
-
+ Шаг вв&ерх
@@ -1297,14 +1321,9 @@ to
QApplication
-
-
- Активировать
-
-
- Программный модуль '%1' требует Qt %2, найдена версия %3.
+ Программный модуль "%1" требует Qt %2, найдена версия %3.
@@ -1312,16 +1331,21 @@ to
Ошибка совместимости библиотеки Qt
-
-
- Translate this string to the string 'LTR' in left-to-right languages or to 'RTL' in right-to-left languages (such as Hebrew and Arabic) to get proper widget layout.
- LTR
+
+
+ Активировать
-
+ Активирует главное окно программы
+
+
+
+ Translate this string to the string 'LTR' in left-to-right languages or to 'RTL' in right-to-left languages (such as Hebrew and Arabic) to get proper widget layout.
+ LTR
+ QAxSelect
@@ -1367,7 +1391,7 @@ to
QColorDialog
-
+ &Тон:
@@ -1425,7 +1449,7 @@ to
QComboBox
-
+ Открыть
@@ -1572,1542 +1596,2690 @@ to
- QDial
+ QDeclarativeAbstractAnimation
-
-
- QDial
+
+
+ Невозможно анимировать несуществуещее свойство "%1"
-
-
- SpeedoMeter
+
+
+ Невозможно анимировать свойство только для чтения "%1"
-
-
- SliderHandle
+
+
+ Animation - это абстрактный класс
- QDialog
-
-
-
- Что это?
-
+ QDeclarativeAnchorAnimation
-
-
- Готово
+
+
+ Невозможно установить длительность < 0
- QDialogButtonBox
+ QDeclarativeAnchors
-
-
-
-
- ОК
+
+
+ Обнаружена возможная цикличная привязка на fill.
-
-
- &ОК
+
+
+ Обнаружена возможная цикличная привязка на centerIn.
-
-
- &Сохранить
+
+
+
+
+
+ Невозможно установить привязку к элементу, не являющемуся родителем или соседом.
-
-
- Сохранить
+
+
+ Обнаружена возможная цикличная привязка к вертикальной привязке.
-
-
- Открыть
+
+
+ Обнаружена возможная цикличная привязка к горизонтальной привязке.
-
-
- От&мена
+
+
+ Невозможно задать левую, правую и среднюю привязки.
-
-
- Отмена
+
+
+
+ Невозможно привязаться к нулевому элементу.
-
-
- &Закрыть
+
+
+ Невозможно привязать горизонтальный край к вертикальному.
-
-
- Закрыть
+
+
+
+ Невозможно привязать элемент к самому себе.
-
-
- Применить
+
+
+ Невозможно задать верхнюю, нижнюю и среднюю привязки.
-
-
- Сбросить
+
+
+ Невозможно использовать базовую привязку вместе с верхней, нижней и центральной по вертикали.
-
-
- Справка
+
+
+ Невозможно привязать вертикальный край к горизонтальному.
+
+
+ QDeclarativeAnimatedImage
-
-
- Не сохранять
+
+
+ Qt было собрано без поддержки QMovie
+
+
+ QDeclarativeBehavior
-
-
- Отклонить
+
+
+ Невозможно изменить анимацию, назначенную поведению.
+
+
+ QDeclarativeBinding
-
-
- &Да
+
+
+ Обнаружена цикличная привязка для свойства "%1"
+
+
+ QDeclarativeCompiledBindings
-
-
- Да для &всех
+
+
+ Обнаружена цикличная привязка для свойства "%1"
+
+
+ QDeclarativeCompiler
-
-
- &Нет
+
+
+
+
+
+
+
+ Некорректное присваивание свойства: "%1" свойство только для чтения
-
-
- Н&ет для всех
+
+
+ Некорректное присваивание свойства: неизвестное перечисление
-
-
- Сохранить все
+
+
+ Некорректное присваивание свойства: ожидается значение типа "string"
-
- Прервать
+
+ Некорректное присваивание свойства: ожидается значение типа "url"
-
-
- Повторить
+
+
+ Некорректное присваивание свойства: ожидается значение типа "unsigned int"
-
-
- Пропустить
+
+
+ Некорректное присваивание свойства: ожидается значение типа "int"
-
-
- Восстановить значения
+
+
+ Некорректное присваивание свойства: ожидается значение типа "float"
-
-
- Закрыть без сохранения
+
+
+ Некорректное присваивание свойства: ожидается значение типа "double"
-
-
- QDirModel
-
-
- Имя
+
+
+ Некорректное присваивание свойства: ожидается значение типа "color"
-
-
- Размер
+
+
+ Некорректное присваивание свойства: ожидается значение типа "date"
-
-
- Match OS X Finder
- Вид
+
+
+ Некорректное присваивание свойства: ожидается значение типа "time"
-
-
- All other platforms
- Тип
+
+
+ Некорректное присваивание свойства: ожидается значение типа "datetime"
-
-
- Дата изменения
+
+
+ Некорректное присваивание свойства: ожидается значение типа "point"
-
-
- QDockWidget
-
-
- Закрыть
+
+
+ Некорректное присваивание свойства: ожидается значение типа "size"
-
-
- Прикрепить
+
+
+ Некорректное присваивание свойства: ожидается значение типа "rect"
-
-
- Открепить
+
+
+ Некорректное присваивание свойства: ожидается значение булевого типа
-
-
- QDoubleSpinBox
-
-
- Больше
+
+
+ Некорректное присваивание свойства: ожидается значение типа "трёхмерный вектор"
-
-
- Меньше
+
+
+ Некорректное присваивание свойства: неподдерживаемый тип "%1"
-
-
- QErrorMessage
-
-
- Отладочное сообщение:
+
+
+ Элемент не является создаваемым.
-
-
- Предупреждение:
+
+
+ Элементы Component не могут содержать свойств кроме id
-
-
- Критическая ошибка:
+
+
+ Некорректная спецификация id компонента
-
-
- &Показывать это сообщение в дальнейшем
+
+
+
+ id не уникален
-
-
- &Закрыть
+
+
+ Некорректная спецификация тела компонента
-
-
- QFile
-
-
-
- Файл существует
+
+
+ Объекты Component не могут объявлять новые свойства.
-
-
- Последовательный файл не будет переименован с использованием поблочного копирования
+
+
+ Объекты Component не могут объявлять новые сигналы.
-
-
- Невозможно удалить исходный файл
+
+
+ Объекты Component не могут объявлять новые функции.
-
-
- Невозможно открыть %1 для ввода
+
+
+ Невозможно создать пустую спецификацю компонента
-
-
- Невозможно открыть для вывода
+
+
+ Неверно указано назначение сигнала
-
-
- Сбой записи блока
+
+
+ Невозможно назначить значение сигналу (сценарий должен быть запущен)
-
-
- Невозможно создать %1 для вывода
+
+
+ Пустое назначение сигнала
-
-
- QFileDialog
-
-
-
- Все файлы (*)
+
+
+ Пустое назначение свойства
-
-
- Каталоги
+
+
+ здесь - в данном контексте?
+ Прикреплённые свойства не могут быть использованы здесь
-
-
-
-
- &Открыть
+
+
+
+ Несуществующий прикреплённый объект
-
-
-
- &Сохранить
+
+
+
+ Некорректное назначение прикреплённого объекта
-
-
- Открыть
+
+
+ Невозможно назначить несуществующему свойству по умолчанию
-
-
- %1 уже существует.
-Хотите заменить его?
+
+
+
+ Невозможно назначить несуществующему свойству "%1"
-
-
- %1
-Файл не найден.
-Проверьте правильность указанного имени файла.
+
+
+ Некорректное использование пространства имён
-
-
- Мой компьютер
+
+
+ Не является именем привязанного свойства
-
-
- &Переименовать
+
+
+ Некорректное использование свойства id
-
-
- &Удалить
+
+
+
+ Свойству уже назначено значение
-
-
- Показать ск&рытые файлы
+
+
+
+ Некорректный доступ к сгруппированному свойству
-
-
-
- Назад
+
+
+ Невозможно присвоить значение непосредственно сгруппированному свойству
-
-
-
- Родительский каталог
+
+
+ Некорректное использование свойства
-
-
-
- Список
+
+
+ Ожидается назначение свойства
-
-
-
- Подробный вид
+
+
+ Ожидается одиночное назначение свойства
-
-
-
- Типы файлов:
+
+
+ Неожиданное назначение объекта
-
-
-
- Каталог:
+
+
+ Невозможно назначить объект списку
-
-
-
- %1
-Каталог не найден.
-Проверьте правильность указанного имени каталога.
+
+
+ Можно назначить только одну связь для списка
-
-
- '%1' защищён от записи.
-Всё-равно хотите удалить?
+
+
+ Невозможно назначить примитивы списку
-
-
- Вы действительно хотите удалить '%1'?
+
+
+ Невозможно назначить множественное значение свойству сценария
-
-
- Не удалось удалить каталог.
+
+
+ Некорректное присваивание свойства: ожидается сценарий
-
-
- Недавние документы
+
+
+ Невозможно назначить объектсвойству
-
-
- Все файлы (*.*)
+
+
+ "%1" не может воздействовать на "%2"
-
-
- Сохранить как
+
+
+ Дублирование свойства по умолчанию
-
-
- Диск
+
+
+ Дублирование названия свойства
-
-
- Файл
+
+ Названия свойств не могут начинаться с заглавной буквы
-
-
- Match Windows Explorer
- Папка с файлами
+
+
+ Дублирование названия сигнала
-
- All other platforms
- Папка
+
+ Названия сигналов не могут начинаться с заглавной буквы
-
-
- Mac OS X Finder
- Псевдоним
+
+
+ Дублирование название метода
-
- All other platforms
- Ярлык
+
+ Названия методов не могут начинаться с заглавной буквы
-
-
- Неизвестный
+
+
+ Значение свойства задано несколько раз
-
-
- Найти каталог
+
+
+ Некорректное вложенность свойств
-
-
- Показать
+
+
+ Невозможно переопределить свойство FINAL
-
-
-
- Вперёд
+
+
+ Некорректный тип свойства
-
-
- Новая папка
+
+
+ Некорректный пустой идентификатор
-
-
- &Новая папка
+
+
+ Идентификаторы не могут начинаться с заглавной буквы
-
-
-
- &Выбрать
+
+
+ Идентификаторы должны начинаться с буквы или подчёркивания
-
-
- Удалить
+
+
+ Идентификаторы должны содержать только буквы, цифры и подчёркивания
-
-
-
- &Имя файла:
+
+
+ Идентификатор неверно маскирует глобальное свойство JavaScript
-
-
-
- Перейти к:
+
+
+
+ Отсутствует размещение псевдонима свойства
-
-
-
- Создать папку
+
+
+
+ Некорректное размещение псевдонима
+
+
+
+
+ Некорректная ссылка на псевдоним. Ссылка на псевдоним должна быть указана, как <id> или <id>.<property>
+
+
+
+
+ Некорректная ссылка на псевдоним. Не удалось найти id "%1"
- QFileSystemModel
+ QDeclarativeComponent
-
-
- %1 байт
+
+
+ Пустой адрес URL
+
+
+ QDeclarativeCompositeTypeManager
-
-
- Некорректное имя файла
+
+
+
+ Ресурс "%1" недоступен
-
-
- <b>Имя "%1" не может быть использовано.</b><p>Попробуйте использовать имя меньшей длины и/или без символов пунктуации.
+
+
+ Пространство имён "%1" не может быть использовано в качестве типа
-
-
- Имя
+
+
+ %1 %2
-
-
- Размер
+
+
+ Тип "%1" недоступен
+
+
+ QDeclarativeConnections
-
-
- Match OS X Finder
- Вид
+
+
+
+ Невозможно назначить несуществующему свойству "%1"
-
-
- All other platforms
- Тип
+
+
+ Подключения: вложенные объекты недопустимы
-
-
- Дата изменения
+
+
+ Подключения: синтаксическая ошибка
-
-
- Мой компьютер
+
+
+ Подключения: ожидается сценарий
+
+
+ QDeclarativeEngine
-
-
- Компьютер
+
+
+ executeSql() вызван вне transaction()
-
-
-
- %1 Тб
+
+
+ Транзакция только для чтения
-
-
-
- %1 Гб
+
+
+ Несовпадение версий: ожидалась %1, найдена %2
-
-
-
- %1 Мб
+
+
+ Не удалось выполнить транзакцию SQL
-
-
-
- %1 Кб
+
+
+ транзакция: отсутствует обратный вызов
-
-
- %1 байт
+
+
+
+ Не совпадает версия базы данных SQL
- QFontDatabase
+ QDeclarativeFlipable
-
-
-
- Обычный
+
+
+ front - свойство для однократной записи
-
-
-
-
- Жирный
+
+
+ back - свойство для однократной записи
+
+
+ QDeclarativeImportDatabase
-
-
-
- Полужирный
+
+
+ невозможно прочитать определение "%2" модуля "%1"
-
-
-
-
- Чёрный
+
+
+ модуль не может быть загружен для подмодуля "%1": %2
-
-
- Средний
+
+
+ подмодуль "%1" модуля "%2" не найден
-
-
-
- Светлый
+
+
+
+ модуль "%1" версии %2.%3 не установлен
-
-
-
- Курсив
+
+
+ модуль "%1" не установлен
-
-
-
- Наклонный
+
+
+
+ "%1": каталог не существует
-
-
- Любая
+
+
+ каталог "%1" не содержит ни qmldir, ни namespace
-
-
- Латиница
+
+
+ - %1 - некорректное пространство имён
-
-
- Греческая
+
+
+ - вложенные пространства имён недопустимы
-
-
- Кириллица
+
+
+
+ локальный каталог
-
-
- Армянская
+
+
+ неоднозначно. Найдено в %1 и %2
-
-
- Иврит
+
+
+ неоднозначно. Найдено в %1 версий %2.%3 и %4.%5
-
-
- Арабская
+
+
+ обрабатывается рекурсивно
-
-
- Сирийская
+
+
+ не является типом
+
+
+ QDeclarativeKeyNavigationAttached
-
-
- Таана
+
+
+ KeyNavigation доступна только через прикреплённые свойства
+
+
+ QDeclarativeKeysAttached
-
-
- Деванагири
+
+
+ Keys доступны только через прикреплённые свойства
+
+
+ QDeclarativeListModel
-
-
- Бенгальская
+
+
+ remove: индекс %1 вне диапазона
-
-
- Гурмукхи
+
+
+ insert: значение не является объектом
-
-
- Гуджарати
+
+
+ insert: индекс %1 вне диапазона
-
-
- Ория
+
+
+ move: индекс вне диапазона
-
-
- Тамильская
+
+
+ append: значение не является объектом
-
-
- Телугу
+
+
+ set: значение не является объектом
-
-
- Каннада
+
+
+
+ set: индекс %1 вне диапазона
-
-
- Малаяльская
+
+
+
+ ListElement: не может содержать вложенные элементы
-
-
- Сингальская
+
+
+ ListElement: невозможно использовать зарезервированное свойство "id"
-
-
- Тайская
+
+
+ ListElement: невозможно использовать сценарий в качестве значения свойства
-
-
- Лаосская
+
+
+ ListModel: неопределённое свойство "%1"
+
+
+ QDeclarativeLoader
-
-
- Тибетская
+
+
+ Загрузчик не поддерживает загрузку невизуальных элементов.
+
+
+ QDeclarativeParentAnimation
-
-
- Майанмарская
+
+
+ Невозможно сохранить внешний вид при сложном преобразовании
-
-
- Грузинская
+
+
+
+ Невозможно сохранить внешний вид при неоднородном масштабе
-
-
- Кхмерская
+
+
+ Невозможно сохранить внешний вид при масштабе 0
+
+
+ QDeclarativeParentChange
-
-
- Китайская упрощённая
+
+
+ Невозможно сохранить внешний вид при сложном преобразовании
-
-
- Китайская традиционная
+
+
+
+ Невозможно сохранить внешний вид при неоднородном масштабе
-
-
- Японская
+
+
+ Невозможно сохранить внешний вид при масштабе 0
+
+
+ QDeclarativeParser
-
-
- Корейская
+
+
+
+
+ Неверная unicode esc-последовательность
-
-
- Вьетнамская
+
+
+ Недопустимый символ
-
-
- Символьная
+
+
+ Незакрытый текст в конце строки
-
-
- Огамическая
+
+
+ Неверная esc-последовательность
-
-
- Руническая
+
+
+ Незакрытый комментарий в конце строки
-
-
- Нко
+
+
+ Недопустимый синтаксис для экспоненциального числа
-
-
- QFontDialog
-
-
- &Шрифт
+
+
+ Идентификатор не может начинаться с цифры
-
-
- &Начертание
+
+
+ Незаконченный литерал регулярного выражения
-
-
- &Размер
+
+
+ Некорректный флаг "%0" в регулярном выражении
-
-
- Эффекты
+
+
+
+ Регулярное выражение содержит незавершённую экранированную последовательность
-
-
- Зачёр&кнутый
+
+
+ Регулярное выражение содержит незавершённый класс
-
-
- П&одчёркнутый
+
+
+
+ Синтаксическая ошибка
-
-
- Пример
+
+
+ Неожиданный символ "%1"
-
-
- &Система письма
+
+
+
+ Ожидается символ "%1"
-
-
-
- Выбор шрифта
+
+
+
+
+ Значение свойства установлено несколько раз
-
-
- QFtp
-
-
-
- Соединение не установлено
+
+
+ Ожидается название типа
-
-
-
- Узел %1 не найден
+
+
+ Некорректный ID спецификатора импорта
-
-
-
- В соединении с узлом %1 отказано
+
+
+ Зарезервированное имя "Qt" не может быть использовано в качестве спецификатора
-
-
- Время на соединение с узлом %1 истекло
+
+
+ Спецификаторы импорта сценария должны быть уникальными.
-
-
-
-
- Установлено соединение с узлом %1
+
+
+ Для импорта сценария требуется спецификатор
-
-
-
- Отказ в соединении для передачи данных
+
+
+ Импорт библиотеки требует версию
-
-
-
-
-
- Неизвестная ошибка
+
+
+ Ожидается тип параметра
-
-
-
- Не удалось соединиться с узлом:
-%1
+
+
+ Некорректный модификатор типа свойства
-
-
-
- Не удалось авторизоваться:
-%1
+
+
+ Неожиданный модификатор типа свойства
-
-
-
- Не удалось прочитать каталог:
-%1
+
+
+ Ожидается тип свойства
-
-
-
- Не удалось сменить каталог:
-%1
+
+
+ Readonly ещё не поддерживается
-
-
-
- Не удалось загрузить файл:
-%1
+
+
+ Определение JavaScript вне элемента Script
+
+
+ QDeclarativePauseAnimation
-
-
-
- Не удалось отгрузить файл:
-%1
+
+
+ Невозможно установить длительность < 0
+
+
+ QDeclarativePixmapCache
-
-
-
- Не удалось удалить файл:
-%1
+
+
+ Ошибка декодирования: %1: %2
-
-
-
- Не удалось создать каталог:
-%1
+
+
+ Не удалось получить изображение от поставщика: %1
-
-
-
- Не удалось удалить каталог:
-%1
+
+
+
+ Не удалось открыть: %1
-
-
-
-
- Соединение закрыто
+
+
+ Неизвестная ошибка загрузки %1
+
+
+ QDeclarativePropertyAnimation
-
-
- Узел %1 найден
+
+
+ Невозможно установить длительность < 0
+
+
+ QDeclarativePropertyChanges
-
-
- Соединение с %1 закрыто
+
+
+ PropertyChanges не поддерживают создание объектов, зависимых от состояния.
-
-
- Узел найден
+
+
+ Невозможно назначить несуществующему свойству "%1"
-
-
- Соединение с узлом установлено
+
+
+ Невозможно назначить свойству только для чтения "%1"
- QHostInfo
+ QDeclarativeTextInput
-
-
- Неизвестная ошибка
+
+
+
+ Не удалось загрузить делегат курсора
+
+
+
+
+ Не удалось инстанциировать делегат курсора
- QHostInfoAgent
+ QDeclarativeVME
-
-
-
-
-
- Узел не найден
+
+
+ Невозможно создать объект типа "%1"
-
-
-
-
-
- Неизвестный тип адреса
+
+
+ Невозможно установить значение "%1" свойству "%2"
-
-
-
-
- Неизвестная ошибка
+
+
+ Невозможно назначить объект типа %1 без метода по умолчанию
-
-
- Имя узла не задано
+
+
+ Невозможно подключить отсутствующий сигнал/слот %1 к %2
-
-
- Некорректное имя узла
+
+
+ Невозможно назначить объект к свойству сигнала %1
-
-
- QHttp
-
-
-
-
-
- Неизвестная ошибка
+
+
+ Невозможно назначить объект списку
-
-
-
- Запрос прерван
+
+
+ Невозможно назначить объект свойству интерфейса
-
-
-
- Не указан сервер для подключения
+
+
+ Не удалось создать вложенный объект
-
-
-
- Неверная длина содержимого
+
+
+ Невозможно установить свойства для %1, так как он нулевой
+
+
+ QDeclarativeVisualDataModel
-
-
-
- Сервер неожиданно разорвал соединение
+
+
+ Компинент делегата должен быть типа Item.
+
+
+ QDeclarativeXmlListModel
-
-
- Неизвестный метод авторизации
+
+
+
+ Qt было собрано без поддержки xmlpatterns
+
+
+ QDeclarativeXmlListModelRole
-
-
- Ошибка записи ответа на устройство
+
+
+ Запрос XmlRole не должен начинаться с '/'
+
+
+ QDeclarativeXmlRoleList
-
-
-
- Отказано в соединении
+
+
+ Запрос XmlListModel должен начинаться с '/' или "//"
-
-
-
-
-
- Узел %1 не найден
+
+
+ QDial
+
+
+
+ QDial
-
-
-
- HTTP-запрос не удался
+
+
+ SpeedoMeter
-
-
-
- Некорректный HTTP-заголовок ответа
+
+
+ SliderHandle
+
+
+ QDialog
-
-
-
-
-
- Некорректное HTTP-фрагментирование данных
+
+
+ Что это?
-
-
- Узел %1 найден
+
+
+ Готово
+
+
+
+ QDialogButtonBox
+
+
+
+
+
+ ОК
+
+
+
+
+ Сохранить
+
+
+
+
+ &Сохранить
-
- Установлено соединение с узлом %1
+
+ Открыть
-
- Соединение с узлом %1 закрыто
+
+ Отмена
-
-
- Узел найден
+
+
+ От&мена
-
- Соединение с узлом установлено
+
+ Закрыть
-
-
-
- Соединение закрыто
+
+
+ &Закрыть
-
-
- Требуется авторизация на прокси-сервере
+
+
+ Применить
+
+
+
+
+ Сбросить
+
+
+
+
+ Справка
-
- Требуется авторизация
+
+ Не сохранять
-
-
- В соединении отказано (или время ожидания истекло)
+
+
+ Отклонить
-
-
- Прокси-сервер требует авторизацию
+
+
+ &Да
-
- Узел требует авторизацию
+
+ Да для &всех
-
- Данные повреждены
+
+ &Нет
-
- Указан неизвестный протокол
+
+ Н&ет для всех
-
- Квитирование SSL не удалось
+
+ Сохранить все
-
-
- Запрошено соединение по протоколу HTTPS, но поддержка SSL не скомпилирована
+
+
+ Прервать
-
-
- QHttpSocketEngine
-
-
- Не получен HTTP-ответ от прокси-сервера
+
+
+ Повторить
-
-
- Ошибка разбора запроса авторизации от прокси-сервера
+
+
+ Пропустить
-
-
- Требуется авторизация
+
+
+ Восстановить значения
-
-
- Прокси-сервер запретил соединение
+
+
+ Закрыть без сохранения
-
-
- Ошибка обмена данными с прокси-сервером HTTP
+
+
+ &ОК
+
+
+ QDirModel
-
-
- Прокси-сервер не найден
+
+
+ Имя
-
-
- В соединении прокси-сервером отказано
+
+
+ Размер
-
-
- Время на соединение с прокси-сервером истекло
+
+
+ Match OS X Finder
+ Вид
-
- Соединение с прокси-сервером неожиданно закрыто
+
+ All other platforms
+ Тип
-
-
- QIBaseDriver
-
-
- Ошибка открытия базы данных
+
+
+ Дата изменения
+
+
+ QDockWidget
-
-
- Не удалось начать транзакцию
+
+
+ Закрыть
-
-
- Невозможно завершить транзакцию
+
+
+ Прикрепить
-
-
- Невозможно отозвать транзакцию
+
+
+ Открепить
- QIBaseResult
+ QDoubleSpinBox
-
-
- Невозможно создать BLOB
+
+
+ Больше
-
-
- Невозможно записать BLOB
+
+
+ Меньше
+
+
+ QErrorMessage
-
-
- Невозможно открыть BLOB
+
+
+ &Показывать это сообщение в дальнейшем
-
-
- Невозможно прочитать BLOB
+
+
+ &Закрыть
-
-
-
- Не удалось найти массив
+
+
+ Отладочное сообщение:
-
-
- Не удалось найти данные массива
+
+
+ Предупреждение:
-
-
- Не удалось найти информацию о запросе
+
+
+ Критическая ошибка:
+
+
+ QFile
-
-
- Не удалось начать транзакцию
+
+
+
+ Файл существует
-
-
- Невозможно завершить транзакцию
+
+
+ Последовательный файл не будет переименован с использованием поблочного копирования
-
-
- Не удалось получить ресурсы для создания выражения
+
+
+ Невозможно удалить исходный файл
-
-
- Не удалось подготовить выражение
+
+
+ Невозможно открыть %1 для ввода
-
-
-
- Не удалось описать входящее выражение
+
+
+ Невозможно открыть для вывода
-
-
- Не удалось описать выражение
+
+
+ Сбой записи блока
-
-
- Невозможно закрыть выражение
+
+
+ Невозможно создать %1 для вывода
+
+
+ QFileDialog
-
-
- Невозможно выполнить запрос
+
+
+
+ Все файлы (*)
-
-
- Не удалось получить следующий элемент
+
+
+
+ Назад
-
-
- Не удалось найти информацию о выражении
+
+
+
+ Список
-
-
- QIODevice
-
-
- Доступ запрещён
+
+
+
+ Подробный вид
-
-
- Слишком много открытых файлов
+
+
+
+ Файл
-
-
- Файл или каталог не существует
+
+
+ Match Windows Explorer
+ Папка с файлами
-
-
- Нет свободного места на устройстве
+
+
+ All other platforms
+ Папка
-
-
- Неизвестная ошибка
+
+
+ Mac OS X Finder
+ Псевдоним
-
-
- QInputContext
-
-
- Метод ввода X-сервера
+
+
+ All other platforms
+ Ярлык
-
-
- Метод ввода S60 FEP
+
+
+ Открыть
-
-
- Метод ввода X-сервера
+
+
+ Сохранить как
-
-
- Метод ввода Windows
+
+
+
+
+ &Открыть
-
-
- Метод ввода Mac OS X
+
+
+
+ &Сохранить
-
-
- Метод ввода S60 FEP
+
+
+
-
-
- QInputDialog
-
-
- Укажите значение:
+
+
+ Недавние документы
-
-
- QLibrary
-
-
- Не удалось выполнить mmap '%1': %2
+
+
+ &Переименовать
-
-
- Проверочная информация для модуля '%1' не совпадает
+
+
+ &Удалить
-
-
- Не удалось выполнить unmap '%1': %2
+
+
+ Показать ск&рытые файлы
-
-
- Модуль '%1' использует несоместимую библиотеку Qt. (%2.%3.%4) [%5]
+
+
+ Новая папка
-
-
- Модуль '%1' использует несоместимую библиотеку Qt. Ожидается ключ "%2", но получен ключ "%3"
+
+
+ Найти каталог
-
-
- Неизвестная ошибка
+
+
+ Каталоги
-
-
-
- Динамическая библиотека не найдена.
+
+
+ Все файлы (*.*)
-
-
- Файл '%1' - не является корректным модулем Qt.
+
+
+
+ Каталог:
-
-
- Модуль '%1' использует несоместимую библиотеку Qt. (Невозможно совместить релизные и отладочные библиотеки.)
+
+
+ %1 уже существует.
+Хотите заменить его?
-
-
-
- Невозможно загрузить библиотеку %1: %2
+
+
+ %1
+Файл не найден.
+Проверьте правильность указанного имени файла.
-
-
-
- Невозможно выгрузить библиотеку %1: %2
+
+
+ Мой компьютер
-
-
-
- Невозможно разрешить символ "%1" в %2: %3
+
+
+
+ Родительский каталог
-
-
- QLineEdit
-
-
- &Отменить действие
+
+
+
+ Типы файлов:
-
-
- &Повторить действие
+
+
+
+ %1
+Каталог не найден.
+Проверьте правильность указанного имени каталога.
-
-
- &Вырезать
+
+
+ Вы действительно хотите удалить "%1"?
+
+
+
+
+ Не удалось удалить каталог.
+
+
+
+
+ Диск
+
+
+
+
+ Неизвестный
+
+
+
+
+ Показать
+
+
+
+
+
+ Вперёд
+
+
+
+
+ &Новая папка
+
+
+
+
+
+ &Выбрать
+
+
+
+
+ Удалить
+
+
+
+
+
+ &Имя файла:
+
+
+
+
+
+ Перейти к:
+
+
+
+
+
+ Создать папку
+
+
+
+
+ Назад
+
+
+
+
+ Вперёд
+
+
+
+
+ Перейти в родительский каталог
+
+
+
+
+ Создать новую папку
+
+
+
+
+ Переключить в режим списка
+
+
+
+
+ Переключить в подробный режим
+
+
+
+ QFileSystemModel
+
+
+
+
+ %1 Тб
+
+
+
+
+
+ %1 Гб
+
+
+
+
+
+ %1 Мб
+
+
+
+
+
+ %1 Кб
+
+
+
+
+ %1 байт
+
+
+
+
+ Некорректное имя файла
+
+
+
+
+ <b>Имя "%1" не может быть использовано.</b><p>Попробуйте использовать имя меньшей длины и/или без символов пунктуации.
+
+
+
+
+ Имя
+
+
+
+
+ Размер
+
+
+
+
+ Match OS X Finder
+ Вид
+
+
+
+
+ All other platforms
+ Тип
+
+
+
+
+ Дата изменения
+
+
+
+
+ Мой компьютер
+
+
+
+
+ Компьютер
+
+
+
+
+ %1 байт
+
+
+
+ QFontDatabase
+
+
+
+
+ Обычный
+
+
+
+
+
+
+ Жирный
+
+
+
+
+
+ Полужирный
+
+
+
+
+
+
+ Чёрный
+
+
+
+
+ Средний
+
+
+
+
+
+ Светлый
+
+
+
+
+
+ Курсив
+
+
+
+
+
+ Наклонный
+
+
+
+
+ Любая
+
+
+
+
+ Латиница
+
+
+
+
+ Греческая
+
+
+
+
+ Кириллица
+
+
+
+
+ Армянская
+
+
+
+
+ Иврит
+
+
+
+
+ Арабская
+
+
+
+
+ Сирийская
+
+
+
+
+ Таана
+
+
+
+
+ Деванагири
+
+
+
+
+ Бенгальская
+
+
+
+
+ Гурмукхи
+
+
+
+
+ Гуджарати
+
+
+
+
+ Ория
+
+
+
+
+ Тамильская
+
+
+
+
+ Телугу
+
+
+
+
+ Каннада
+
+
+
+
+ Малайялам
+
+
+
+
+ Сингальская
+
+
+
+
+ Тайская
+
+
+
+
+ Лаосская
+
+
+
+
+ Тибетская
+
+
+
+
+ Мьянма
+
+
+
+
+ Грузинская
+
+
+
+
+ Кхмерская
+
+
+
+
+ Китайская упрощённая
+
+
+
+
+ Китайская традиционная
+
+
+
+
+ Японская
+
+
+
+
+ Корейская
+
+
+
+
+ Вьетнамская
+
+
+
+
+ Символьная
+
+
+
+
+ Огамическая
+
+
+
+
+ Руническая
+
+
+
+
+ Нко
+
+
+
+ QFontDialog
+
+
+
+ &Шрифт
+
+
+
+
+ &Начертание
+
+
+
+
+ &Размер
+
+
+
+
+ Эффекты
+
+
+
+
+ Зачёр&кнутый
+
+
+
+
+ П&одчёркнутый
+
+
+
+
+ Пример
+
+
+
+
+ Выбор шрифта
+
+
+
+
+ &Система письма
+
+
+
+ QFtp
+
+
+
+ Узел %1 найден
+
+
+
+
+ Узел найден
+
+
+
+
+
+
+ Установлено соединение с узлом %1
+
+
+
+
+ Соединение с узлом установлено
+
+
+
+
+ Соединение с %1 закрыто
+
+
+
+
+
+
+ Соединение закрыто
+
+
+
+
+
+ Узел %1 не найден
+
+
+
+
+
+ В соединении с узлом %1 отказано
+
+
+
+
+ Время на соединение с узлом %1 истекло
+
+
+
+
+
+
+
+ Неизвестная ошибка
+
+
+
+
+
+ Не удалось соединиться с узлом:
+%1
+
+
+
+
+
+ Не удалось авторизоваться:
+%1
+
+
+
+
+
+ Не удалось прочитать каталог:
+%1
+
+
+
+
+
+ Не удалось сменить каталог:
+%1
+
+
+
+
+
+ Не удалось загрузить файл:
+%1
+
+
+
+
+
+ Не удалось отгрузить файл:
+%1
+
+
+
+
+
+ Не удалось удалить файл:
+%1
+
+
+
+
+
+ Не удалось создать каталог:
+%1
+
+
+
+
+
+ Не удалось удалить каталог:
+%1
+
+
+
+
+
+ Соединение не установлено
+
+
+
+
+
+ Отказ в соединении для передачи данных
+
+
+
+ QHostInfo
+
+
+
+ Неизвестная ошибка
+
+
+
+
+ Имя узла не задано
+
+
+
+ QHostInfoAgent
+
+
+
+
+
+
+ Узел не найден
+
+
+
+
+
+
+
+ Неизвестный тип адреса
+
+
+
+
+
+
+ Неизвестная ошибка
+
+
+
+
+
+ Имя узла не задано
+
+
+
+
+
+ Некорректное имя узла
+
+
+
+ QHttp
+
+
+
+
+ Отказано в соединении
+
+
+
+
+
+
+ Узел %1 не найден
+
+
+
+
+
+ Неверная длина содержимого
+
+
+
+
+
+ HTTP-запрос не удался
+
+
+
+
+ Узел %1 найден
+
+
+
+
+ Узел найден
+
+
+
+
+ Установлено соединение с узлом %1
+
+
+
+
+ Соединение с узлом установлено
+
+
+
+
+ Соединение с узлом %1 закрыто
+
+
+
+
+
+ Соединение закрыто
+
+
+
+
+
+
+
+ Неизвестная ошибка
+
+
+
+
+
+ Запрос прерван
+
+
+
+
+
+ Не указан сервер для подключения
+
+
+
+
+
+ Сервер неожиданно разорвал соединение
+
+
+
+
+
+ Некорректный HTTP-заголовок ответа
+
+
+
+
+ Неизвестный метод авторизации
+
+
+
+
+
+
+
+ Некорректное HTTP-фрагментирование данных
+
+
+
+
+ Ошибка записи ответа на устройство
+
+
+
+
+ Требуется авторизация на прокси-сервере
+
+
+
+
+ Требуется авторизация
+
+
+
+
+ Прокси-сервер требует авторизацию
+
+
+
+
+ Узел требует авторизацию
+
+
+
+
+ Данные повреждены
+
+
+
+
+ Квитирование SSL не удалось
+
+
+
+
+ Указан неизвестный протокол
+
+
+
+
+ В соединении отказано (или время ожидания истекло)
+
+
+
+
+ Запрошено соединение по протоколу HTTPS, но поддержка SSL не скомпилирована
+
+
+
+ QHttpSocketEngine
+
+
+
+ Не получен HTTP-ответ от прокси-сервера
+
+
+
+
+ Ошибка разбора запроса авторизации от прокси-сервера
+
+
+
+
+ Требуется авторизация
+
+
+
+
+ Прокси-сервер запретил соединение
+
+
+
+
+ Ошибка обмена данными с прокси-сервером HTTP
+
+
+
+
+ Прокси-сервер не найден
+
+
+
+
+ В соединении прокси-сервером отказано
+
+
+
+
+ Время на соединение с прокси-сервером истекло
+
+
+
+
+ Соединение с прокси-сервером неожиданно закрыто
+
+
+
+ QIBaseDriver
+
+
+
+ Ошибка открытия базы данных
+
+
+
+
+ Не удалось начать транзакцию
+
+
+
+
+ Невозможно завершить транзакцию
+
+
+
+
+ Невозможно отозвать транзакцию
+
+
+
+ QIBaseResult
+
+
+
+ Невозможно создать BLOB
+
+
+
+
+ Невозможно записать BLOB
+
+
+
+
+ Невозможно открыть BLOB
+
+
+
+
+ Невозможно прочитать BLOB
+
+
+
+
+
+ Не удалось найти массив
+
+
+
+
+ Не удалось найти данные массива
+
+
+
+
+ Не удалось найти информацию о запросе
+
+
+
+
+ Не удалось начать транзакцию
+
+
+
+
+ Невозможно завершить транзакцию
+
+
+
+
+ Не удалось получить ресурсы для создания выражения
+
+
+
+
+ Не удалось подготовить выражение
+
+
+
+
+
+ Не удалось описать входящее выражение
+
+
+
+
+ Не удалось описать выражение
+
+
+
+
+ Невозможно закрыть выражение
+
+
+
+
+ Невозможно выполнить запрос
+
+
+
+
+ Не удалось получить следующий элемент
+
+
+
+
+ Не удалось найти информацию о выражении
+
+
+
+ QIODevice
+
+
+
+ Доступ запрещён
+
+
+
+
+ Слишком много открытых файлов
+
+
+
+
+ Файл или каталог не существует
+
+
+
+
+ Нет свободного места на устройстве
+
+
+
+
+ Неизвестная ошибка
+
+
+
+ QInputContext
+
+
+
+ Метод ввода X-сервера
+
+
+
+
+ Метод ввода S60 FEP
+
+
+
+
+ Метод ввода X-сервера
+
+
+
+
+ Метод ввода Windows
+
+
+
+
+ Метод ввода Mac OS X
+
+
+
+
+ Метод ввода S60 FEP
+
+
+
+ QInputDialog
+
+
+
+ Укажите значение:
+
+
+
+ QLibrary
+
+
+
+ Не удалось выполнить mmap "%1": %2
+
+
+
+
+ Проверочная информация для модуля "%1" не совпадает
+
+
+
+
+ Не удалось выполнить unmap "%1": %2
+
+
+
+
+ Модуль "%1" использует несоместимую библиотеку Qt. (%2.%3.%4) [%5]
+
+
+
+
+ Модуль "%1" использует несоместимую библиотеку Qt. Ожидается ключ "%2", но получен ключ "%3"
+
+
+
+
+ Неизвестная ошибка
+
+
+
+
+
+
+ Динамическая библиотека не найдена.
+
+
+
+
+ Файл "%1" - не является корректным модулем Qt.
+
+
+
+
+ Модуль "%1" использует несоместимую библиотеку Qt. (Невозможно совместить релизные и отладочные библиотеки.)
+
+
+
+
+
+ Невозможно загрузить библиотеку %1: %2
+
+
+
+
+
+ Невозможно выгрузить библиотеку %1: %2
+
+
+
+
+
+ Невозможно разрешить символ "%1" в %2: %3
+
+
+
+ QLineEdit
+
+
+
+ Выделить всё
+
+
+
+
+ &Отменить действие
+
+
+
+
+ &Повторить действие
+
+
+
+
+ &Вырезать
@@ -3124,11 +4296,6 @@ Do you want to delete it anyway?
Удалить
-
-
-
- Выделить всё
- QLocalServer
@@ -3171,7 +4338,7 @@ Do you want to delete it anyway?
-
+ %1: Некорректное имя
@@ -3228,7 +4395,7 @@ Do you want to delete it anyway?
QMYSQLDriver
-
+ Невозможно открыть базу данных '
@@ -3380,12 +4547,7 @@ Do you want to delete it anyway?
&Закрыть
-
-
- - [%1]
-
-
-
+ Распахнуть
@@ -3414,6 +4576,11 @@ Do you want to delete it anyway?
Меню
+
+
+
+ - [%1]
+ QMenu
@@ -3440,7 +4607,7 @@ Do you want to delete it anyway?
QMenuBar
-
+ Действия
@@ -3448,12 +4615,7 @@ Do you want to delete it anyway?
QMessageBox
-
-
- Справка
-
-
-
+
@@ -3461,30 +4623,35 @@ Do you want to delete it anyway?
Закрыть
-
+
+
+ <h3>О Qt</h3><p>Данная программа использует Qt версии %1.</p>
+
+
+
+
+ <p>Qt - это инструментарий для разработки кроссплатформенных приложений на C++.</p><p>Qt предоставляет совместимость на уровне исходных текстов между MS Windows, Mac OS X, Linux и всеми популярными коммерческими вариантами Unix. Также Qt доступна для встраиваемых устройств в виде Qt для Embedded Linux и Qt для Windows CE.</p><p>Qt доступна под тремя различными лицензиями, разработанными для удовлетворения различных требований.</p><p>Qt под нашей коммерческой лицензией предназначена для развития проприетарного/коммерческого программного обеспечения, когда Вы не желаете предоставлять исходные тексты третьим сторонам, или в случае невозможности принятия условий лицензий GNU LGPL версии 2.1 или GNU GPL версии 3.0.</p><p>Qt под лицензией GNU LGPL версии 2.1 предназначена для разработки программного обеспечения с открытыми исходными текстами или коммерческого программного обеспечения при соблюдении условий лицензии GNU LGPL версии 2.1.</p><p>Qt под лицензией GNU General Public License версии 3.0 предназначена для разработки программных приложений в тех случаях, когда Вы хотели бы использовать такие приложения в сочетании с программным обеспечением на условиях лицензии GNU GPL с версии 3.0 или если Вы готовы соблюдать условия лицензии GNU GPL версии 3.0.</p><p>Обратитесь к <a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> для обзора лицензий Qt.</p><p>Copyright (C) 2010 Корпорация Nokia и/или её дочерние подразделения.</p><p>Qt - продукт компании Nokia. Обратитесь к <a href="http://qt.nokia.com/">qt.nokia.com</a> для получения дополнительной информации.</p>
+
+
+ О Qt
-
+
+
+ Справка
+
+
+ Показать подробности...
-
+ Скрыть подробности...
-
-
-
- <h3>О Qt</h3><p>Данная программа использует Qt версии %1.</p>
-
-
-
-
- <p>Qt - это инструментарий для разработки кроссплатформенных приложений на C++.</p><p>Qt предоставляет совместимость на уровне исходных текстов между MS Windows, Mac OS X, Linux и всеми популярными коммерческими вариантами Unix. Также Qt доступна для встраиваемых устройств в виде Qt для Embedded Linux и Qt для Windows CE.</p><p>Qt доступна под тремя различными лицензиями, разработанными для удовлетворения различных требований.</p><p>Qt под нашей коммерческой лицензией предназначена для развития проприетарного/коммерческого программного обеспечения, когда Вы не желаете предоставлять исходные тексты третьим сторонам, или в случае невозможности принятия условий лицензий GNU LGPL версии 2.1 или GNU GPL версии 3.0.</p><p>Qt под лицензией GNU LGPL версии 2.1 предназначена для разработки программного обеспечения с открытыми исходными текстами или коммерческого программного обеспечения при соблюдении условий лицензии GNU LGPL версии 2.1.</p><p>Qt под лицензией GNU General Public License версии 3.0 предназначена для разработки программных приложений в тех случаях, когда Вы хотели бы использовать такие приложения в сочетании с программным обеспечением на условиях лицензии GNU GPL с версии 3.0 или если Вы готовы соблюдать условия лицензии GNU GPL версии 3.0.</p><p>Обратитесь к <a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> для обзора лицензий Qt.</p><p>Copyright (C) 2010 Корпорация Nokia и/или её дочерние подразделения.</p><p>Qt - продукт компании Nokia. Обратитесь к <a href="http://qt.nokia.com/">qt.nokia.com</a> для получения дополнительной информации.</p>
- QMultiInputContext
@@ -3499,19 +4666,18 @@ Do you want to delete it anyway?
- Переключатель режима множественного ввода
+ Переключатель режима множественного ввода
- текстовых виджетов <-?-> текстовых редакторов
- Переключатель режима множественного ввода, используемый в контекстном меню текстовых виджетов
+ Переключатель режима множественного ввода, используемый в контекстном меню текстовых редакторовQNativeSocketEngine
-
+ Удалённый узел закрыл соединение
@@ -3650,12 +4816,35 @@ Do you want to delete it anyway?
+ QNetworkAccessDataBackend
+
+
+
+ Операция не поддерживается для %1
+
+
+
+
+ Некорректный URI: %1
+
+
+QNetworkAccessDebugPipeBackendОшибка записи в %1: %2
+
+
+
+ Ошика сокета для %1: %2
+
+
+
+
+ Удалённый узел неожиданно прервал соединение для %1
+ QNetworkAccessFileBackend
@@ -3719,48 +4908,123 @@ Do you want to delete it anyway?
QNetworkAccessHttpBackend
-
+ Подходящий прокси-сервер не найден
+ QNetworkAccessManager
+
+
+
+ Доступ в сеть отключён.
+
+
+QNetworkReply
-
+ Ошибка загрузки %1 - ответ сервера: %2
-
+ Неизвестный протокол "%1"
+
+
+
+ Ошибка сетевой сессии.
+
+
+
+
+ Временная ошибка сети.
+ QNetworkReplyImpl
-
+ Операция отменена
- QOCIDriver
+ QNetworkSession
-
-
- Невозможно авторизоваться
+
+
+ Некорректная конфигурация.
+
+
+
+ QNetworkSessionPrivateImpl
+
+
+
+ или перемещения?
+ Ошибка роуминга
+
+
+
+
+ Сессия прервана пользователем или системой
+
+
+
+
+ Неопределённая ошибка
+
+
+
+
+
+ Неизвестная ошибка сессии.
+
+
+
+
+
+ Сессия была прервана пользователем или системой.
+
+
+
+
+
+ Требуемая операция не поддерживается системой.
+
+
+
+
+
+ Невозможно использовать указанную конфигурацию.
-
+
+
+
+ Роуминг прерван или невозможен.
+
+
+
+ QOCIDriver
+
+ QOCIDriverНевозможно инициализировать
-
+
+
+ Невозможно авторизоваться
+
+
+ Невозможно начать транзакцию
@@ -3823,12 +5087,12 @@ Do you want to delete it anyway?
QODBCDriver
-
+ Невозможно соединиться
-
+ Невозможно отключить автозавершение транзакций
@@ -3848,7 +5112,7 @@ Do you want to delete it anyway?
Невозможно включить автозавершение транзакций
-
+ Невозможно соединиться - Драйвер не поддерживает требуемый функционал
@@ -3856,19 +5120,19 @@ Do you want to delete it anyway?
QODBCResult
-
+
- QODBCResult::reset: Невозможно установить 'SQL_CURSOR_STATIC' атрибутом выражение. Проверьте настройки драйвера ODBC
+ QODBCResult::reset: Невозможно установить "SQL_CURSOR_STATIC" атрибутом выражение. Проверьте настройки драйвера ODBC
-
+ Невозможно выполнить выражение
-
+ Невозможно получить следующую строку
@@ -3878,19 +5142,19 @@ Do you want to delete it anyway?
Невозможно подготовить выражение
-
+ Невозможно привязать значение
-
-
+
+ Невозможно получить последнюю строку
-
+ Невозможно получить данные
@@ -3908,41 +5172,27 @@ Do you want to delete it anyway?
QObject
-
-
- Некорректное имя узла
-
-
-
-
- Операция не поддерживается для %1
-
-
-
-
- Некорректный URI: %1
-
-
-
-
- Ошика сокета для %1: %2
+
+
+ "%1" повторяет имя предыдущей роли и не будет использовано.
-
-
- Удалённый узел неожиданно прервал соединение для %1
+
+
+
+ Некорректный запрос: "%1"
-
-
-
- Имя узла не задано
+
+
+
+ Звуковой сервер PulseAudioQPPDOptionsModel
-
+ Имя
@@ -4134,7 +5384,22 @@ Do you want to delete it anyway?
неизвестно
-
+
+
+ Закрыть
+
+
+
+
+ Все страницы
+
+
+
+
+ Диапазон страниц
+
+
+ A0 (841 x 1189 мм)
@@ -4154,12 +5419,7 @@ Do you want to delete it anyway?
A3 (297 x 420 мм)
-
-
- A4 (210 x 297 мм, 8.26 x 11.7 дюймов)
-
-
-
+ A5 (148 x 210 мм)
@@ -4209,12 +5469,7 @@ Do you want to delete it anyway?
B4 (250 x 353 мм)
-
-
- B5 (176 x 250 мм, 6.93 x 9.84 дюймов)
-
-
-
+ B6 (125 x 176 мм)
@@ -4249,12 +5504,7 @@ Do you want to delete it anyway?
DLE (110 x 220 мм)
-
-
- Executive (191 x 254 мм, 7.5 x 10 дюймов)
-
-
-
+ Folio (210 x 330 мм)
@@ -4264,54 +5514,64 @@ Do you want to delete it anyway?
Ledger (432 x 279 мм)
-
-
- Legal (216 x 356 мм, 8.5 x 14 дюймов)
+
+
+ Tabloid (279 x 432 мм)
-
- Letter (216 x 279 мм, 8.5 x 11 дюймов)
+
+ Конверт US #10 (105x241 мм)
-
-
- Tabloid (279 x 432 мм)
+
+
+ Текущая страница
+
+
+
+
+ A4 (210 x 297 мм, 8.26 x 11.7 дюймов)
+
+
+
+
+ B5 (176 x 250 мм, 6.93 x 9.84 дюймов)
+
+
+
+
+ Executive (191 x 254 мм, 7.5 x 10 дюймов)
+
+
+
+
+ Legal (216 x 356 мм, 8.5 x 14 дюймов)
-
- Конверт US #10 (105x241 мм)
+
+ Letter (216 x 279 мм, 8.5 x 11 дюймов)
-
-
- Закрыть
+
+
+ Выделенный фрагмент
-
+ Печать
-
+ Печать в файл ...
-
-
- Печатать диапазон
-
-
-
-
- Печатать все
-
-
-
+ %1 недоступен для записи.
@@ -4325,7 +5585,7 @@ Do you want to overwrite it?
Хотите заменить его?
-
+ Файл существует
@@ -4335,11 +5595,6 @@ Do you want to overwrite it?
<qt>Хотите заменить?</qt>
-
-
- Выделенный фрагмент
-
-
@@ -4347,6 +5602,11 @@ Please choose a different file name.
Выберите другое имя файла.
+
+
+ Значение "с" не может быть больше значения "по".
+
+ A0
@@ -4502,23 +5762,18 @@ Please choose a different file name.
Пользовательский
-
+ &Параметры >>
-
-
- &Печать
-
-
-
+ &Параметры <<
-
+ Печать в файл (PDF)
@@ -4538,26 +5793,20 @@ Please choose a different file name.
Запись %1 файла
-
-
- Значение 'от' не может быть больше значения 'до'.
+
+
+ &ПечатьQPrintPreviewDialog
-
-
-
- Параметры страницы
-
- %1%
-
+ Просмотр печати
@@ -4651,6 +5900,12 @@ Please choose a different file name.
Экспорт в Postscript
+
+
+
+
+ Параметры страницы
+ QPrintPropertiesWidget
@@ -4695,12 +5950,12 @@ Please choose a different file name.
- Страницы от
+ Страницы с
- до
+ по
@@ -4767,6 +6022,11 @@ Please choose a different file name.
По короткой стороне
+
+
+
+ Текущая страница
+ QPrintWidget
@@ -4849,7 +6109,7 @@ Please choose a different file name.
Время на операцию с процессом истекло
-
+
@@ -5000,7 +6260,7 @@ Please choose a different file name.
QSQLiteDriver
-
+ Ошибка открытия базы данных
@@ -5028,8 +6288,8 @@ Please choose a different file name.
QSQLiteResult
-
-
+
+ Невозможно получить строку
@@ -5055,7 +6315,7 @@ Please choose a different file name.
Количество параметров не совпадает
-
+ Отсутствует запрос
@@ -5070,7 +6330,7 @@ Please choose a different file name.
- Расположение
+ Размещение
@@ -5286,7 +6546,7 @@ Please choose a different file name.
QScriptDebuggerLocalsModel
-
+ Название
@@ -5486,12 +6746,7 @@ Please choose a different file name.
QSharedMemory
-
-
- %1: невозможно установить ключ на блокировку
-
-
-
+ %1: размер меньше нуля
@@ -5545,30 +6800,30 @@ Please choose a different file name.
%1: пустой ключ
-
-
-
- %1: не существует
-
-
-
-
- %1: специфический ключ UNIX не существует
-
-
-
+ %1: ошибка ftok
-
+ %1: невозможно создать ключ
-
+
+
+
+ %1: не существует
+
+
+
+
+ %1: специфический ключ UNIX не существует
+
+
+ %1: системой наложены ограничения на размер
@@ -5579,7 +6834,7 @@ Please choose a different file name.
-
+ %1: некорректный размер
@@ -5594,12 +6849,18 @@ Please choose a different file name.
%1: не удалось запросить размер
+
+
+
+ %1: невозможно установить ключ блокировки
+ QShortcut
-
+
+ This and all following "incomprehensible" strings in QShortcut context are key names. Please use the localized names appearing on actual keyboards or whatever is commonly used.Пробел
@@ -5775,12 +7036,12 @@ Please choose a different file name.
- Высокие частоты выше
+ ВЧ выше
- Высокие частоты ниже
+ ВЧ ниже
@@ -5920,32 +7181,32 @@ Please choose a different file name.
- Яркость монитора выше
+ Увеличить яркость монитора
- Яркость монитора ниже
+ Уменьшить яркость монитора
- Вкл/выкл подсветку клавиатуры
+ Вкл./Откл. подсветку клавиатуры
- Подсветка клавиатуры ярче
+ Увеличить яркость подсветки клавиатуры
- Подсветка клавиатуры бледнее
+ Уменьшить яркость подсветки клавиатуры
- Выключение питания
+ Отключение питания
@@ -5955,12 +7216,12 @@ Please choose a different file name.
- Извлечение
+ Извлечь
- Хранитель экрана
+ Экранная заставка
@@ -5970,13 +7231,12 @@ Please choose a different file name.
- Засыпание
+ Спящий режим
- лампочка?
-
+ Лампочка
@@ -6016,7 +7276,7 @@ Please choose a different file name.
- Перемотка
+ Перемотка аудио назад
@@ -6419,7 +7679,157 @@ Please choose a different file name.
Системный запрос
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Выбрать
@@ -6470,7 +7880,7 @@ Please choose a different file name.
-
+ Ctrl
@@ -6504,7 +7914,7 @@ Please choose a different file name.
F%1
-
+ Домашняя страница
@@ -6638,7 +8048,7 @@ Please choose a different file name.
Отмена
-
+ Выход
@@ -6716,7 +8126,7 @@ Please choose a different file name.
QSslSocket
-
+ Невозможно записать данные: %1
@@ -6736,17 +8146,17 @@ Please choose a different file name.
Ошибка квитирования SSL: %1
-
+ Ошибка создания контекста SSL: (%1)
- Неправильный или пустой список шифров (%1)
+ Некорректный или пустой список шифров (%1)
-
+ Закрытый ключ не соответствует открытому ключу, %1
@@ -6761,7 +8171,7 @@ Please choose a different file name.
Ошибка создания сессии SSL: %1
-
+ Невозможно предоставить сертификат без ключа, %1
@@ -6771,7 +8181,7 @@ Please choose a different file name.
Ошибка загрузки локального сертификата, %1
-
+ Ошибка загрузки закрытого ключа, %1
@@ -6783,8 +8193,7 @@ Please choose a different file name.
- издателя ?
- Не удалось найти сертификат запрашивающей стороны
+ Не удалось найти сертификат издателя
@@ -6814,27 +8223,27 @@ Please choose a different file name.
- Поле сертификата notBefore содержит некорректное время
+ Поле notBefore сертификата содержит некорректное время
- Поле сертификата notAfter содержит некорректное время
+ Поле notAfter сертификата содержит некорректное время
- Самоподписанный сертификат не является заверенным
+ Сертификат самоподписанный и не является заверенным
- Корневой сертификат цепочки сертификатов самоподписанный и не является заверенным
+ Корневой сертификат цепочки сертификатов самоподписанный и не является заверенным
-
+ Не удалось найти сертификат издателя локального сертификата
@@ -6844,47 +8253,47 @@ Please choose a different file name.
- Один из CA сертификатов некорректный
+ Один из сертификатов центра сертификации некорректен
- Путь параметра basicConstraints слишком длинный
+ Превышено значение параметра длины пути поля basicConstraints сертификата
- Представленный сертификат не предназначен для данного использования
+ Представленный сертификат непригоден для данной цели
- Корневой CA сертификат не является заверенным для данного использования
+ Корневой сертификат центра сертификации не является заверенным для данной цели
- Корневой CA сертификат отмечен как 'отказывать' для данного использования
+ Корневой сертификат центра сертификации отмечен на отклонение для данной цели
-
+ Текущий сертификат издателя был отклонён, так как название темы не совпадает с названием издателя сертификата
-
+ Текущий сертификат издателя был отклонён, так как название издателя и серийный номер не совпадают с идентификатором ключа сертификата
- Узел не предоставил сертификат
+ Сертификат не был предоставлен
- Название узла не совпадает ни с одним из допустимых узлов данного сертификата
+ Название узла не совпадает с допустимыми названиями узлов сертификата
@@ -6897,17 +8306,17 @@ Please choose a different file name.
-
+ Отсутствует исходное состояние в составном состоянии "%1"
-
+ Отсутствует состояние по умолчанию в историческом состоянии "%1"
-
+ Нет общего предка у источника и цели перехода из состояния "%1"
@@ -6918,7 +8327,12 @@ Please choose a different file name.
QSystemSemaphore
-
+
+
+ %1: не существует
+
+
+ %1: недостаточно ресурсов
@@ -6935,12 +8349,7 @@ Please choose a different file name.
%1: уже существует
-
-
- %1: не существует
-
-
-
+ %1: неизвестная ошибка %2
@@ -6975,7 +8384,7 @@ Please choose a different file name.
QTcpServer
-
+ Операция с сокетом не поддерживается
@@ -6983,7 +8392,7 @@ Please choose a different file name.
QTextControl
-
+ &Отменить действие
@@ -7041,7 +8450,7 @@ Please choose a different file name.
QUdpSocket
-
+ Данная платформа не поддерживает IPv6
@@ -7085,52 +8494,52 @@ Please choose a different file name.
- LRM Индикатор написания слева направо
+ LRM Признак написания слева направо
- RLM Индикатор написания справа налево
+ RLM Признак написания справа налево
- ZWJ Объединяющий символ нулевой ширины
+ ZWJ Объединяющий символ нулевой ширины
- ZWNJ Разделитель нулевой ширины
+ ZWNJ Необъединяющий символ нулевой ширины
- ZWSP Пробел нулевой ширины
+ ZWSP Пробел нулевой ширины
- LRE Индикатор написания слева направо внутри текста, написанного справа налево
+ LRE Начало встраивания написания слева направо
- RLE Индикатор написания справа налево внутри текста, написанного слева направо
+ LRE Начало встраивания написания справа налево
- LRO Перекрывающий индикатор написания слева направо
+ LRO Начало замены написания слева направо
- RLO Перекрывающий индикатор написания справа налево
+ RLO Начало замены написания справа налево
- PDF Индикатор конца текста с другим направлением
+ PDF Признак окончания написания с другим направлением
@@ -7141,7 +8550,7 @@ Please choose a different file name.
QWebFrame
-
+ Запрос отменён
@@ -7174,854 +8583,865 @@ Please choose a different file name.
QWebPage
-
+
+
+ Web-инспектор - %2
+
+
+
+
+ Достигнут предел переадресации
+
+
+ Некорректный HTTP-запрос
-
-
- default label for Submit buttons in forms on web pages
- Отправить
+
+
+ Прокрутить сюда
-
-
- Submit (input element) alt text for <input> elements with no alt, title, or value
- Отправить
+
+
+ К левой границе
-
-
- default label for Reset buttons in forms on web pages
- Сбросить
+
+
+ Вверх
-
-
- text that appears at the start of nearly-obsolete web pages in the form of a 'searchable index'
- Индекс поиска. Введите ключевые слова для поиска:
+
+
+ К правой границе
-
-
- title for file button used in HTML forms
- Обзор...
+
+
+ Вниз
-
-
- text to display in file button used in HTML forms when no file is selected
- Файл не указан
+
+
+ На страницу влево
-
-
- Open in New Window context menu item
- Открыть в новом окне
+
+
+ На страницу вверх
+
+
+
+
+ На страницу вправо
-
-
- Download Linked File context menu item
- Сохранить по ссылке как...
+
+
+ На страницу вниз
-
-
- Copy Link context menu item
- Копировать адрес ссылки
+
+
+ Прокрутить влево
-
-
- Open Image in New Window context menu item
- Открыть изображение
+
+
+ Прокрутить вверх
-
-
- Download Image context menu item
- Сохранить изображение
+
+
+ Прокрутить вправо
-
-
- Copy Link context menu item
- Копировать изображение в буффер обмена
+
+
+ Прокрутить вниз
-
-
- Open Frame in New Window context menu item
- Открыть фрейм
+
+
+ JavaScript: Предупреждение - %1
-
-
- Copy context menu item
- Копировать
+
+
+ JavaScript: Подтверждение - %1
-
-
- Back context menu item
- Назад
+
+
+ JavaScript: Запрос - %1
-
-
- Forward context menu item
- Вперёд
+
+
+ JavaScript: Проблема - %1
-
-
- Stop context menu item
- Остановить
+
+
+ Сбой выполнения сценария на данной странице. Желаете остановить выполение сценария?
-
-
- Reload context menu item
- Обновить
+
+
+ Переместить указатель к следующему символу
-
-
- Cut context menu item
- Вырезать
+
+
+ Переместить указатель к предыдущему символу
-
-
- Paste context menu item
- Вставить
+
+
+ Переместить указатель к следующему слову
-
-
- No Guesses Found context menu item
- Неверное слово
+
+
+ Переместить указатель к предыдущему слову
-
-
- Ignore Spelling context menu item
- ?Пропускать
- Пропустить
+
+
+ Переместить указатель на следующую строку
-
-
- Learn Spelling context menu item
- Добавить в словарь
+
+
+ Переместить указатель на предыдущую строку
-
-
- Search The Web context menu item
- Искать в Интернет
+
+
+ Переместить указатель в начало строки
-
-
- Look Up in Dictionary context menu item
- Искать в словаре
+
+
+ Переместить указатель в конец строки
-
-
- Open Link context menu item
- Открыть ссылку
+
+
+ Переместить указатель в начало блока
-
-
- Ignore Grammar context menu item
- ?Пропускать
- Пропустить
+
+
+ Переместить указатель в конец блока
-
-
- Spelling and Grammar context sub-menu item
- Орфография
+
+
+ Переместить указатель в начало документа
-
-
- menu item title
- Показать панель проверки правописания
+
+
+ Переместить указатель в конец документа
-
-
- menu item title
- Скрыть панель проверки правописания
+
+
+ Выделить всё
-
-
- Check spelling context menu item
- Проверка орфографии
+
+
+ Выделить до следующего символа
-
-
- Check spelling while typing context menu item
- Проверять орфографию при наборе текста
+
+
+ Выделить до предыдущего символа
-
-
- Check grammar with spelling context menu item
- Проверять грамматику с орфографией
+
+
+ Выделить до следующего слова
-
-
- Font context sub-menu item
- Шрифты
+
+
+ Выделить до предыдущего слова
-
-
- Bold context menu item
- Жирный
+
+
+ Выделить до следующей строки
-
-
- Italic context menu item
- Курсив
+
+
+ Выделить до предыдущей строки
-
-
- Underline context menu item
- Подчёркнутый
+
+
+ Выделить до начала строки
-
-
- Outline context menu item
- Перечёркнутый
+
+
+ Выделить до конца строки
-
-
- Writing direction context sub-menu item
- Направление письма
+
+
+ Выделить до начала блока
-
-
- Text direction context sub-menu item
- Направление текста
+
+
+ Выделить до конца блока
-
-
- Default writing direction context menu item
- По умолчанию
+
+
+ Выделить до начала документа
-
-
- Left to Right context menu item
- Слева направо
+
+
+ Выделить до конца документа
-
-
- Right to Left context menu item
- Справа налево
+
+
+ Удалить до начала слова
-
-
- Media controller status message when the media is loading
- Загрузка...
+
+
+ Удалить до конца слова
-
-
- Media controller status message when watching a live broadcast
- Потоковое вещание
+
+
+ Вставить новый параграф
-
-
- Media controller element
- Аудио-элемент
+
+
+ Вставить новую строку
-
-
- Media controller element
- Видео-элемент
+
+
+ Вставить, сохранив стиль
-
-
- Media controller element
- Кнопка "приглушить"
+
+
+ Удалить форматирование
-
-
- Media controller element
-
+
+
+ Зачёркнутый
-
-
- Media controller element
- Кнопка "воспроизведение"
+
+
+ Подстрочный
-
-
- Media controller element
- Кнопка "пауза"
+
+
+ Надстрочный
-
-
- Media controller element
-
+
+
+ Вставить маркированный список
-
-
- Media controller element
-
+
+
+ Вставить нумерованный список
-
-
- Media controller element
- Кнопка "перемотать"
+
+
+ Увеличить отступ
-
-
- Media controller element
-
+
+
+ Уменьшить отступ
-
-
- Media controller element
- Прошло времени
+
+
+ По центру
-
-
- Media controller element
- Осталось времени
+
+
+ По ширине
-
-
- Media controller element
- Отображение состояния
+
+
+ По левому краю
-
-
- Media controller element
- Кнопка "полноэкранный режим"
+
+
+ По правому краю
-
-
- Media controller element
- Кнопка "перемотка вперёд"
+
+
+ default label for Submit buttons in forms on web pages
+ Отправить
-
-
- Media controller element
- Кнопка "перемотка назад"
+
+
+ Submit (input element) alt text for <input> elements with no alt, title, or value
+ Отправить
-
-
- Media controller element
- Элементы управления воспроизведением звука и отображения состояния
+
+
+ default label for Reset buttons in forms on web pages
+ Сбросить
-
-
- Media controller element
- Элементы управления воспроизведением видео и отображения состояния
+
+
+ text that appears at the start of nearly-obsolete web pages in the form of a 'searchable index'
+ Индекс поиска. Введите ключевые слова для поиска:
-
-
- Media controller element
- Выключить звуковые дорожки
+
+
+ title for file button used in HTML forms
+ Обзор...
-
-
- Media controller element
- Включить звуковые дорожки
+
+
+ text to display in file button used in HTML forms when no file is selected
+ Файл не указан
-
-
- Media controller element
- Начать воспроизведение
+
+
+ Open in New Window context menu item
+ Открыть в новом окне
-
-
- Media controller element
- Приостановить воспроизведение
+
+
+ Download Linked File context menu item
+ Сохранить по ссылке как...
-
-
- Media controller element
-
+
+
+ Copy Link context menu item
+ Копировать адрес ссылки
-
-
- Media controller element
-
+
+
+ Open Image in New Window context menu item
+ Открыть изображение
-
-
- Media controller element
- Начать фильм сначала
+
+
+ Download Image context menu item
+ Сохранить изображение
-
-
- Media controller element
-
+
+
+ Copy Link context menu item
+ Копировать изображение в буффер обмена
-
-
- Media controller element
- Текущее время фильма
+
+
+ Open Frame in New Window context menu item
+ Открыть фрейм
-
-
- Media controller element
- Осталось времени фильма
+
+
+ Copy context menu item
+ Копировать
-
-
- Media controller element
- Текущее состояние фильма
+
+
+ Back context menu item
+ Назад
-
-
- Media controller element
- Воспроизводить фильм в полноэкранном режиме
+
+
+ Forward context menu item
+ Вперёд
-
-
- Media controller element
- Быстрая перемотка назад
+
+
+ Stop context menu item
+ Остановить
-
-
- Media controller element
- Быстрая перемотка вперёд
+
+
+ Reload context menu item
+ Обновить
-
-
- Media time description
- Время не определено
+
+
+ Cut context menu item
+ Вырезать
-
-
- Media time description
- %1 дней %2 часов %3 минут %4 секунд
+
+
+ Paste context menu item
+ Вставить
-
-
- Media time description
- %1 часов %2 минут %3 секунд
+
+
+ No Guesses Found context menu item
+ Совпадений не найдено
-
-
- Media time description
- %1 минут %2 секунд
+
+
+ Ignore Spelling context menu item
+ ?Пропускать
+ Пропустить
-
-
- Media time description
- %1 секунд
+
+
+ Learn Spelling context menu item
+ Добавить в словарь
-
-
- Inspect Element context menu item
- Проверить
+
+
+ Search The Web context menu item
+ Искать в Интернет
-
- Label for only item in menu that appears when clicking on the search field image, when no searches have been performed
- История поиска пуста
+
+ Look Up in Dictionary context menu item
+ Искать в словаре
-
- label for first item in the menu that appears when clicking on the search field image, used as embedded menu title
- История поиска
+
+ Open Link context menu item
+ Открыть ссылку
-
- menu item in Recent Searches menu that empties menu's contents
- Очистить историю поиска
+
+ Ignore Grammar context menu item
+ ?Пропускать
+ Пропустить
-
-
- Unknown filesize FTP directory listing item
- Неизвестно
+
+
+ Spelling and Grammar context sub-menu item
+ Орфография
-
- Title string for images
- %1 (%2x%3 px)
+
+ menu item title
+ Показать панель проверки правописания
-
-
- Web-инспектор - %2
+
+
+ menu item title
+ Скрыть панель проверки правописания
-
-
- Прокрутить сюда
+
+
+ Check spelling context menu item
+ Проверка орфографии
-
-
- К левой границе
+
+
+ Check spelling while typing context menu item
+ Проверять орфографию при наборе текста
-
-
- Вверх
+
+
+ Check grammar with spelling context menu item
+ Проверять грамматику с орфографией
-
-
- К правой границе
+
+
+ Font context sub-menu item
+ Шрифты
-
-
- Вниз
+
+
+ Bold context menu item
+ Жирный
-
-
- На страницу влево
+
+
+ Italic context menu item
+ Курсив
-
-
- На страницу вверх
+
+
+ Underline context menu item
+ Подчёркнутый
-
-
- На страницу вправо
+
+
+ Outline context menu item
+ Перечёркнутый
-
-
- На страницу вниз
+
+
+ Writing direction context sub-menu item
+ Направление письма
-
-
- Прокрутить влево
+
+
+ Text direction context sub-menu item
+ Направление текста
-
-
- Прокрутить вверх
+
+
+ Default writing direction context menu item
+ По умолчанию
-
-
- Прокрутить вправо
+
+
+ Left to Right context menu item
+ Слева направо
-
-
- Прокрутить вниз
-
-
-
-
- number of chosen file
-
- %n файл(а)
- %n файла
- %n файлов
-
+
+
+ Right to Left context menu item
+ Справа налево
-
-
- JavaScript: Предупреждение - %1
+
+
+ Inspect Element context menu item
+ Проверить
-
-
- JavaScript: Подтверждение - %1
+
+
+ Label for only item in menu that appears when clicking on the search field image, when no searches have been performed
+ История поиска пуста
-
-
- JavaScript: Запрос - %1
+
+
+ label for first item in the menu that appears when clicking on the search field image, used as embedded menu title
+ История поиска
-
-
- JavaScript: Проблема - %1
+
+
+ menu item in Recent Searches menu that empties menu's contents
+ Очистить историю поиска
-
-
- Сбой выполнения сценария на данной странице. Желаете остановить выполение сценария?
+
+
+ Label text to be used when a plug-in is missing
+ Модуль отсутствует
-
-
- Переместить указатель к следующему символу
+
+
+ Unknown filesize FTP directory listing item
+ Неизвестно
-
-
- Переместить указатель к предыдущему символу
+
+
+ Title string for images
+ %1 (%2x%3 px)
-
-
- Переместить указатель к следующему слову
+
+
+ Media controller status message when the media is loading
+ Загрузка...
-
-
- Переместить указатель к предыдущему слову
+
+
+ Media controller status message when watching a live broadcast
+ Потоковое вещание
-
-
- Переместить указатель на следующую строку
+
+
+ Media controller element
+ Аудио-элемент
-
-
- Переместить указатель на предыдущую строку
+
+
+ Media controller element
+ Видео-элемент
-
-
- Переместить указатель в начало строки
+
+
+ Media controller element
+ Кнопка "Отключить звук"
-
-
- Переместить указатель в конец строки
+
+
+ Media controller element
+ Кнопка "Включить звук"
-
-
- Переместить указатель в начало блока
+
+
+ Media controller element
+ Кнопка "Воспроизведение"
-
-
- Переместить указатель в конец блока
+
+
+ Media controller element
+ Кнопка "Пауза"
-
-
- Переместить указатель в начало документа
+
+
+ Media controller element
+ Регулятор
-
-
- Переместить указатель в конец документа
+
+
+ Media controller element
+ Указатель регулятора
-
-
- Выделить всё
+
+
+ Media controller element
+ Кнопка "Перемотка назад"
-
-
- Выделить до следующего символа
+
+
+ Media controller element
+ Кнопка "Вернуть в реальное время"
-
-
- Выделить до предыдущего символа
+
+
+ Media controller element
+ Прошло времени
-
-
- Выделить до следующего слова
+
+
+ Media controller element
+ Осталось времени
-
-
- Выделить до предыдущего слова
+
+
+ Media controller element
+ Отображение состояния
-
-
- Выделить до следующей строки
+
+
+ Media controller element
+ Кнопка "На весь экран"
-
-
- Выделить до предыдущей строки
+
+
+ Media controller element
+ Кнопка "Перемотка вперёд"
-
-
- Выделить до начала строки
+
+
+ Media controller element
+ Кнопка "Перемотка назад"
-
-
- Выделить до конца строки
+
+
+ Media controller element
+ Элементы управления воспроизведением звука и отображением состояния
-
-
- Выделить до начала блока
+
+
+ Media controller element
+ Элементы управления воспроизведением видео и отображением состояния
-
-
- Выделить до конца блока
+
+
+ Media controller element
+ Отключить звуковые дорожки
-
-
- Выделить до начала документа
+
+
+ Media controller element
+ Включить звуковые дорожки
-
-
- Выделить до конца документа
+
+
+ Media controller element
+ Начать воспроизведение
-
-
- Удалить до начала слова
+
+
+ Media controller element
+ Приостановить воспроизведение
-
-
- Удалить до конца слова
+
+
+ Media controller element
+ Перемотка
-
-
- Вставить новый параграф
+
+
+ Media controller element
+ Позиция перемотки
-
-
- Вставить новую строку
+
+
+ Media controller element
+ Перемотка в начало
-
-
- Вставить, сохранив стиль
+
+
+ Media controller element
+ Возвращает потоковое видео к воспроизведению в реальном времени
-
-
- Удалить форматирование
+
+
+ Media controller element
+ Текущее время фильма
-
-
- Зачёркнутый
+
+
+ Media controller element
+ Оставшееся время фильма
-
-
- Подстрочный
+
+
+ Media controller element
+ Текущее состояние фильма
-
-
- Надстрочный
+
+
+ Media controller element
+ Воспроизведение фильма в режиме отображения на весь экран
-
-
- Вставить маркированный список
+
+
+ Media controller element
+ Быстрая перемотка назад
-
-
- Вставить нумерованный список
+
+
+ Media controller element
+ Быстрая перемотка вперёд
-
-
- Увеличить отступ
+
+
+ Media time description
+ Время не определено
-
-
- Уменьшить отступ
+
+
+ Media time description
+ %1 дней %2 часов %3 минут %4 секунд
-
-
- По центру
+
+
+ Media time description
+ %1 часов %2 минут %3 секунд
-
-
- По ширине
+
+
+ Media time description
+ %1 минут %2 секунд
-
- По левому краю
+
+ Media time description
+ %1 секунд
-
-
-
- По правому краю
+
+
+
+ number of chosen file
+
+ %n файл(а)
+ %n файла
+ %n файлов
+
@@ -8035,7 +9455,7 @@ Please choose a different file name.
QWidget
-
+ *
@@ -8043,27 +9463,12 @@ Please choose a different file name.
QWizard
-
-
- Назад
-
-
-
-
- Продолжить
-
-
-
-
- Передать
+
+
+ Отмена
-
- Готово
-
-
- Справка
@@ -8078,17 +9483,32 @@ Please choose a different file name.
&Завершить
-
-
- Отмена
+
+
+ &Справка
+
+
+
+
+ Назад
+
+
+
+
+ Продолжить
+
+
+
+
+ Передать
-
- &Справка
+
+ Готово
-
+ &Далее
@@ -8136,19 +9556,7 @@ Please choose a different file name.
Оставаться &сверху
-
-
-
- Св&ернуть в заголовок
-
-
-
-
-
- %1 - [%2]
-
-
-
+ Свернуть
@@ -8163,7 +9571,19 @@ Please choose a different file name.
Закрыть
-
+
+
+
+ Св&ернуть в заголовок
+
+
+
+
+
+ %1 - [%2]
+
+
+ В&осстановить из заголовка
@@ -8226,17 +9646,7 @@ Please choose a different file name.
некорректное значение параметра standalone
-
-
- в объявлении XML ожидаются параметры encoding или standalone
-
-
-
-
- в объявлении XML ожидается параметр standalone
-
-
-
+ ошибка разбора объявления типа документа
@@ -8273,7 +9683,7 @@ Please choose a different file name.
- неразобранная ссылка на объект в неверном контексте
+ неразобранная ссылка на объект в неправильном контексте
@@ -8285,6 +9695,16 @@ Please choose a different file name.
ошибка в объявлении внешнего объекта
+
+
+
+ в объявлении XML ожидаются параметры encoding или standalone
+
+
+
+
+ в объявлении XML ожидается параметр standalone
+ QXmlPatternistCLI
@@ -8335,12 +9755,12 @@ Please choose a different file name.
- Последовательность ']]>' недопустима в содержимом.
+ Последовательность "]]>" недопустима в содержимом.
- Префикс пространства имён '%1' не объявлен
+ Префикс пространства имён "%1" не объявлен
@@ -8350,12 +9770,12 @@ Please choose a different file name.
- Неожиданный символ '%1' в литерале открытого идентификатора.
+ Неожиданный символ "%1" в литерале открытого идентификатора.
- Неверная строка версии XML.
+ Некорректная строка версии XML.
@@ -8365,7 +9785,7 @@ Please choose a different file name.
- %1 - неверное название кодировки.
+ %1 - не является корректным названием кодировки.
@@ -8375,7 +9795,7 @@ Please choose a different file name.
- Псевдоатрибут 'standalone' может принимать только значения 'yes' или 'no'.
+ Псевдоатрибут "standalone" может принимать только значения "yes" или "no".
@@ -8435,12 +9855,12 @@ Please choose a different file name.
- %1 неверное название обрабатываемой инструкции.
+ %1 не является корректным названием обрабатываемой инструкции.
- Неверное название обрабатываемой инструкции.
+ Некорректное название обрабатываемой инструкции.
@@ -8448,7 +9868,7 @@ Please choose a different file name.
- Неверное объявление пространства имён.
+ Некорректное объявление пространства имён.
@@ -8463,44 +9883,283 @@ Please choose a different file name.
- Ссылка на необработанный объект '%1'.
+ Ссылка на необработанный объект "%1".
- Объект '%1' не объявлен.
+ Объект "%1" не объявлен.
+
+
+
+
+ Ссылка на внешний объект "%1" в значении атрибута.
+
+
+
+
+ Некорректная символьная ссылка.
+
+
+
+
+
+ Обнаружено некорректно закодированное содержимое.
+
+
+
+
+ Псевдоатрибут "standalone" должен находиться после указания кодировки.
+
+
+
+
+ %1 - некорректный идентификатор PUBLIC.
+
+
+
+ QtXmlPatterns
+
+
+
+
+ Должна присутствовать как минимум одна компонента.
+
+
+
+
+ %1 не является правильным значением типа %2.
+
+
+
+
+ При преобразовании %2 в %1 исходное значение не может быть %3.
+
+
+
+
+ Булево значение не может быть вычислено для последовательностей, которые содержат два и более атомарных значения.
+
+
+
+
+ Данные обрабатываемой инструкции не могут содержать строку "%1"
+
+
+
+
+
+ %1 некоррекно для %2
+
+
+
+
+ Символ %1 недопустим для XML 1.0.
+
+
+
+
+ %1 было вызвано.
+
+
+
+
+ В замещаемой строке "%1" должно сопровождаться как минимум одной цифрой, если неэкранировано.
+
+
+
+
+ В замещаемой строке символ "%1" может использоваться только для экранирования самого себя или "%2", но не "%3"
+
+
+
+
+ %1 соответствует символам конца строки
+
+
+
+
+ Соответствия регистронезависимы
+
+
+
+
+ %1 - некорректный шаблон регулярного выражения: %2
+
+
+
+
+ Будет невозможно восстановить %1.
+
+
+
+
+ Набор по умолчанию не определён
+
+
+
+
+ %1 не может быть восстановлен
+
+
+
+
+ Элемент %1 не соответствует необходимому типу %2.
+
+
+
+
+
+ %1 является схемой неизвестного типа.
+
+
+
+
+ Шаблон с именем %1 уже был объявлен.
+
+
+
+
+ Только одно объявление %1 может присутствовать в прологе запроса.
+
+
+
+
+ Инициализация переменной %1 зависит от себя самой
+
+
+
+
+ Переменная %1 не используется
+
+
+
+
+ Версия %1 не поддерживается. Поддерживается XQuery версии 1.0.
+
+
+
+
+ Функция с сигнатурой %1 отсутствует
+
+
+
+
+ Невозможно переопределить префикс %1.
+
+
+
+
+ Префикс %1 уже объявлен в прологе.
+
+
+
+
+ Название опции должно содержать префикс. Нет пространства имён по умолчанию для опций.
+
+
+
+
+ Возможность импорта схем не поддерживается, следовательно, объявлений %1 быть не должно.
+
+
+
+
+ Целевое пространство имён %1 не может быть пустым.
+
+
+
+
+ Возможность импорта модулей не поддерживается
+
+
+
+
+ Пространство имён пользовательской функции в модуле библиотеки должен соответствовать пространству имён модуля. Другими словами, он должен быть %1 вместо %2
+
+
+
+
+ Функция с сигнатурой %1 уже существует.
+
+
+
+
+ Внешние функции не поддерживаются. Все поддерживаемые функции могут использоваться напрямую без первоначального объявления их в качестве внешних
+
+
+
+
+ Ось %1 не поддерживается в XQuery
+
+
+
+
+ URI пространства имён не может быть пустой строкой при связывании с префиксом %1.
+
+
+
+
+ %1 - некорректный URI пространства имён.
+
+
+
+
+ Невозможно связать с префиксом %1
+
+
+
+
+ Два атрибута объявления пространств имён имеют одинаковое имя: %1.
+
+
+
+
+ URI пространства имён должен быть константой и не может содержать выражений.
+
+
+
+
+
+ %1 является объявлением атрибута вне области объявлений. Имейте в виду, возможность импорта схем не поддерживается.
+
+
+
+
+ пусто
+
+
+
+
+ нуль или один
-
-
- Ссылка на внешний объект '%1' в значении атрибута.
+
+
+ ровно один
-
-
- Неверная символьная ссылка.
+
+
+ один или более
-
-
-
- Обнаружено неверно закодированное содержимое.
+
+
+ нуль или более
-
-
- Псевдоатрибут 'standalone' должен находиться после указания кодировки.
+
+
+ Фокус не определён.
-
-
- %1 - неверный идентификатор PUBLIC.
+
+
+ Атрибут с именем %1 уже существует.
-
-
- QtXmlPatterns
@@ -8509,7 +10168,7 @@ Please choose a different file name.
- Элемент %1 не может быть сериализован, так как присутствует вне документа.
+ Элемент %1 не может быть сериализован, так как расположен вне документа.
@@ -8539,12 +10198,12 @@ Please choose a different file name.
- Время 24:%1:%2.%3 неверно. 24 часа, но минуты, секунды и/или миллисекунды отличны от 0;
+ Время 24:%1:%2.%3 некорректно. 24 часа, но минуты, секунды и/или миллисекунды отличны от 0;
- Время %1:%2:%3.%4 неверно.
+ Время %1:%2:%3.%4 некорректно.
@@ -8552,43 +10211,12 @@ Please choose a different file name.
Переполнение: невозможно представить дату.
-
-
-
- Должна присутствовать как минимум одна компонента.
-
-
-
+ Как минимум одна компонента времени должна следовать за разделителем '%1'.
-
-
- %1 не является правильным значением типа %2.
-
-
-
-
- При преобразовании %2 в %1 исходное значение не может быть %3.
-
-
-
-
- Целочисленное деление (%1) на нуль (%2) не определено.
-
-
-
-
- Деление (%1) на нуль (%2) не определено.
-
-
-
-
- Деление по модулю (%1) на нуль (%2) не определено.
-
-
-
+ Деление числа типа %1 на %2 (не числовое выражение) недопустимо.
@@ -8609,11 +10237,6 @@ Please choose a different file name.
Значение типа %1 не может быть булевым значением.
-
-
- Булево значение не может быть вычислено для последовательностей, которые содержат два и более атомарных значения.
-
- Значение %1 типа %2 больше максимума (%3).
@@ -8703,304 +10326,98 @@ Please choose a different file name.
Целевое имя в обрабатываемой инструкции не может быть %1 в любой комбинации нижнего и верхнего регистров. Имя %2 некорректно.
-
-
-
- %1 некорректное целевое имя в обрабатываемой инструкции. Имя должно быть значением типа %2, например: %3.
-
-
-
-
- Последняя часть пути должна содержать узлы или атомарные значения, но не может содержать и то, и другое одновременно.
-
-
-
-
- Данные обрабатываемой инструкции не могут содержать строку '%1'
-
-
-
-
- Отсутствует привязка к пространству имён для префикса %1
-
-
-
-
- Отсутствует привязка к пространству имён для префикса %1 в %2
-
-
-
-
-
- %1 некоррекно для %2
-
-
-
-
-
- %1 принимает не более %n аргумента. Следовательно, %2 неверно.
- %1 принимает не более %n аргументов. Следовательно, %2 неверно.
- %1 принимает не более %n аргументов. Следовательно, %2 неверно.
-
-
-
-
-
-
- %1 принимает не менее %n аргумента. Следовательно, %2 неверно.
- %1 принимает не менее %n аргументов. Следовательно, %2 неверно.
- %1 принимает не менее %n аргументов. Следовательно, %2 неверно.
-
-
-
-
-
- Первый аргумент %1 не может быть типа %2. Он должен быть числового типа, типа xs:yearMonthDuration или типа xs:dayTimeDuration.
-
-
-
-
- Первый аргумент %1 не может быть типа %2. Он должен быть типа %3, %4 или %5.
-
-
-
-
- Второй аргумент %1 не может быть типа %2. Он должен быть типа %3, %4 или %5.
-
-
-
-
- Символ %1 недопустим для XML 1.0.
-
-
-
-
- Если оба значения имеют региональные смещения, смещения должны быть одинаковы. %1 и %2 не одинаковы.
-
-
-
-
- %1 было вызвано.
-
-
-
-
- '%1' должно сопровождаться '%2' или '%3', но не в конце замещаемой строки.
-
-
-
-
- В замещаемой строке '%1' должно сопровождаться как минимум одной цифрой, если неэкранировано.
-
-
-
-
- В замещаемой строке символ '%1' может использоваться только для экранирования самого себя или '%2', но не '%3'
-
-
-
-
- %1 соответствует символам конца строки
-
-
-
-
- %1 и %2 соответствуют началу и концу строки.
-
-
-
-
- Соответствия регистронезависимы
-
-
-
-
- Символы пробелов удалены, за исключением тех, что были в классах символов
-
-
-
-
- %1 - неверный шаблон регулярного выражения: %2
-
-
-
-
- %1 - неверный флаг для регулярного выражения. Допустимые флаги:
-
-
-
-
- Префикс не должен быть указан, если первый параметр - пустая последовательность или пустая строка (вне пространства имён). Был указан префикс %1.
-
-
-
-
- Будет невозможно восстановить %1.
-
-
-
-
- Корневой узел второго аргумента функции %1 должен быть документом. %2 не является документом.
-
-
-
-
- Набор по умолчанию не определён
-
-
-
-
- %1 не может быть восстановлен
-
-
-
-
- Форма нормализации %1 не поддерживается. Поддерживаются только %2, %3, %4, %5 и пустая, т.е. пустая строка (без нормализации).
-
-
-
-
- Региональное смещение должно быть в переделах от %1 до %2 включительно. %3 выходит за допустимые пределы.
-
-
-
-
- %1 не является полным количеством минут.
-
-
-
-
- Необходимо %1 элементов, получено %2.
-
-
-
-
- Элемент %1 не соответствует необходимому типу %2.
-
-
-
-
-
- %1 является схемой неизвестного типа.
-
-
-
-
- Шаблон с именем %1 уже был объявлен.
-
-
-
-
- Только одно объявление %1 может присутствовать в прологе запроса.
-
-
-
-
- Инициализация переменной %1 зависит от себя самой
-
-
-
-
- Переменная %1 не используется
-
-
-
-
- Версия %1 не поддерживается. Поддерживается XQuery версии 1.0.
-
-
-
-
- Кодировка %1 неверна. Имя кодировки должно содержать только символы латиницы без пробелов и должно удовлетворять регулярному выражению %2.
+
+
+
+ %1 некорректное целевое имя в обрабатываемой инструкции. Имя должно быть значением типа %2, например: %3.
-
-
- Функция с сигнатурой %1 отсутствует
+
+
+ Последняя часть пути должна содержать узлы или атомарные значения, но не может содержать и то, и другое одновременно.
-
-
-
- Объявление пространство имён по умолчанию должно быть до объявления функций, переменных и опций.
+
+
+ Отсутствует привязка к пространству имён для префикса %1
-
-
- Объявление пространства имён должно быть до объявления функций, переменных и опций.
+
+
+ Отсутствует привязка к пространству имён для префикса %1 в %2
-
-
- Импортируемые модули должны быть указаны до объявления функций, переменных и опций.
+
+
+ Первый аргумент %1 не может быть типа %2. Он должен быть числового типа, типа xs:yearMonthDuration или типа xs:dayTimeDuration.
-
-
- Невозможно переопределить префикс %1.
+
+
+ Первый аргумент %1 не может быть типа %2. Он должен быть типа %3, %4 или %5.
-
-
- Префикс %1 уже объявлен в прологе.
+
+
+ Второй аргумент %1 не может быть типа %2. Он должен быть типа %3, %4 или %5.
-
-
- Название опции должно содержать префикс. Нет пространства имён по умолчанию для опций.
+
+
+ Если оба значения имеют региональные смещения, смещения должны быть одинаковы. %1 и %2 не одинаковы.
-
-
- Возможность импорта схем не поддерживается, следовательно, объявлений %1 быть не должно.
+
+
+ "%1" должно сопровождаться "%2" или "%3", но не в конце замещаемой строки.
-
-
- Целевое пространство имён %1 не может быть пустым.
+
+
+ %1 и %2 соответствуют началу и концу строки.
-
-
- Возможность импорта модулей не поддерживается
+
+
+ Символы пробелов удалены (за исключением тех, что были в символах классов)
-
-
- Ключевое слово %1 не может встречаться с любым другим названием режима.
+
+
+ %1 - некорректный флаг регулярного выражения. Допустимые флаги:
-
-
- Функция стилей должна иметь имя с префиксом.
+
+
+ Префикс не должен быть указан, если первый параметр - пустая последовательность или пустая строка (вне пространства имён). Был указан префикс %1.
-
-
- Пространство имён для пользовательских функций не может быть пустым (попробуйте предопределённый префикс %1, который существует для подобных ситуаций)
+
+
+ Форма нормализации %1 не поддерживается. Поддерживаются только %2, %3, %4, %5 и пустая, т.е. пустая строка (без нормализации).
-
-
- Пространтсво имён %1 зарезервировано, поэтому пользовательские функции не могут его использовать. Попробуйте предопределённый префикс %2, который существует для подобных ситуаций.
+
+
+ Региональное смещение должно быть в переделах от %1 до %2 включительно. %3 выходит за допустимые пределы.
-
-
- Пространство имён пользовательской функции в модуле библиотеки должен соответствовать пространству имён модуля. Другими словами, он должен быть %1 вместо %2
+
+
+ Необходимо %1 элементов, получено %2.
-
-
- Функция с сигнатурой %1 уже существует.
+
+
+ Имя кодировки %1 некорректно. Имя кодировки должно содержать только символы латиницы без пробелов и должно удовлетворять регулярному выражению %2.
-
-
- Внешние функции не поддерживаются. Все поддерживаемые функции могут использоваться напрямую без первоначального объявления их в качестве внешних
+
+
+ Ключевое слово %1 не может встречаться с любым другим названием режима.
-
+ Переменная с именем %1 отсутствует
@@ -9025,7 +10442,17 @@ Please choose a different file name.
Отсутствует значение для внешней переменной с именем %1.
-
+
+
+ Функция стилей должна иметь имя с префиксом.
+
+
+
+
+ Пространтсво имён %1 зарезервировано, поэтому пользовательские функции не могут его использовать. Попробуйте предопределённый префикс %2, который существует для подобных ситуаций.
+
+
+ Аргумент с именем %1 уже объявлен. Имя каждого аргумента должно быть уникальным.
@@ -9062,12 +10489,12 @@ Please choose a different file name.
- %1 является неверным шаблоном имени режима.
+ %1 не является корректным шаблоном имени режима.
- Имя переменной, связанной с выражением for, должно отличаться от позиционной переменной. Две переменные с именем %1 конфликтуют.
+ Имя переменной, связанной с выражением for, должно отличаться от позиционной переменной. Две переменные с именем %1 конфликтуют.
@@ -9085,29 +10512,14 @@ Please choose a different file name.
Имя каждого параметра шаблона должно быть уникальным, но %1 повторяется.
-
-
- Ось %1 не поддерживается в XQuery
-
-
-
+ Функция с именем %1 отсутствует.
-
-
- Атрибут с именем %1 уже существует для данного элемента.
-
-
-
-
- %1 является неверным названием для инструкции обработки.
-
-
-
+
- %1 является неверным числовым литералом.
+ %1 не является корректным числовым литералом.
@@ -9125,22 +10537,7 @@ Please choose a different file name.
Встречена конструкция, запрещённая для текущего языка (%1).
-
-
- URI пространства имён не может быть пустой строкой при связывании с префиксом %1.
-
-
-
-
- %1 - неверный URI пространства имён.
-
-
-
-
- Невозможно связать с префиксом %1
-
-
-
+ Пространство имён %1 может быть связано только с %2 (в данном случае уже предопределено).
@@ -9150,17 +10547,12 @@ Please choose a different file name.
Префикс %1 может быть связан только с %2 (в данном случае уже предопределено).
-
-
- Два атрибута объявления пространств имён имеют одинаковое имя: %1.
-
-
-
-
- URI пространства имён должно быть константой и не может содержать выражений.
+
+
+ Атрибут с именем %1 уже существует для данного элемента.
-
+ Прямой конструктор элемента составлен некорректно. %1 заканчивается на %2.
@@ -9180,70 +10572,98 @@ Please choose a different file name.
%1 - не атомарный тип. Преобразование возможно только к атомарным типам.
-
-
-
- %1 является объявлением атрибута вне области объявлений. Имейте в виду, возможность импорта схем не поддерживается.
+
+
+ %1 не является корректным названием инструкции обработки.
-
+ Название выражения расширения должно быть в пространстве имён.
-
-
- пусто
+
+
+ Требуется тип %1, но обнаружен %2.
-
-
- нуль или один
+
+
+ Преобразование %1 к %2 может снизить точность.
-
-
- ровно один
+
+
+ Невозможно добавлять атрибуты после любого другого вида узла.
-
-
- один или более
+
+
+ Поддерживается только Unicode Codepoint Collation (%1). %2 не поддерживается.
-
-
- нуль или более
+
+
+ Целочисленное деление (%1) на нуль (%2) не определено.
-
-
- Требуется тип %1, но обнаружен %2.
+
+
+ Деление (%1) на нуль (%2) не определено.
-
-
- Преобразование %1 к %2 может снизить точность.
+
+
+ Деление по модулю (%1) на нуль (%2) не определено.
+
+
+
+
+
+ %1 принимает не более %n аргумента. Следовательно, %2 некорректно.
+ %1 принимает не более %n аргументов. Следовательно, %2 некорректно.
+ %1 принимает не более %n аргументов. Следовательно, %2 некорректно.
+
+
+
+
+
+
+ %1 принимает не менее %n аргумента. Следовательно, %2 некорректно.
+ %1 принимает не менее %n аргументов. Следовательно, %2 некорректно.
+ %1 принимает не менее %n аргументов. Следовательно, %2 некорректно.
+
-
-
- Фокус не определён.
+
+
+ Корневой узел второго аргумента функции %1 должен быть документом. %2 не является документом.
-
-
- Невозможно добавлять атрибуты после любого другого вида узла.
+
+
+ Пространство имён для пользовательских функций не может быть пустым (попробуйте предопределённый префикс %1, который существует для подобных ситуаций)
-
-
- Атрибут с именем %1 уже существует.
+
+
+
+ Объявление пространство имён по умолчанию должно быть до объявления функций, переменных и опций.
-
-
- Поддерживается только Unicode Codepoint Collation (%1). %2 не поддерживается.
+
+
+ Объявление пространства имён должно быть до объявления функций, переменных и опций.
+
+
+
+
+ Импортируемые модули должны быть указаны до объявления функций, переменных и опций.
+
+
+
+
+ %1 не является полным количеством минут.
@@ -9398,12 +10818,12 @@ Please choose a different file name.
- У элемента %1 не может быть потомков.
+ Элемент %1 не может иметь потомков.
- У элемента %1 не может быть конструктора последовательности.
+ Элемент %1 не может иметь конструктор последовательности.
@@ -9414,7 +10834,7 @@ Please choose a different file name.
- Параметр в функции не может быть объявлен туннелем.
+ Параметр функции не может быть объявлен туннелем.
@@ -9942,13 +11362,13 @@ Please choose a different file name.
-
+
-
+
@@ -9958,7 +11378,7 @@ Please choose a different file name.
-
+
@@ -10148,7 +11568,7 @@ Please choose a different file name.
-
+
@@ -10174,7 +11594,7 @@ Please choose a different file name.
-
+
@@ -10184,7 +11604,7 @@ Please choose a different file name.
-
+
@@ -10288,7 +11708,7 @@ Please choose a different file name.
-
+ Текст или ссылка на объект недопустимы в качестве содержимого элемента %1
@@ -10325,17 +11745,17 @@ Please choose a different file name.
-
+ Элемент %1 уже определён.
-
+ Атрибут %1 уже определён.
-
+ Тип %1 уже определён.
@@ -10345,7 +11765,7 @@ Please choose a different file name.
-
+ Группа элементов %1 уже определёна.
@@ -10367,7 +11787,7 @@ Please choose a different file name.
-
+ %1 некорректно в соответствии с %2.
@@ -10592,7 +12012,7 @@ Please choose a different file name.
-
+ Некорректное содержимое QName: %1.
@@ -10662,32 +12082,32 @@ Please choose a different file name.
-
+ Загруженный файл схемы некорректен.
-
+ %1 содержит некорректные данные.
-
+ Пространство имён xsi:schemaLocation %1 уже встречалось ранее в данном документе.
-
+ xsi:noNamespaceSchemaLocation не может встречаться после первого не-`namespace` элемента или атрибута.
-
+ Схема для проверки не определена.
-
+ Отсутствует определение элемента %1.
@@ -10699,7 +12119,7 @@ Please choose a different file name.
-
+ Элемент %1 не определён в данном контексте.
@@ -10719,7 +12139,7 @@ Please choose a different file name.
-
+ Элемент %1 необнуляемый.
@@ -10729,7 +12149,7 @@ Please choose a different file name.
-
+ Элемент необнуляемый, т.к. имеет содержимое.
@@ -10739,7 +12159,7 @@ Please choose a different file name.
-
+ Элемент %1 не может содержать другие элементы, т.к. имеет статическое содержимое.
@@ -10850,7 +12270,7 @@ Please choose a different file name.
-
+ Для поля %1 найдено более одного значения.
@@ -10860,12 +12280,12 @@ Please choose a different file name.
-
+ Значение ID "%1" неуникально.
-
+ Атрибут `%1` имеет некорректное содержимое QName: %2.
--
cgit v0.12
From 33a2c9bacd9a2f566ea50e085c7ce669f854b427 Mon Sep 17 00:00:00 2001
From: Ritt Konstantin
Date: Mon, 31 May 2010 15:14:41 +0200
Subject: update Russian translations for Qt tools
Merge-request: 621
Reviewed-by: Oswald Buddenhagen
---
translations/assistant_ru.ts | 526 +++++++++++++++++++------------------------
translations/designer_ru.ts | 206 +++++++++--------
translations/linguist_ru.ts | 95 ++++----
translations/qt_help_ru.ts | 180 ++++++++-------
translations/qtconfig_ru.ts | 26 +--
5 files changed, 508 insertions(+), 525 deletions(-)
diff --git a/translations/assistant_ru.ts b/translations/assistant_ru.ts
index ade4c85..5244483 100644
--- a/translations/assistant_ru.ts
+++ b/translations/assistant_ru.ts
@@ -4,7 +4,7 @@
AboutDialog
-
+ &Закрыть
@@ -12,7 +12,7 @@
AboutLabel
-
+ Предупреждение
@@ -24,12 +24,81 @@
-
+ Закрыть
+ Assistant
+
+
+
+ Ошибка регистрации файла документации '%1': %2
+
+
+
+
+ Ошибка: %1
+
+
+
+
+ Не удалось зарегистрировать файл документации
+%1
+
+Причина:
+%2
+
+
+
+
+ Документация успешно зарегистрирована.
+
+
+
+
+ Не удалось дерегистрировать файл документации
+%1
+
+Причина:
+%2
+
+
+
+
+ Документация успешно дерегистрирована.
+
+
+
+
+ Ошибка чтения файла коллекции справки '%1': %2.
+
+
+
+
+ Ошибка создания файла коллекции справки '%1': %2.
+
+
+
+
+ Ошибка чтения файла коллекции справки '%1': %2
+
+
+
+
+ Не удалось загрузить драйвер баз данных sqlite!
+
+
+BookmarkDialog
@@ -56,35 +125,11 @@
Новая папка
-
-
-
-
-
-
-
- Закладки
-
-
-
-
- Удалить папку
-
-
-
-
- Переименовать папку
- BookmarkManager
-
-
- Закладки
-
-
-
+ Удалить
@@ -94,16 +139,27 @@
Удаление папки приведёт к удалению её содержимого.<br>Желаете продолжить?
-
-
-
- Новая папка
+
+
+ Добавить закладку...
+
+
+
+
+
+
+
+
+
+ Неозаглавлено
-
-
- BookmarkWidget
-
+
+
+ Управление закладками...
+
+
+ Удалить папку
@@ -123,7 +179,7 @@
Открыть закладку в новой вкладке
-
+ Удалить закладку
@@ -132,26 +188,11 @@
Переименовать закладку
-
-
-
- Фильтр:
-
-
-
-
- Добавить
-
-
-
-
- Удалить
- CentralWidget
-
+ Открыть новую страницу
@@ -161,18 +202,18 @@
Закрыть текущую страницу
-
+ Печать документа
-
+ безымянная вкладка
-
+ Открыть новую страницу
@@ -192,15 +233,78 @@
Добавить закладку для этой страницы...
-
+ Поиск
+ CmdLineParser
+
+
+
+ Неизвестный параметр: %1
+
+
+
+
+ Неизвестный виджет: %1
+
+
+
+
+ Файл коллекции справки '%1' не существует.
+
+
+
+
+ Отсутствует файл коллекции справки.
+
+
+
+
+ Некорректный URL '%1'.
+
+
+
+
+ Отсутствует URL.
+
+
+
+
+ Отсутствует виджет.
+
+
+
+
+ Файл справки Qt '%1' не существует.
+
+
+
+
+ Отсутствует файл справки.
+
+
+
+
+ Отсутствует параметр фильтра.
+
+
+
+
+ Ошибка
+
+
+
+
+ Замечание
+
+
+ContentWindow
-
+ Открыть ссылку
@@ -224,34 +328,6 @@
- FindWidget
-
-
-
- Предыдущее
-
-
-
-
- Следующее
-
-
-
-
- Учитывать регистр
-
-
-
-
- Слова целиком
-
-
-
-
- <img src=":/trolltech/assistant/images/wrap.png"> Поиск с начала
-
-
-FontPanel
@@ -282,52 +358,25 @@
HelpViewer
-
-
- Открыть ссылку в новой вкладке
+
+
+
-
+ <title>Ошибка 404...</title><div align="center"><br><br><h1>Страница не найдена</h1><br><h3>'%1'</h3></div>
-
-
-
- Справка
-
-
-
-
- Невозможно запустить внешнее приложение.
-
-
-
-
-
- Закрыть
-
-
-
-
- Копировать &адрес ссылки
-
-
-
-
- Открыть ссылку в новой вкладке Ctrl+LMB
- IndexWindow
-
+ &Искать:
-
+ Открыть ссылку
@@ -341,29 +390,29 @@
InstallDialog
-
+ Установка документации
-
+ Загрузка информации о документации...
-
+ Загрузка отменена.
-
-
+
+ Готово.
-
+ Файл %1 уже существует. Желаете перезаписать его?
@@ -378,14 +427,14 @@
Загрузка %1...
-
+
-
+ Загрузка не удалась: %1.
-
+ Файл информации о документации повреждён!
@@ -400,7 +449,7 @@
Установка документации %1...
-
+ При установке документации возникла ошибка:
@@ -440,48 +489,42 @@
MainWindow
-
-
+
+ Указатель
-
-
+
+ Содержание
-
-
+
+ Закладки
-
-
-
+
+
+ Qt Assistant
-
-
-
- Без фильтрации
-
-
-
+ Поиск документации Qt...
-
+ &Файл
-
+ Параметры &страницы...
@@ -496,22 +539,27 @@
&Печать...
-
+ Новая &вкладка
-
+ &Закрыть вкладку
-
+ В&ыход
-
+
+
+
+
+
+ &Правка
@@ -568,22 +616,22 @@
-
+
-
+
-
+
-
+
@@ -593,7 +641,7 @@
-
+
@@ -608,7 +656,7 @@
-
+
@@ -638,7 +686,7 @@
-
+
@@ -648,25 +696,20 @@
-
+
-
+ &Закладки
-
-
- Добавить закладку...
-
-
-
-
-
+
+
+ Не удалось зарегистрировать файл '%1': %2
-
+ &Справка
@@ -676,7 +719,7 @@
О программе...
-
+ Панель навигации
@@ -698,15 +741,15 @@
-
+
-
+ Панели инструментов
-
+ Панель фильтров
@@ -716,7 +759,7 @@
Отфильтровано по:
-
+ Панель адреса
@@ -726,17 +769,17 @@
Адрес:
-
+ Не удалось найти элемент, связанный с содержанием.
-
+ О %1
-
+ Обновление поискового индекса
@@ -744,18 +787,18 @@
PreferencesDialog
-
-
+
+ Добавить документацию
-
+ Сжатые файлы справки Qt (*.qch)
-
+ Пространство имён %1 уже зарегистрировано!
@@ -765,7 +808,7 @@
Указанный файл не является корректным файлом справки Qt!
-
+ Удалить документацию
@@ -785,7 +828,7 @@
Удалить
-
+ Использовать индивидуальные настройки
@@ -909,120 +952,9 @@
- QObject
-
-
-
- Указанный файл набора отсутствует!
-
-
-
-
- Отсутствует файл набора!
-
-
-
-
- Некорректный URL!
-
-
-
-
- Отсутствует URL!
-
-
-
-
-
-
- Неизвестный виджет: %1
-
-
-
-
-
-
- Отсутствует виджет!
-
-
-
-
-
- Указанный файл справки Qt отсутствует!
-
-
-
-
-
- Отсутствует файл справки!
-
-
-
-
- Отсутствует параметр фильтра!
-
-
-
-
- Неизвестный параметр: %1
-
-
-
-
-
- Qt Assistant
-
-
-
-
- Не удалось зарегистрировать файл документации
-%1
-
-Причина:
-%2
-
-
-
-
- Документация успешно зарегистрирована.
-
-
-
-
- Документация успешно дерегистрирована.
-
-
-
-
- Не удалось дерегистрировать файл документации
-%1
-
-Причина:
-%2
-
-
-
-
- Не удалось загрузить драйвер базы данных sqlite!
-
-
-
-
- Не удалось прочитать указанный файл набора!
-
-
-RemoteControl
-
+ Отладочное удалённое управление
@@ -1035,7 +967,7 @@ Reason:
SearchWidget
-
+ &Копировать
@@ -1058,7 +990,7 @@ Reason:
TopicChooser
-
+ Выберите раздел для <b>%1</b>:
diff --git a/translations/designer_ru.ts b/translations/designer_ru.ts
index 412be47..72f3532 100644
--- a/translations/designer_ru.ts
+++ b/translations/designer_ru.ts
@@ -255,7 +255,7 @@
Пересекающиеся диагонали
-
+ Стиль
@@ -611,28 +611,28 @@
Вставить меню
-
+
- Изменено '%1' у '%2'
+ Изменено '%1' у '%2'
-
+ Изменено '%1' у %n объектаИзменено '%1' у %n объектовИзменено '%1' у %n объектов
-
+
- Восстановлено '%1' у '%2'
+ Восстановлено '%1' у '%2'
-
+ Восстановлено '%1' у %n объектаВосстановлено '%1' у %n объектовВосстановлено '%1' у %n объектов
@@ -641,12 +641,12 @@
- Добавлено динамическое свойство '%1' '%2'
+ Добавлено динамическое свойство '%1' '%2'
-
+ Добавлено динамическое свойство '%1' %n объектуДобавлено динамическое свойство '%1' %n объектамДобавлено динамическое свойство '%1' %n объектам
@@ -655,12 +655,12 @@
- Удалено динамическое свойство '%1' у '%2'
+ Удалено динамическое свойство '%1' у '%2'
-
+ Удалено динамическое свойство '%1' у %n объектаУдалено динамическое свойство '%1' у %n объектовУдалено динамическое свойство '%1' у %n объектов
@@ -742,7 +742,7 @@
Designer
-
+ Qt Designer
@@ -1074,8 +1074,7 @@
- нелепица какая-то
- Добавление строки компоновки компоновщика формы
+ Добавление строки компоновщика формы
@@ -1111,7 +1110,7 @@
FormWindow
-
+ Неожиданный элемент <%1>
@@ -1204,7 +1203,7 @@
MainWindowBase
-
+ Not currently used (main tool bar)Главное
@@ -1584,7 +1583,7 @@ Script: %3
QDesignerActions
-
+ Сохранено %1.
@@ -1614,24 +1613,24 @@ Script: %3
Настройки...
-
+ Очистить &меню
-
+
-
+
-
+
-
+
-
+
@@ -1678,7 +1677,7 @@ Script: %3
UI файлы Qt Designer (*.%1);;Все файлы (*)
-
+ %1 уже существует.
@@ -1690,7 +1689,7 @@ Do you want to replace it?
Дополнительные шрифты...
-
+ &Последние формы
@@ -1753,7 +1752,7 @@ Do you want to update the file location or generate a new form?
&Закрыть предпросмотр
-
+ &Новый...
@@ -1784,12 +1783,12 @@ Do you want to update the file location or generate a new form?
-
+ &Закрыть
-
+ Сохранить &Изображение...
@@ -1804,12 +1803,12 @@ Do you want to update the file location or generate a new form?
Показать &код...
-
+
-
+
-
+ Сохранить форму как
@@ -2059,17 +2058,17 @@ Would you like to retry?
- Отсутствует необходимый атрибут ('%1').
+ Отсутствует необходимый атрибут ('%1').
- Обнаружена неверная спецификация ('%1') свойства. Поддерживаются типы: %2
+ Обнаружена неверная спецификация ('%1') свойства. Поддерживаются типы: %2
- '%1' не является корректной спецификацией строкового свойства.
+ '%1' не является корректной спецификацией строкового свойства.
@@ -2090,7 +2089,7 @@ Would you like to retry?
QDesignerPropertySheet
-
+ Динамические свойства
@@ -2103,14 +2102,14 @@ Would you like to retry?
Компоновка типа '%1' не поддерживается, заменена на компоновку сеткой.
-
+ Контейнерное расширение виджета '%1' (%2) возвратило виджет, который не управляется Qt Designer '%3' (%4), при запросе страницы №%5.
Страницы контейнера должны быть добавлены указанием их в XML, который возвращается методом domXml() пользовательского виджета.
-
+ Parsing clipboard contentsНеожиданный элемент <%1>
@@ -2212,21 +2211,21 @@ Container pages should only be added by specifying them in XML returned by the d
Панель инструментов
-
+ Сохранить форму?
-
- Есть %n форма с несохранёнными изменениями. Показать изменения перед выходом?
- Есть %n формы с несохранёнными изменениями. Показать изменения перед выходом?
- Есть %n форм с несохранёнными изменениями. Показать изменения перед выходом?
+
+ Имеется %n форма с несохранёнными изменениями. Желаете просмотреть изменения перед выходом?
+ Имеется %n формы с несохранёнными изменениями. Желаете просмотреть изменения перед выходом?
+ Имеется %n форм с несохранёнными изменениями. Желаете просмотреть изменения перед выходом?
-
+ &Вид
@@ -2241,9 +2240,9 @@ Container pages should only be added by specifying them in XML returned by the d
Панель виджетов
-
+
- Если вы не пересмотрите документы, то все ваши изменения будут потеряны.
+ Если не просматривать изменения, все изменения будут потеряны.
@@ -2258,7 +2257,7 @@ Container pages should only be added by specifying them in XML returned by the d
- Информация о резервировании
+ Информация о резервированых копиях
@@ -2273,7 +2272,7 @@ Container pages should only be added by specifying them in XML returned by the d
- Файл <b>%1</b> не является корректным UI файлом Qt Designer.
+ Файл <b>%1</b> не является корректным UI файлом Qt Designer.
@@ -2322,7 +2321,7 @@ Container pages should only be added by specifying them in XML returned by the d
- Значение '%1' перечисляемого типа некорректно. Будет использовано значение '%2'.
+ Значение '%1' перечисляемого типа некорректно. Будет использовано значение по умолчанию '%2'.
@@ -2466,13 +2465,13 @@ Container pages should only be added by specifying them in XML returned by the d
- Вкл.
+ Вкл.
- Выкл.
+ Выкл.
@@ -2480,12 +2479,12 @@ Container pages should only be added by specifying them in XML returned by the d
- Вкл.
+ Вкл.
- Выкл.
+ Выкл.
@@ -3503,7 +3502,7 @@ to
QtResourceView
-
+ Размер: %1 x %2
@@ -3528,7 +3527,7 @@ to
QtResourceViewDialog
-
+ Выбрать ресурс
@@ -3915,6 +3914,26 @@ Do you want overwrite the template?
+
+ Файл
+
+
+
+
+ Правка
+
+
+
+
+ Инструменты
+
+
+
+
+ Форма
+
+
+ Панели инструментов
@@ -3939,7 +3958,7 @@ Do you want overwrite the template?
- %1<br/>Copyright (C) 2010 Корпорация Nokia и/или её дочерние подразделения.
+ %1<br/>Copyright (C) 2010 Корпорация Nokia и/или её дочерние подразделения.
@@ -4424,38 +4443,38 @@ Do you want overwrite the template?
-
+
-
+
-
+
-
+
-
+
-
+
-
+
@@ -4708,9 +4727,14 @@ Do you want overwrite the template?
qdesigner_internal::FilterWidget
-
-
- <Фильтр>
+
+
+ Фильтр
+
+
+
+
+ Очистить текст
@@ -4737,33 +4761,37 @@ Do you want overwrite the template?
qdesigner_internal::FormWindow
-
+ Изменить содержимое
-
+
-
+ Вставить виджет '%1'
-
+ Изменение размера
-
-
+ Перемещение клавишей
+
+
+
+ Изменение размера клавишей
+
-
+ Вставлено %n действие
@@ -4801,7 +4829,7 @@ Do you want overwrite the template?
Ошибка вставки
-
+ Поднятие виджетов
@@ -4821,7 +4849,7 @@ Do you want overwrite the template?
Компоновка
-
+ Вставка виджета
@@ -4835,7 +4863,7 @@ Do you want overwrite the template?
qdesigner_internal::FormWindowBase
-
+ Удалить '%1'
@@ -4932,7 +4960,7 @@ Do you want overwrite the template?
- Скомпоновать по &горизонтальная
+ Скомпоновать по &горизонтали
@@ -5025,7 +5053,7 @@ Do you want overwrite the template?
&Настройки формы...
-
+ Удалить компоновщик
@@ -5441,7 +5469,7 @@ Please select another name.
-
+
@@ -5500,7 +5528,7 @@ Please select another name.
- Невозможно открыть файл шаблона формы '%1': %2
+ Невозможно открыть файл шаблона формы '%1': %2
@@ -5869,7 +5897,7 @@ Please select another name.
Palette editor background
-
+
@@ -5945,12 +5973,12 @@ ate the goose who was loose.
- Глобальное включение
+ Глобальное включение
- Использование
+ Использование
@@ -5984,7 +6012,7 @@ ate the goose who was loose.
qdesigner_internal::PropertyEditor
-
+ Добавить динамическое свойство...
@@ -6014,7 +6042,7 @@ ate the goose who was loose.
Вид выпадающего списка
-
+ Строка...
@@ -6034,7 +6062,7 @@ ate the goose who was loose.
Настроить радактор свойств
-
+ Объект: %1
@@ -6372,7 +6400,7 @@ Class: %2
-
+
@@ -6382,7 +6410,7 @@ Class: %2
-
+
@@ -6392,7 +6420,7 @@ Class: %2
-
+
@@ -6495,7 +6523,7 @@ Class: %2
-
+
diff --git a/translations/linguist_ru.ts b/translations/linguist_ru.ts
index 3f26c49..625a0f1 100644
--- a/translations/linguist_ru.ts
+++ b/translations/linguist_ru.ts
@@ -290,19 +290,19 @@ Will assume a single universal form.
translate, but don't change
-
+ translate, but don't change
-
+ translate, but don't change
-
+
@@ -312,7 +312,7 @@ Will assume a single universal form.
- Удалить непустой вариант длины?
+ Удалить вариант перевода?
@@ -320,7 +320,7 @@ Will assume a single universal form.
-
+ Удалено %n сообщение, у которого не было ID.Удалено %n сообщения, у которых не было ID.Удалено %n сообщений, у которых не было ID.
@@ -329,7 +329,7 @@ Will assume a single universal form.
-
+ Удалён лишний контекст из %n сообщения.Удалён лишний контекст из %n сообщений.Удалён лишний контекст из %n сообщений.
@@ -481,12 +481,12 @@ Skip loading the first named file?
-
+ Скомпилировать
-
+ Скомпилированные файлы перевода для приложений Qt (*.qm)
@@ -553,7 +553,7 @@ All files (*)
-
+
@@ -562,7 +562,7 @@ All files (*)
Qt Linguist
-
+ Не удалось найти строку '%1'.
@@ -693,7 +693,7 @@ All files (*)
Непереведённых записей не осталось.
-
+ &Окно
@@ -705,7 +705,7 @@ All files (*)
-
+
@@ -969,7 +969,7 @@ All files (*)
-
+
@@ -984,7 +984,7 @@ All files (*)
-
+
@@ -1024,7 +1024,7 @@ All files (*)
-
+
@@ -1039,7 +1039,7 @@ All files (*)
-
+
@@ -1054,7 +1054,7 @@ All files (*)
-
+
@@ -1069,7 +1069,7 @@ All files (*)
-
+
@@ -1084,7 +1084,7 @@ All files (*)
-
+
@@ -1099,7 +1099,7 @@ All files (*)
-
+
@@ -1114,7 +1114,7 @@ All files (*)
-
+
@@ -1129,7 +1129,7 @@ All files (*)
-
+
@@ -1144,7 +1144,7 @@ All files (*)
-
+
@@ -1159,7 +1159,7 @@ All files (*)
- Варианты длины
+ Варианты перевода
@@ -1169,7 +1169,7 @@ All files (*)
-
+
@@ -1184,7 +1184,7 @@ All files (*)
-
+
@@ -1199,7 +1199,7 @@ All files (*)
-
+
@@ -1214,7 +1214,7 @@ All files (*)
-
+
@@ -1239,7 +1239,7 @@ All files (*)
-
+
@@ -1294,7 +1294,7 @@ All files (*)
-
+
@@ -1309,7 +1309,7 @@ All files (*)
-
+
@@ -1349,7 +1349,7 @@ All files (*)
-
+
@@ -1363,11 +1363,6 @@ All files (*)
-
- Показать информацию об инструментарии Qt от Nokia.
-
-
- &Что это?
@@ -1384,7 +1379,7 @@ All files (*)
-
+
@@ -1414,7 +1409,7 @@ All files (*)
-
+
@@ -1424,7 +1419,7 @@ All files (*)
-
+
@@ -1439,7 +1434,7 @@ All files (*)
-
+
@@ -1454,7 +1449,7 @@ All files (*)
-
+
@@ -1506,6 +1501,11 @@ All files (*)
Переключение проверки маркеров форматирования
+
+
+
+ Показать информацию об инструментарии Qt от Nokia.
+ MessageEditor
@@ -1795,7 +1795,7 @@ Line: %2
QObject
-
+ Файлы перевода (%1);;
@@ -1816,11 +1816,16 @@ Line: %2
Qt Linguist
-
+ Файлы локализации GNU Gettext
+
+
+ Файлы шаблонов локализации GNU Gettext
+
+ Скомпилированные переводы Qt
@@ -1846,7 +1851,7 @@ Line: %2
Исходные файлы перевода Qt (последний формат)
-
+ Файлы локализации XLIFF
diff --git a/translations/qt_help_ru.ts b/translations/qt_help_ru.ts
index 341cf19..f1aa0fa 100644
--- a/translations/qt_help_ru.ts
+++ b/translations/qt_help_ru.ts
@@ -34,7 +34,7 @@
- Файл набора '%1' ещё не установлен!
+ Файл коллекции справки '%1' ещё не установлен!
@@ -43,9 +43,9 @@
-
+
- Не удалось открыть файл набора: %1
+ Не удалось открыть файл коллекции справки: %1
@@ -55,15 +55,15 @@
- Файл набора '%1' уже существует!
+ Файл коллекции справки '%1' уже существует!
-
+ Неизвестный фильтр '%1'!
-
+ Некорректный файл документации '%1'!
@@ -78,17 +78,17 @@
Не удалось открыть базу данных '%1' для оптимизации!
-
+ Не удалось создать каталог: %1
-
+
- Не удалось скопировать файл набора: %1
+ Не удалось скопировать файл коллекции справки: %1
-
+ Не удалось зарегистрировать фильтр %1!
@@ -120,23 +120,20 @@
QHelpEngineCore
-
-
- Указанное пространство имён не существует!
-
-
-
- QHelpEngineCorePrivate
-
-
+ Не удалось открыть файл документации %1: %2!
+
+
+
+ Указанное пространство имён не существует!
+ QHelpGenerator
-
+ Некорректные данные справки!
@@ -161,7 +158,7 @@
Не удалось открыть файл базы данных %1!
-
+ Не удалось зарегистрировать пространство имён %1!
@@ -216,7 +213,7 @@
Не удалось открыть файл %1! Пропускаем.
-
+ Фильтр %1 уже зарегистрирован!
@@ -231,7 +228,7 @@
Добавление указателей...
-
+ Добавление оглавления...
@@ -245,11 +242,79 @@
Не удалось зарегистрировать оглавление!
+
+
+
+ Файл '%1' не существует.
+
+
+
+
+ Невозможно открыть файл '%1'.
+
+
+
+
+ Файл '%1' содержит некорректную ссылку на файл '%2'
+
+
+
+
+ В файлах HTML обнаружены некорректные ссылки.
+
+
+
+ QHelpProject
+
+
+
+ Неизвестный идентификатор.
+
+
+
+
+ Неизвестный идентификатор. Ожидается "QtHelpProject"!
+
+
+
+
+ Ошибка в строке %1: %2
+
+
+
+
+ Виртуальный каталог имеет некорректный синтаксис.
+
+
+
+
+ Пространство имён имеет некорректный синтаксис.
+
+
+
+
+ В QtHelpProject отсутствует пространство имён.
+
+
+
+
+ В QtHelpProject отсутствует виртуальный каталог
+
+
+
+
+ Отсутствует атрибут у ключевого слова в строке %1.
+
+
+
+
+ Невозможно открыть исходный файл %1!
+ QHelpSearchQueryWidget
-
+ Искать:
@@ -301,66 +366,19 @@
QHelpSearchResultWidget
+
+
+
+
+ %1 - %2 из %n совпадения
+ %1 - %2 из %n совпадений
+ %1 - %2 из %n совпадений
+
+
-
+ 0 - 0 из 0 совпадений
-
- QHelpSearchResultWidgetPrivate
-
-
-
- %1 - %2 из %3 совпадений
-
-
-
- QObject
-
-
-
- Неизвестный идентификатор.
-
-
-
-
- Неизвестный идентификатор. Ожидается "QtHelpProject"!
-
-
-
-
- Ошибка в строке %1: %2
-
-
-
-
- Виртуальный каталог не должен содержать символ '/'!
-
-
-
-
- Пространство имён не должно содержать символ '/'!
-
-
-
-
- Отсутствует пространство имён в QtHelpProject.
-
-
-
-
- Отсутствует виртуальный каталог в QtHelpProject
-
-
-
-
- Отсутствует атрибут у ключевого слова в строке %1.
-
-
-
-
- Невозможно открыть исходный файл %1!
-
-
diff --git a/translations/qtconfig_ru.ts b/translations/qtconfig_ru.ts
index 7be0f04..2d435e6 100644
--- a/translations/qtconfig_ru.ts
+++ b/translations/qtconfig_ru.ts
@@ -4,7 +4,7 @@
MainWindow
-
+ Настройки рабочего стола (по умолчанию)
@@ -21,13 +21,13 @@
-
+ Автоматически (по умолчанию)
-
+ Автоматический выбор звукового выхода.
@@ -43,7 +43,7 @@
Экспериментальная поддержка aRts в GStreamer.
-
+ Модуль поддержки GStreamer недоступен.
@@ -71,8 +71,8 @@
-
- Использовать OpenGL, если доступен
+
+ Использовать OpenGL, если возможно
@@ -173,12 +173,12 @@
- &Стиль интерфейса:
+ &Стиль интерфейса:
- Палитра
+ Палитра
@@ -363,17 +363,17 @@
- Эффект C&omboBox:
+ Эффект &выпадающего списка:
- Эффект &ToolTip:
+ Эффект &подсказки:
- Эффект Tool&Box:
+ Эффект панели &инструментов:
@@ -393,7 +393,7 @@
- Специальные возможности
+ Минимальные размеры
@@ -577,7 +577,7 @@ p, li { white-space: pre-wrap; }
-
+ Ctrl+S
--
cgit v0.12
From 3f6d48ad326fd261153cec1b9eab1da00a144066 Mon Sep 17 00:00:00 2001
From: Martin Smith
Date: Mon, 31 May 2010 15:46:21 +0200
Subject: doc: Fixed confusing ownership issue.
Task-number: QTBUG-10934
---
src/gui/widgets/qstackedwidget.cpp | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/src/gui/widgets/qstackedwidget.cpp b/src/gui/widgets/qstackedwidget.cpp
index 2509a21..de8d3e6 100644
--- a/src/gui/widgets/qstackedwidget.cpp
+++ b/src/gui/widgets/qstackedwidget.cpp
@@ -186,11 +186,11 @@ int QStackedWidget::insertWidget(int index, QWidget *widget)
}
/*!
- Removes the given \a widget from the QStackedWidget.
+ Removes \a widget from the QStackedWidget. i.e., \a widget is \e
+ not deleted but simply removed from the stacked layout, causing it
+ to be hidden.
- \bold{Note:} The ownership of \a widget remains the same.
- The widget is \e not deleted, but simply removed from the widget's
- stacked layout, causing it to be hidden.
+ \bold{Note:} Ownership of \a widget reverts to the application.
\sa addWidget(), insertWidget(), currentWidget()
*/
--
cgit v0.12
From e79086f1a90a733cb06fd50773dbcabde0481988 Mon Sep 17 00:00:00 2001
From: Martin Smith
Date: Mon, 31 May 2010 15:53:44 +0200
Subject: qdoc: Added DITA XML generator
At the moment, it is just like the HTML
generator, but with a different class name.
---
tools/qdoc3/pagegenerator.cpp | 106 +++++++++++++++++++++++++++++++++++++++++-
tools/qdoc3/pagegenerator.h | 11 ++++-
tools/qdoc3/qdoc3.pro | 2 +
3 files changed, 116 insertions(+), 3 deletions(-)
diff --git a/tools/qdoc3/pagegenerator.cpp b/tools/qdoc3/pagegenerator.cpp
index f0f14fe..13c83a8 100644
--- a/tools/qdoc3/pagegenerator.cpp
+++ b/tools/qdoc3/pagegenerator.cpp
@@ -45,7 +45,7 @@
#include
#include
-
+#include
#include "pagegenerator.h"
#include "tree.h"
@@ -68,6 +68,110 @@ PageGenerator::~PageGenerator()
endSubPage();
}
+static QRegExp linkTag("(<@link node=\"([^\"]+)\">).*(@link>)");
+static QRegExp funcTag("(<@func target=\"([^\"]*)\">)(.*)(@func>)");
+static QRegExp typeTag("(<@(type|headerfile|func)(?: +[^>]*)?>)(.*)(@\\2>)");
+static QRegExp spanTag("@(?:comment|preprocessor|string|char)>");
+static QRegExp unknownTag("?@[^>]*>");
+
+bool PageGenerator::parseArg(const QString& src,
+ const QString& tag,
+ int* pos,
+ int n,
+ QStringRef* contents,
+ QStringRef* par1,
+ bool debug)
+{
+#define SKIP_CHAR(c) \
+ if (debug) \
+ qDebug() << "looking for " << c << " at " << QString(src.data() + i, n - i); \
+ if (i >= n || src[i] != c) { \
+ if (debug) \
+ qDebug() << " char '" << c << "' not found"; \
+ return false; \
+ } \
+ ++i;
+
+
+#define SKIP_SPACE \
+ while (i < n && src[i] == ' ') \
+ ++i;
+
+ int i = *pos;
+ int j = i;
+
+ // assume "<@" has been parsed outside
+ //SKIP_CHAR('<');
+ //SKIP_CHAR('@');
+
+ if (tag != QStringRef(&src, i, tag.length())) {
+ if (0 && debug)
+ qDebug() << "tag " << tag << " not found at " << i;
+ return false;
+ }
+
+ if (debug)
+ qDebug() << "haystack:" << src << "needle:" << tag << "i:" <).*(@link>)");
+ if (par1) {
+ SKIP_SPACE;
+ // read parameter name
+ j = i;
+ while (i < n && src[i].isLetter())
+ ++i;
+ if (src[i] == '=') {
+ if (debug)
+ qDebug() << "read parameter" << QString(src.data() + j, i - j);
+ SKIP_CHAR('=');
+ SKIP_CHAR('"');
+ // skip parameter name
+ j = i;
+ while (i < n && src[i] != '"')
+ ++i;
+ *par1 = QStringRef(&src, j, i - j);
+ SKIP_CHAR('"');
+ SKIP_SPACE;
+ } else {
+ if (debug)
+ qDebug() << "no optional parameter found";
+ }
+ }
+ SKIP_SPACE;
+ SKIP_CHAR('>');
+
+ // find contents up to closing "@tag>
+ j = i;
+ for (; true; ++i) {
+ if (i + 4 + tag.length() > n)
+ return false;
+ if (src[i] != '<')
+ continue;
+ if (src[i + 1] != '/')
+ continue;
+ if (src[i + 2] != '@')
+ continue;
+ if (tag != QStringRef(&src, i + 3, tag.length()))
+ continue;
+ if (src[i + 3 + tag.length()] != '>')
+ continue;
+ break;
+ }
+
+ *contents = QStringRef(&src, j, i - j);
+
+ i += tag.length() + 4;
+
+ *pos = i;
+ if (debug)
+ qDebug() << " tag " << tag << " found: pos now: " << i;
+ return true;
+#undef SKIP_CHAR
+}
+
/*!
This function is recursive.
*/
diff --git a/tools/qdoc3/pagegenerator.h b/tools/qdoc3/pagegenerator.h
index 7ab7e5e..1aa24a1 100644
--- a/tools/qdoc3/pagegenerator.h
+++ b/tools/qdoc3/pagegenerator.h
@@ -80,10 +80,17 @@ class PageGenerator : public Generator
QString naturalLanguage;
QString outputEncoding;
- QTextCodec *outputCodec;
+ QTextCodec* outputCodec;
+ bool parseArg(const QString& src,
+ const QString& tag,
+ int* pos,
+ int n,
+ QStringRef* contents,
+ QStringRef* par1 = 0,
+ bool debug = false);
private:
- QStack outStreamStack;
+ QStack outStreamStack;
};
QT_END_NAMESPACE
diff --git a/tools/qdoc3/qdoc3.pro b/tools/qdoc3/qdoc3.pro
index 81ff93a..5bedc29 100644
--- a/tools/qdoc3/qdoc3.pro
+++ b/tools/qdoc3/qdoc3.pro
@@ -37,6 +37,7 @@ HEADERS += apigenerator.h \
cppcodeparser.h \
cpptoqsconverter.h \
dcfsection.h \
+ ditaxmlgenerator.h \
doc.h \
editdistance.h \
generator.h \
@@ -81,6 +82,7 @@ SOURCES += apigenerator.cpp \
cppcodeparser.cpp \
cpptoqsconverter.cpp \
dcfsection.cpp \
+ ditaxmlgenerator.cpp \
doc.cpp \
editdistance.cpp \
generator.cpp \
--
cgit v0.12
From 3cc9fc5f0c5e846dcc1ce2e7c6e58c06e1186363 Mon Sep 17 00:00:00 2001
From: Leonardo Sobral Cunha
Date: Mon, 31 May 2010 17:57:52 +0200
Subject: Add my 4.7.0 changes
---
dist/changes-4.7.0 | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/dist/changes-4.7.0 b/dist/changes-4.7.0
index e7b1e84..dbb3add 100644
--- a/dist/changes-4.7.0
+++ b/dist/changes-4.7.0
@@ -52,12 +52,16 @@ QtCore
- QMetaType
* Significantly improved performance of the type() function
+ * [QTBUG-8235] Support QEasingCurve as a built in metatype.
- QState
* [QTBUG-7741] Added a function to get the out-going transitions
- QXmlStreamReader
* [QTBUG-9196] fixed crash when parsing
- QTimer
* singleShot with 0 timeout will now avoid allocating objects
+ - QAbstractAnimation
+ * [QTBUG-10654] Avoids animation with loopCount == 0 to change state
+ to running and stopped.
QtGui
-----
@@ -95,6 +99,8 @@ QtGui
- QGraphicsTextItem
* [QTBUG-7333] Fixed keyboard shortcuts not being triggered when the
the item has focus and something else has the same shortcut sequence.
+ * [QTBUG-10574] Fixed crash when flag "QGraphicsItem::ItemIgnoresTransformations"
+ is set.
- QGraphicsView
* [QTBUG-7438] Fixed viewport cursor getting reset when releasing
--
cgit v0.12
From 33fddc2adf95b56d8309ef9bc11408252140a085 Mon Sep 17 00:00:00 2001
From: Jocelyn Turcotte
Date: Thu, 27 May 2010 21:16:10 +0200
Subject: QTextEngine: skip an unnecessary call to GetDeviceCaps on Windows.
Reviewed-by: Simon Hausmann
---
src/gui/text/qtextengine.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/gui/text/qtextengine.cpp b/src/gui/text/qtextengine.cpp
index d34553f..6359672 100644
--- a/src/gui/text/qtextengine.cpp
+++ b/src/gui/text/qtextengine.cpp
@@ -885,7 +885,7 @@ void QTextEngine::shapeText(int item) const
QFixed letterSpacing = font.d->letterSpacing;
QFixed wordSpacing = font.d->wordSpacing;
- if (letterSpacingIsAbsolute)
+ if (letterSpacingIsAbsolute && letterSpacing.value())
letterSpacing *= font.d->dpi / qt_defaultDpiY();
if (letterSpacing != 0) {
--
cgit v0.12
From 032fb3d54eaaa1fa36ec45b37f5f7356b1137830 Mon Sep 17 00:00:00 2001
From: Jocelyn Turcotte
Date: Tue, 25 May 2010 20:19:14 +0200
Subject: Add the Qt::TextBypassShaping flag.
This allows quick layouting especially with Windows fonts which
contain heavy OpenType logic.
On regular latin text the visual compromize is the loss of kerning,
justification, capitalization, word spacing and letter spacing support.
Reviewed-by: Simon Hausmann
Reviewed-by: Eskil
---
src/corelib/global/qnamespace.h | 3 ++-
src/gui/painting/qpainter.cpp | 17 +++++++++++++++++
src/gui/text/qfontmetrics.cpp | 25 +++++++++++++++++++++++++
src/gui/text/qfontmetrics.h | 1 +
src/gui/text/qtextengine.cpp | 6 ++++++
src/gui/text/qtextengine_p.h | 1 +
tests/auto/qfontmetrics/tst_qfontmetrics.cpp | 15 +++++++++++++++
7 files changed, 67 insertions(+), 1 deletion(-)
diff --git a/src/corelib/global/qnamespace.h b/src/corelib/global/qnamespace.h
index 08674d2..52a24de 100644
--- a/src/corelib/global/qnamespace.h
+++ b/src/corelib/global/qnamespace.h
@@ -236,7 +236,8 @@ public:
TextJustificationForced = 0x10000,
TextForceLeftToRight = 0x20000,
TextForceRightToLeft = 0x40000,
- TextLongestVariant = 0x80000
+ TextLongestVariant = 0x80000,
+ TextBypassShaping = 0x100000
#if defined(QT3_SUPPORT) && !defined(Q_MOC_RUN)
,SingleLine = TextSingleLine,
diff --git a/src/gui/painting/qpainter.cpp b/src/gui/painting/qpainter.cpp
index 657229a..54e0aa3 100644
--- a/src/gui/painting/qpainter.cpp
+++ b/src/gui/painting/qpainter.cpp
@@ -5937,6 +5937,23 @@ void QPainter::drawText(const QPointF &p, const QString &str, int tf, int justif
if (!d->engine || str.isEmpty() || pen().style() == Qt::NoPen)
return;
+ if (tf & Qt::TextBypassShaping) {
+ // Skip harfbuzz complex shaping, shape using glyph advances only
+ int len = str.length();
+ int numGlyphs = len;
+ QVarLengthGlyphLayoutArray glyphs(len);
+ QFontEngine *fontEngine = d->state->font.d->engineForScript(QUnicodeTables::Common);
+ if (!fontEngine->stringToCMap(str.data(), len, &glyphs, &numGlyphs, 0)) {
+ glyphs.resize(numGlyphs);
+ if (!fontEngine->stringToCMap(str.data(), len, &glyphs, &numGlyphs, 0))
+ Q_ASSERT_X(false, Q_FUNC_INFO, "stringToCMap shouldn't fail twice");
+ }
+
+ QTextItemInt gf(glyphs, &d->state->font, fontEngine);
+ drawTextItem(p, gf);
+ return;
+ }
+
QStackTextEngine engine(str, d->state->font);
engine.option.setTextDirection(d->state->layoutDirection);
if (tf & (Qt::TextForceLeftToRight|Qt::TextForceRightToLeft)) {
diff --git a/src/gui/text/qfontmetrics.cpp b/src/gui/text/qfontmetrics.cpp
index 5163c94..d02e841 100644
--- a/src/gui/text/qfontmetrics.cpp
+++ b/src/gui/text/qfontmetrics.cpp
@@ -526,6 +526,14 @@ int QFontMetrics::rightBearing(QChar ch) const
*/
int QFontMetrics::width(const QString &text, int len) const
{
+ return width(text, len, 0);
+}
+
+/*!
+ \internal
+*/
+int QFontMetrics::width(const QString &text, int len, int flags) const
+{
int pos = text.indexOf(QLatin1Char('\x9c'));
if (pos != -1) {
len = (len < 0) ? pos : qMin(pos, len);
@@ -535,6 +543,23 @@ int QFontMetrics::width(const QString &text, int len) const
if (len == 0)
return 0;
+ if (flags & Qt::TextBypassShaping) {
+ // Skip harfbuzz complex shaping, only use advances
+ int numGlyphs = len;
+ QVarLengthGlyphLayoutArray glyphs(numGlyphs);
+ QFontEngine *engine = d->engineForScript(QUnicodeTables::Common);
+ if (!engine->stringToCMap(text.data(), len, &glyphs, &numGlyphs, 0)) {
+ glyphs.resize(numGlyphs);
+ if (!engine->stringToCMap(text.data(), len, &glyphs, &numGlyphs, 0))
+ Q_ASSERT_X(false, Q_FUNC_INFO, "stringToCMap shouldn't fail twice");
+ }
+
+ QFixed width;
+ for (int i = 0; i < numGlyphs; ++i)
+ width += glyphs.advances_x[i];
+ return qRound(width);
+ }
+
QStackTextEngine layout(text, d.data());
layout.ignoreBidi = true;
return qRound(layout.width(0, len));
diff --git a/src/gui/text/qfontmetrics.h b/src/gui/text/qfontmetrics.h
index dca4b93..2518b54 100644
--- a/src/gui/text/qfontmetrics.h
+++ b/src/gui/text/qfontmetrics.h
@@ -89,6 +89,7 @@ public:
int leftBearing(QChar) const;
int rightBearing(QChar) const;
int width(const QString &, int len = -1) const;
+ int width(const QString &, int len, int flags) const;
int width(QChar) const;
int charWidth(const QString &str, int pos) const;
diff --git a/src/gui/text/qtextengine.cpp b/src/gui/text/qtextengine.cpp
index 6359672..3486264 100644
--- a/src/gui/text/qtextengine.cpp
+++ b/src/gui/text/qtextengine.cpp
@@ -2648,6 +2648,12 @@ QTextItemInt::QTextItemInt(const QScriptItem &si, QFont *font, const QTextCharFo
flags |= QTextItem::StrikeOut;
}
+QTextItemInt::QTextItemInt(const QGlyphLayout &g, QFont *font, QFontEngine *fe)
+ : flags(0), justified(false), underlineStyle(QTextCharFormat::NoUnderline),
+ num_chars(0), chars(0), logClusters(0), f(font), fontEngine(fe), glyphs(g)
+{
+}
+
QTextItemInt QTextItemInt::midItem(QFontEngine *fontEngine, int firstGlyphIndex, int numGlyphs) const
{
QTextItemInt ti = *this;
diff --git a/src/gui/text/qtextengine_p.h b/src/gui/text/qtextengine_p.h
index d92148f..00b1392 100644
--- a/src/gui/text/qtextengine_p.h
+++ b/src/gui/text/qtextengine_p.h
@@ -311,6 +311,7 @@ public:
logClusters(0), f(0), fontEngine(0)
{}
QTextItemInt(const QScriptItem &si, QFont *font, const QTextCharFormat &format = QTextCharFormat());
+ QTextItemInt(const QGlyphLayout &g, QFont *font, QFontEngine *fe);
/// copy the structure items, adjusting the glyphs arrays to the right subarrays.
/// the width of the returned QTextItemInt is not adjusted, for speed reasons
diff --git a/tests/auto/qfontmetrics/tst_qfontmetrics.cpp b/tests/auto/qfontmetrics/tst_qfontmetrics.cpp
index 5d73764..81e064e 100644
--- a/tests/auto/qfontmetrics/tst_qfontmetrics.cpp
+++ b/tests/auto/qfontmetrics/tst_qfontmetrics.cpp
@@ -71,6 +71,7 @@ private slots:
void elidedText();
void veryNarrowElidedText();
void averageCharWidth();
+ void bypassShaping();
void elidedMultiLength();
void elidedMultiLengthF();
void bearingIncludedInBoundingRect();
@@ -219,6 +220,20 @@ void tst_QFontMetrics::averageCharWidth()
QVERIFY(fmf.averageCharWidth() != 0);
}
+void tst_QFontMetrics::bypassShaping()
+{
+ QFont f;
+ QFontMetrics fm(f);
+ QString text = " A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z";
+ int textWidth = fm.width(text, -1, Qt::TextBypassShaping);
+ QVERIFY(textWidth != 0);
+ int charsWidth = 0;
+ for (int i = 0; i < text.size(); ++i)
+ charsWidth += fm.width(text[i]);
+ // This assertion is needed in QtWebKit's WebCore::Font::offsetForPositionForSimpleText
+ QCOMPARE(textWidth, charsWidth);
+}
+
template void elidedMultiLength_helper()
{
QString text1 = "Long Text 1\x9cShorter\x9csmall";
--
cgit v0.12
From 450508cf9a19473644de20e64bb1098050806182 Mon Sep 17 00:00:00 2001
From: Aaron McCarthy
Date: Tue, 1 Jun 2010 15:03:15 +1000
Subject: Fix build failure on Symbian 3.1.
---
src/plugins/bearer/symbian/symbianengine.cpp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/plugins/bearer/symbian/symbianengine.cpp b/src/plugins/bearer/symbian/symbianengine.cpp
index 8c26cf0..ab1ba28 100644
--- a/src/plugins/bearer/symbian/symbianengine.cpp
+++ b/src/plugins/bearer/symbian/symbianengine.cpp
@@ -389,9 +389,9 @@ void SymbianEngine::updateConfigurationsL()
QNetworkConfigurationPrivatePointer ptr(cpPriv);
accessPointConfigurations.insert(ident, ptr);
- locker.unlock();
+ mutex.unlock();
emit configurationAdded(ptr);
- locker.relock();
+ mutex.lock();
} else {
delete cpPriv;
}
--
cgit v0.12
From 15f331834833e34c1faf437b6fe3d3ef58691651 Mon Sep 17 00:00:00 2001
From: Martin Smith
Date: Tue, 1 Jun 2010 08:48:06 +0200
Subject: doc: Added DITA XML generator
---
tools/qdoc3/ditaxmlgenerator.cpp | 4773 ++++++++++++++++++++++++++++++++++++++
tools/qdoc3/ditaxmlgenerator.h | 358 +++
2 files changed, 5131 insertions(+)
create mode 100644 tools/qdoc3/ditaxmlgenerator.cpp
create mode 100644 tools/qdoc3/ditaxmlgenerator.h
diff --git a/tools/qdoc3/ditaxmlgenerator.cpp b/tools/qdoc3/ditaxmlgenerator.cpp
new file mode 100644
index 0000000..a64e8e7
--- /dev/null
+++ b/tools/qdoc3/ditaxmlgenerator.cpp
@@ -0,0 +1,4773 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of the tools applications of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+/*
+ ditaxmlgenerator.cpp
+*/
+
+#include "codemarker.h"
+#include "codeparser.h"
+#include "helpprojectwriter.h"
+#include "ditaxmlgenerator.h"
+#include "node.h"
+#include "separator.h"
+#include "tree.h"
+#include
+
+#include
+#include
+#include
+#include
+
+QT_BEGIN_NAMESPACE
+
+#define COMMAND_VERSION Doc::alias("version")
+int DitaXmlGenerator::id = 0;
+
+QString DitaXmlGenerator::sinceTitles[] =
+ {
+ " New Namespaces",
+ " New Classes",
+ " New Member Functions",
+ " New Functions in Namespaces",
+ " New Global Functions",
+ " New Macros",
+ " New Enum Types",
+ " New Typedefs",
+ " New Properties",
+ " New Variables",
+ " New QML Elements",
+ " New Qml Properties",
+ " New Qml Signals",
+ " New Qml Methods",
+ ""
+ };
+
+static bool showBrokenLinks = false;
+
+static void addLink(const QString &linkTarget,
+ const QStringRef &nestedStuff,
+ QString *res)
+{
+ if (!linkTarget.isEmpty()) {
+ *res += "";
+ *res += nestedStuff;
+ *res += "";
+ }
+ else {
+ *res += nestedStuff;
+ }
+}
+
+
+DitaXmlGenerator::DitaXmlGenerator()
+ : helpProjectWriter(0),
+ inLink(false),
+ inContents(false),
+ inSectionHeading(false),
+ inTableHeader(false),
+ numTableRows(0),
+ threeColumnEnumValueTable(true),
+ offlineDocs(true),
+ funcLeftParen("\\S(\\()"),
+ myTree(0),
+ slow(false),
+ obsoleteLinks(false)
+{
+}
+
+DitaXmlGenerator::~DitaXmlGenerator()
+{
+ if (helpProjectWriter)
+ delete helpProjectWriter;
+}
+
+void DitaXmlGenerator::initializeGenerator(const Config &config)
+{
+ static const struct {
+ const char *key;
+ const char *left;
+ const char *right;
+ } defaults[] = {
+ { ATOM_FORMATTING_BOLD, "", "" },
+ { ATOM_FORMATTING_INDEX, "" },
+ { ATOM_FORMATTING_ITALIC, "", "" },
+ { ATOM_FORMATTING_PARAMETER, "", "" },
+ { ATOM_FORMATTING_SUBSCRIPT, "", "" },
+ { ATOM_FORMATTING_SUPERSCRIPT, "", "" },
+ { ATOM_FORMATTING_TELETYPE, "", "" },
+ { ATOM_FORMATTING_UNDERLINE, "", "" },
+ { 0, 0, 0 }
+ };
+
+ Generator::initializeGenerator(config);
+ obsoleteLinks = config.getBool(QLatin1String(CONFIG_OBSOLETELINKS));
+ setImageFileExtensions(QStringList() << "png" << "jpg" << "jpeg" << "gif");
+ int i = 0;
+ while (defaults[i].key) {
+ formattingLeftMap().insert(defaults[i].key, defaults[i].left);
+ formattingRightMap().insert(defaults[i].key, defaults[i].right);
+ i++;
+ }
+
+ style = config.getString(DitaXmlGenerator::format() +
+ Config::dot +
+ DITAXMLGENERATOR_STYLE);
+ postHeader = config.getString(DitaXmlGenerator::format() +
+ Config::dot +
+ DITAXMLGENERATOR_POSTHEADER);
+ postPostHeader = config.getString(DitaXmlGenerator::format() +
+ Config::dot +
+ DITAXMLGENERATOR_POSTPOSTHEADER);
+ footer = config.getString(DitaXmlGenerator::format() +
+ Config::dot +
+ DITAXMLGENERATOR_FOOTER);
+ address = config.getString(DitaXmlGenerator::format() +
+ Config::dot +
+ DITAXMLGENERATOR_ADDRESS);
+ pleaseGenerateMacRef = config.getBool(DitaXmlGenerator::format() +
+ Config::dot +
+ DITAXMLGENERATOR_GENERATEMACREFS);
+
+ project = config.getString(CONFIG_PROJECT);
+ offlineDocs = !config.getBool(CONFIG_ONLINE);
+ projectDescription = config.getString(CONFIG_DESCRIPTION);
+ if (projectDescription.isEmpty() && !project.isEmpty())
+ projectDescription = project + " Reference Documentation";
+
+ projectUrl = config.getString(CONFIG_URL);
+
+ outputEncoding = config.getString(CONFIG_OUTPUTENCODING);
+ if (outputEncoding.isEmpty())
+ outputEncoding = QLatin1String("ISO-8859-1");
+ outputCodec = QTextCodec::codecForName(outputEncoding.toLocal8Bit());
+
+ naturalLanguage = config.getString(CONFIG_NATURALLANGUAGE);
+ if (naturalLanguage.isEmpty())
+ naturalLanguage = QLatin1String("en");
+
+ QSet editionNames = config.subVars(CONFIG_EDITION);
+ QSet::ConstIterator edition = editionNames.begin();
+ while (edition != editionNames.end()) {
+ QString editionName = *edition;
+ QStringList editionModules = config.getStringList(CONFIG_EDITION +
+ Config::dot +
+ editionName +
+ Config::dot +
+ "modules");
+ QStringList editionGroups = config.getStringList(CONFIG_EDITION +
+ Config::dot +
+ editionName +
+ Config::dot +
+ "groups");
+
+ if (!editionModules.isEmpty())
+ editionModuleMap[editionName] = editionModules;
+ if (!editionGroups.isEmpty())
+ editionGroupMap[editionName] = editionGroups;
+
+ ++edition;
+ }
+
+ slow = config.getBool(CONFIG_SLOW);
+
+ stylesheets = config.getStringList(DitaXmlGenerator::format() +
+ Config::dot +
+ DITAXMLGENERATOR_STYLESHEETS);
+ customHeadElements = config.getStringList(DitaXmlGenerator::format() +
+ Config::dot +
+ DITAXMLGENERATOR_CUSTOMHEADELEMENTS);
+ codeIndent = config.getInt(CONFIG_CODEINDENT);
+
+ helpProjectWriter = new HelpProjectWriter(config,
+ project.toLower() +
+ ".qhp");
+}
+
+void DitaXmlGenerator::terminateGenerator()
+{
+ Generator::terminateGenerator();
+}
+
+QString DitaXmlGenerator::format()
+{
+ return "DITAXML";
+}
+
+/*!
+ This is where the html files and dcf files are written.
+ \note The html file generation is done in the base class,
+ PageGenerator::generateTree().
+ */
+void DitaXmlGenerator::generateTree(const Tree *tree, CodeMarker *marker)
+{
+#if 0
+ // Copy the stylesheets from the directory containing the qdocconf file.
+ // ### This should be changed to use a special directory in doc/src.
+ QStringList::ConstIterator styleIter = stylesheets.begin();
+ QDir configPath = QDir::current();
+ while (styleIter != stylesheets.end()) {
+ QString filePath = configPath.absoluteFilePath(*styleIter);
+ Config::copyFile(Location(), filePath, filePath, outputDir());
+ ++styleIter;
+ }
+#endif
+ myTree = tree;
+ nonCompatClasses.clear();
+ mainClasses.clear();
+ compatClasses.clear();
+ obsoleteClasses.clear();
+ moduleClassMap.clear();
+ moduleNamespaceMap.clear();
+ funcIndex.clear();
+ legaleseTexts.clear();
+ serviceClasses.clear();
+ findAllClasses(tree->root());
+ findAllFunctions(tree->root());
+ findAllLegaleseTexts(tree->root());
+ findAllNamespaces(tree->root());
+#ifdef ZZZ_QDOC_QML
+ findAllQmlClasses(tree->root());
+#endif
+ findAllSince(tree->root());
+
+ PageGenerator::generateTree(tree, marker);
+
+ dcfClassesRoot.ref = "classes.html";
+ dcfClassesRoot.title = "Classes";
+ qSort(dcfClassesRoot.subsections);
+
+ dcfOverviewsRoot.ref = "overviews.html";
+ dcfOverviewsRoot.title = "Overviews";
+ qSort(dcfOverviewsRoot.subsections);
+
+ dcfExamplesRoot.ref = "examples.html";
+ dcfExamplesRoot.title = "Tutorial & Examples";
+ qSort(dcfExamplesRoot.subsections);
+
+ DcfSection qtRoot;
+ appendDcfSubSection(&qtRoot, dcfClassesRoot);
+ appendDcfSubSection(&qtRoot, dcfOverviewsRoot);
+ appendDcfSubSection(&qtRoot, dcfExamplesRoot);
+
+ generateDcf(project.toLower().simplified().replace(" ", "-"),
+ "index.html",
+ projectDescription, qtRoot);
+ generateDcf("designer",
+ "designer-manual.html",
+ "Qt Designer Manual",
+ dcfDesignerRoot);
+ generateDcf("linguist",
+ "linguist-manual.html",
+ "Qt Linguist Manual",
+ dcfLinguistRoot);
+ generateDcf("assistant",
+ "assistant-manual.html",
+ "Qt Assistant Manual",
+ dcfAssistantRoot);
+ generateDcf("qmake",
+ "qmake-manual.html",
+ "qmake Manual",
+ dcfQmakeRoot);
+
+ QString fileBase = project.toLower().simplified().replace(" ", "-");
+ generateIndex(fileBase, projectUrl, projectDescription);
+ generatePageIndex(outputDir() + "/" + fileBase + ".pageindex", marker);
+
+ helpProjectWriter->generate(myTree);
+}
+
+void DitaXmlGenerator::startText(const Node * /* relative */,
+ CodeMarker * /* marker */)
+{
+ inLink = false;
+ inContents = false;
+ inSectionHeading = false;
+ inTableHeader = false;
+ numTableRows = 0;
+ threeColumnEnumValueTable = true;
+ link.clear();
+ sectionNumber.clear();
+}
+
+/*!
+ Generate html from an instance of Atom.
+ */
+int DitaXmlGenerator::generateAtom(const Atom *atom,
+ const Node *relative,
+ CodeMarker *marker)
+{
+ int skipAhead = 0;
+ static bool in_para = false;
+
+ switch (atom->type()) {
+ case Atom::AbstractLeft:
+ break;
+ case Atom::AbstractRight:
+ break;
+ case Atom::AutoLink:
+ if (!inLink && !inContents && !inSectionHeading) {
+ const Node *node = 0;
+ QString link = getLink(atom, relative, marker, &node);
+ if (!link.isEmpty()) {
+ beginLink(link, node, relative, marker);
+ generateLink(atom, relative, marker);
+ endLink();
+ }
+ else {
+ out() << protectEnc(atom->string());
+ }
+ }
+ else {
+ out() << protectEnc(atom->string());
+ }
+ break;
+ case Atom::BaseName:
+ break;
+ case Atom::BriefLeft:
+ if (relative->type() == Node::Fake) {
+ skipAhead = skipAtoms(atom, Atom::BriefRight);
+ break;
+ }
+
+ out() << "
The following class members are part of the "
+ "Qt 3 support layer. "
+ "They are provided to help you port old code to Qt 4. We advise against "
+ "using them in new code.
\n";
+ }
+ else {
+ out() << "
The following class members are obsolete. "
+ << "They are provided to keep old source code working. "
+ << "We strongly advise against using them in new code.
\n";
+}
+
+/*!
+ This function finds the common prefix of the names of all
+ the classes in \a classMap and then generates a compact
+ list of the class names alphabetized on the part of the
+ name not including the common prefix. You can tell the
+ function to use \a comonPrefix as the common prefix, but
+ normally you let it figure it out itself by looking at
+ the name of the first and last classes in \a classMap.
+ */
+void DitaXmlGenerator::generateCompactList(const Node *relative,
+ CodeMarker *marker,
+ const NodeMap &classMap,
+ bool includeAlphabet,
+ QString commonPrefix)
+{
+ const int NumParagraphs = 37; // '0' to '9', 'A' to 'Z', '_'
+
+ if (classMap.isEmpty())
+ return;
+
+ /*
+ If commonPrefix is not empty, then the caller knows what
+ the common prefix is and has passed it in, so just use that
+ one.
+ */
+ int commonPrefixLen = commonPrefix.length();
+ if (commonPrefixLen == 0) {
+ QString first;
+ QString last;
+
+ /*
+ The caller didn't pass in a common prefix, so get the common
+ prefix by looking at the class names of the first and last
+ classes in the class map. Discard any namespace names and
+ just use the bare class names. For Qt, the prefix is "Q".
+
+ Note that the algorithm used here to derive the common prefix
+ from the first and last classes in alphabetical order (QAccel
+ and QXtWidget in Qt 2.1), fails if either class name does not
+ begin with Q.
+ */
+
+ NodeMap::const_iterator iter = classMap.begin();
+ while (iter != classMap.end()) {
+ if (!iter.key().contains("::")) {
+ first = iter.key();
+ break;
+ }
+ ++iter;
+ }
+
+ if (first.isEmpty())
+ first = classMap.begin().key();
+
+ iter = classMap.end();
+ while (iter != classMap.begin()) {
+ --iter;
+ if (!iter.key().contains("::")) {
+ last = iter.key();
+ break;
+ }
+ }
+
+ if (last.isEmpty())
+ last = classMap.begin().key();
+
+ if (classMap.size() > 1) {
+ while (commonPrefixLen < first.length() + 1 &&
+ commonPrefixLen < last.length() + 1 &&
+ first[commonPrefixLen] == last[commonPrefixLen])
+ ++commonPrefixLen;
+ }
+
+ commonPrefix = first.left(commonPrefixLen);
+ }
+
+ /*
+ Divide the data into 37 paragraphs: 0, ..., 9, A, ..., Z,
+ underscore (_). QAccel will fall in paragraph 10 (A) and
+ QXtWidget in paragraph 33 (X). This is the only place where we
+ assume that NumParagraphs is 37. Each paragraph is a NodeMap.
+ */
+ NodeMap paragraph[NumParagraphs+1];
+ QString paragraphName[NumParagraphs+1];
+ QSet usedParagraphNames;
+
+ NodeMap::ConstIterator c = classMap.begin();
+ while (c != classMap.end()) {
+ QStringList pieces = c.key().split("::");
+ QString key;
+ int idx = commonPrefixLen;
+ if (!pieces.last().startsWith(commonPrefix))
+ idx = 0;
+ if (pieces.size() == 1)
+ key = pieces.last().mid(idx).toLower();
+ else
+ key = pieces.last().toLower();
+
+ int paragraphNr = NumParagraphs - 1;
+
+ if (key[0].digitValue() != -1) {
+ paragraphNr = key[0].digitValue();
+ }
+ else if (key[0] >= QLatin1Char('a') && key[0] <= QLatin1Char('z')) {
+ paragraphNr = 10 + key[0].unicode() - 'a';
+ }
+
+ paragraphName[paragraphNr] = key[0].toUpper();
+ usedParagraphNames.insert(key[0].toLower().cell());
+ paragraph[paragraphNr].insert(key, c.value());
+ ++c;
+ }
+
+ /*
+ Each paragraph j has a size: paragraph[j].count(). In the
+ discussion, we will assume paragraphs 0 to 5 will have sizes
+ 3, 1, 4, 1, 5, 9.
+
+ We now want to compute the paragraph offset. Paragraphs 0 to 6
+ start at offsets 0, 3, 4, 8, 9, 14, 23.
+ */
+ int paragraphOffset[NumParagraphs + 1]; // 37 + 1
+ paragraphOffset[0] = 0;
+ for (int i=0; i";
+ for (int i = 0; i < 26; i++) {
+ QChar ch('a' + i);
+ if (usedParagraphNames.contains(char('a' + i)))
+ out() << QString("%2 ").arg(ch).arg(ch.toUpper());
+ }
+ out() << "\n";
+ }
+
+ /*
+ Output a
element to contain all the
elements.
+ */
+ out() << "
\n";
+
+ for (int i=0; i.
+ */
+ if (curParOffset == 0) {
+ if (i > 0)
+ out() << "\n";
+ if (++numTableRows % 2 == 1)
+ out() << "
The " << protectEnc(enume->flagsType()->name())
+ << " type is a typedef for "
+ << "QFlags<"
+ << protectEnc(enume->name())
+ << ">. It stores an OR combination of "
+ << protectEnc(enume->name())
+ << " values.
\n";
+ }
+ }
+ generateAlsoList(node, marker);
+}
+
+void DitaXmlGenerator::findAllClasses(const InnerNode *node)
+{
+ NodeList::const_iterator c = node->childNodes().constBegin();
+ while (c != node->childNodes().constEnd()) {
+ if ((*c)->access() != Node::Private && (*c)->url().isEmpty()) {
+ if ((*c)->type() == Node::Class && !(*c)->doc().isEmpty()) {
+ QString className = (*c)->name();
+ if ((*c)->parent() &&
+ (*c)->parent()->type() == Node::Namespace &&
+ !(*c)->parent()->name().isEmpty())
+ className = (*c)->parent()->name()+"::"+className;
+
+ if (!(static_cast(*c))->hideFromMainList()) {
+ if ((*c)->status() == Node::Compat) {
+ compatClasses.insert(className, *c);
+ }
+ else if ((*c)->status() == Node::Obsolete) {
+ obsoleteClasses.insert(className, *c);
+ }
+ else {
+ nonCompatClasses.insert(className, *c);
+ if ((*c)->status() == Node::Main)
+ mainClasses.insert(className, *c);
+ }
+ }
+
+ QString moduleName = (*c)->moduleName();
+ if (moduleName == "Qt3SupportLight") {
+ moduleClassMap[moduleName].insert((*c)->name(), *c);
+ moduleName = "Qt3Support";
+ }
+ if (!moduleName.isEmpty())
+ moduleClassMap[moduleName].insert((*c)->name(), *c);
+
+ QString serviceName =
+ (static_cast(*c))->serviceName();
+ if (!serviceName.isEmpty())
+ serviceClasses.insert(serviceName, *c);
+ }
+ else if ((*c)->isInnerNode()) {
+ findAllClasses(static_cast(*c));
+ }
+ }
+ ++c;
+ }
+}
+
+/*!
+ For generating the "New Classes... in 4.6" section on the
+ What's New in 4.6" page.
+ */
+void DitaXmlGenerator::findAllSince(const InnerNode *node)
+{
+ NodeList::const_iterator child = node->childNodes().constBegin();
+ while (child != node->childNodes().constEnd()) {
+ QString sinceVersion = (*child)->since();
+ if (((*child)->access() != Node::Private) && !sinceVersion.isEmpty()) {
+ NewSinceMaps::iterator nsmap = newSinceMaps.find(sinceVersion);
+ if (nsmap == newSinceMaps.end())
+ nsmap = newSinceMaps.insert(sinceVersion,NodeMultiMap());
+ NewClassMaps::iterator ncmap = newClassMaps.find(sinceVersion);
+ if (ncmap == newClassMaps.end())
+ ncmap = newClassMaps.insert(sinceVersion,NodeMap());
+ NewClassMaps::iterator nqcmap = newQmlClassMaps.find(sinceVersion);
+ if (nqcmap == newQmlClassMaps.end())
+ nqcmap = newQmlClassMaps.insert(sinceVersion,NodeMap());
+
+ if ((*child)->type() == Node::Function) {
+ FunctionNode *func = static_cast(*child);
+ if ((func->status() > Node::Obsolete) &&
+ (func->metaness() != FunctionNode::Ctor) &&
+ (func->metaness() != FunctionNode::Dtor)) {
+ nsmap.value().insert(func->name(),(*child));
+ }
+ }
+ else if ((*child)->url().isEmpty()) {
+ if ((*child)->type() == Node::Class && !(*child)->doc().isEmpty()) {
+ QString className = (*child)->name();
+ if ((*child)->parent() &&
+ (*child)->parent()->type() == Node::Namespace &&
+ !(*child)->parent()->name().isEmpty())
+ className = (*child)->parent()->name()+"::"+className;
+ nsmap.value().insert(className,(*child));
+ ncmap.value().insert(className,(*child));
+ }
+ else if ((*child)->subType() == Node::QmlClass) {
+ QString className = (*child)->name();
+ if ((*child)->parent() &&
+ (*child)->parent()->type() == Node::Namespace &&
+ !(*child)->parent()->name().isEmpty())
+ className = (*child)->parent()->name()+"::"+className;
+ nsmap.value().insert(className,(*child));
+ nqcmap.value().insert(className,(*child));
+ }
+ }
+ else {
+ QString name = (*child)->name();
+ if ((*child)->parent() &&
+ (*child)->parent()->type() == Node::Namespace &&
+ !(*child)->parent()->name().isEmpty())
+ name = (*child)->parent()->name()+"::"+name;
+ nsmap.value().insert(name,(*child));
+ }
+ if ((*child)->isInnerNode()) {
+ findAllSince(static_cast(*child));
+ }
+ }
+ ++child;
+ }
+}
+
+#if 0
+ const QRegExp versionSeparator("[\\-\\.]");
+ const int minorIndex = version.indexOf(versionSeparator);
+ const int patchIndex = version.indexOf(versionSeparator, minorIndex+1);
+ version = version.left(patchIndex);
+#endif
+
+void DitaXmlGenerator::findAllFunctions(const InnerNode *node)
+{
+ NodeList::ConstIterator c = node->childNodes().begin();
+ while (c != node->childNodes().end()) {
+ if ((*c)->access() != Node::Private) {
+ if ((*c)->isInnerNode() && (*c)->url().isEmpty()) {
+ findAllFunctions(static_cast(*c));
+ }
+ else if ((*c)->type() == Node::Function) {
+ const FunctionNode *func = static_cast(*c);
+ if ((func->status() > Node::Obsolete) &&
+ (func->metaness() != FunctionNode::Ctor) &&
+ (func->metaness() != FunctionNode::Dtor)) {
+ funcIndex[(*c)->name()].insert(myTree->fullDocumentName((*c)->parent()), *c);
+ }
+ }
+ }
+ ++c;
+ }
+}
+
+void DitaXmlGenerator::findAllLegaleseTexts(const InnerNode *node)
+{
+ NodeList::ConstIterator c = node->childNodes().begin();
+ while (c != node->childNodes().end()) {
+ if ((*c)->access() != Node::Private) {
+ if (!(*c)->doc().legaleseText().isEmpty())
+ legaleseTexts.insertMulti((*c)->doc().legaleseText(), *c);
+ if ((*c)->isInnerNode())
+ findAllLegaleseTexts(static_cast(*c));
+ }
+ ++c;
+ }
+}
+
+void DitaXmlGenerator::findAllNamespaces(const InnerNode *node)
+{
+ NodeList::ConstIterator c = node->childNodes().begin();
+ while (c != node->childNodes().end()) {
+ if ((*c)->access() != Node::Private) {
+ if ((*c)->isInnerNode() && (*c)->url().isEmpty()) {
+ findAllNamespaces(static_cast(*c));
+ if ((*c)->type() == Node::Namespace) {
+ const NamespaceNode *nspace = static_cast(*c);
+ // Ensure that the namespace's name is not empty (the root
+ // namespace has no name).
+ if (!nspace->name().isEmpty()) {
+ namespaceIndex.insert(nspace->name(), *c);
+ QString moduleName = (*c)->moduleName();
+ if (moduleName == "Qt3SupportLight") {
+ moduleNamespaceMap[moduleName].insert((*c)->name(), *c);
+ moduleName = "Qt3Support";
+ }
+ if (!moduleName.isEmpty())
+ moduleNamespaceMap[moduleName].insert((*c)->name(), *c);
+ }
+ }
+ }
+ }
+ ++c;
+ }
+}
+
+#ifdef ZZZ_QDOC_QML
+/*!
+ This function finds all the qml element nodes and
+ stores them in a map for later use.
+ */
+void DitaXmlGenerator::findAllQmlClasses(const InnerNode *node)
+{
+ NodeList::const_iterator c = node->childNodes().constBegin();
+ while (c != node->childNodes().constEnd()) {
+ if ((*c)->type() == Node::Fake) {
+ const FakeNode* fakeNode = static_cast(*c);
+ if (fakeNode->subType() == Node::QmlClass) {
+ const QmlClassNode* qmlNode =
+ static_cast(fakeNode);
+ const Node* n = qmlNode->classNode();
+ }
+ qmlClasses.insert(fakeNode->name(),*c);
+ }
+ ++c;
+ }
+}
+#endif
+
+int DitaXmlGenerator::hOffset(const Node *node)
+{
+ switch (node->type()) {
+ case Node::Namespace:
+ case Node::Class:
+ return 2;
+ case Node::Fake:
+ return 1;
+#if 0
+ if (node->doc().briefText().isEmpty())
+ return 1;
+ else
+ return 2;
+#endif
+ case Node::Enum:
+ case Node::Typedef:
+ case Node::Function:
+ case Node::Property:
+ default:
+ return 3;
+ }
+}
+
+bool DitaXmlGenerator::isThreeColumnEnumValueTable(const Atom *atom)
+{
+ while (atom != 0 && !(atom->type() == Atom::ListRight && atom->string() == ATOM_LIST_VALUE)) {
+ if (atom->type() == Atom::ListItemLeft && !matchAhead(atom, Atom::ListItemRight))
+ return true;
+ atom = atom->next();
+ }
+ return false;
+}
+
+const Node *DitaXmlGenerator::findNodeForTarget(const QString &target,
+ const Node *relative,
+ CodeMarker *marker,
+ const Atom *atom)
+{
+ const Node *node = 0;
+
+ if (target.isEmpty()) {
+ node = relative;
+ }
+ else if (target.endsWith(".html")) {
+ node = myTree->root()->findNode(target, Node::Fake);
+ }
+ else if (marker) {
+ node = marker->resolveTarget(target, myTree, relative);
+ if (!node)
+ node = myTree->findFakeNodeByTitle(target);
+ if (!node && atom) {
+ node = myTree->findUnambiguousTarget(target,
+ *const_cast(&atom));
+ }
+ }
+
+ if (!node)
+ relative->doc().location().warning(tr("Cannot link to '%1'").arg(target));
+
+ return node;
+}
+
+const QPair DitaXmlGenerator::anchorForNode(const Node *node)
+{
+ QPair anchorPair;
+
+ anchorPair.first = PageGenerator::fileName(node);
+ if (node->type() == Node::Fake) {
+ const FakeNode *fakeNode = static_cast(node);
+ anchorPair.second = fakeNode->title();
+ }
+
+ return anchorPair;
+}
+
+QString DitaXmlGenerator::getLink(const Atom *atom,
+ const Node *relative,
+ CodeMarker *marker,
+ const Node** node)
+{
+ QString link;
+ *node = 0;
+ inObsoleteLink = false;
+
+ if (atom->string().contains(":") &&
+ (atom->string().startsWith("file:")
+ || atom->string().startsWith("http:")
+ || atom->string().startsWith("https:")
+ || atom->string().startsWith("ftp:")
+ || atom->string().startsWith("mailto:"))) {
+
+ link = atom->string();
+ }
+ else {
+ QStringList path;
+ if (atom->string().contains('#')) {
+ path = atom->string().split('#');
+ }
+ else {
+ path.append(atom->string());
+ }
+
+ Atom *targetAtom = 0;
+
+ QString first = path.first().trimmed();
+ if (first.isEmpty()) {
+ *node = relative;
+ }
+ else if (first.endsWith(".html")) {
+ *node = myTree->root()->findNode(first, Node::Fake);
+ }
+ else {
+ *node = marker->resolveTarget(first, myTree, relative);
+ if (!*node) {
+ *node = myTree->findFakeNodeByTitle(first);
+ }
+ if (!*node) {
+ *node = myTree->findUnambiguousTarget(first, targetAtom);
+ }
+ }
+
+ if (*node) {
+ if (!(*node)->url().isEmpty())
+ return (*node)->url();
+ else
+ path.removeFirst();
+ }
+ else {
+ *node = relative;
+ }
+
+ if (*node) {
+ if ((*node)->status() == Node::Obsolete) {
+ if (relative) {
+ if (relative->parent() != *node) {
+ if (relative->status() != Node::Obsolete) {
+ bool porting = false;
+ if (relative->type() == Node::Fake) {
+ const FakeNode* fake = static_cast(relative);
+ if (fake->title().startsWith("Porting"))
+ porting = true;
+ }
+ QString name = marker->plainFullName(relative);
+ if (!porting && !name.startsWith("Q3")) {
+ if (obsoleteLinks) {
+ relative->doc().location().warning(tr("Link to obsolete item '%1' in %2")
+ .arg(atom->string())
+ .arg(name));
+ }
+ inObsoleteLink = true;
+ }
+ }
+ }
+ }
+ else {
+ qDebug() << "Link to Obsolete entity"
+ << (*node)->name() << "no relative";
+ }
+ }
+#if 0
+ else if ((*node)->status() == Node::Deprecated) {
+ qDebug() << "Link to Deprecated entity";
+ }
+ else if ((*node)->status() == Node::Internal) {
+ qDebug() << "Link to Internal entity";
+ }
+#endif
+ }
+
+ while (!path.isEmpty()) {
+ targetAtom = myTree->findTarget(path.first(), *node);
+ if (targetAtom == 0)
+ break;
+ path.removeFirst();
+ }
+
+ if (path.isEmpty()) {
+ link = linkForNode(*node, relative);
+ if (*node && (*node)->subType() == Node::Image)
+ link = "images/used-in-examples/" + link;
+ if (targetAtom)
+ link += "#" + refForAtom(targetAtom, *node);
+ }
+ }
+ return link;
+}
+
+void DitaXmlGenerator::generateDcf(const QString &fileBase,
+ const QString &startPage,
+ const QString &title,
+ DcfSection &dcfRoot)
+{
+ dcfRoot.ref = startPage;
+ dcfRoot.title = title;
+ generateDcfSections(dcfRoot, outputDir() + "/" + fileBase + ".dcf", fileBase + "/reference");
+}
+
+void DitaXmlGenerator::generateIndex(const QString &fileBase,
+ const QString &url,
+ const QString &title)
+{
+ myTree->generateIndex(outputDir() + "/" + fileBase + ".index", url, title);
+}
+
+void DitaXmlGenerator::generateStatus(const Node *node, CodeMarker *marker)
+{
+ Text text;
+
+ switch (node->status()) {
+ case Node::Obsolete:
+ if (node->isInnerNode())
+ Generator::generateStatus(node, marker);
+ break;
+ case Node::Compat:
+ if (node->isInnerNode()) {
+ text << Atom::ParaLeft
+ << Atom(Atom::FormattingLeft,ATOM_FORMATTING_BOLD)
+ << "This "
+ << typeString(node)
+ << " is part of the Qt 3 support library."
+ << Atom(Atom::FormattingRight, ATOM_FORMATTING_BOLD)
+ << " It is provided to keep old source code working. "
+ << "We strongly advise against "
+ << "using it in new code. See ";
+
+ const FakeNode *fakeNode = myTree->findFakeNodeByTitle("Porting To Qt 4");
+ Atom *targetAtom = 0;
+ if (fakeNode && node->type() == Node::Class) {
+ QString oldName(node->name());
+ targetAtom = myTree->findTarget(oldName.replace("3", ""),
+ fakeNode);
+ }
+
+ if (targetAtom) {
+ text << Atom(Atom::Link, linkForNode(fakeNode, node) + "#" +
+ refForAtom(targetAtom, fakeNode));
+ }
+ else
+ text << Atom(Atom::Link, "Porting to Qt 4");
+
+ text << Atom(Atom::FormattingLeft, ATOM_FORMATTING_LINK)
+ << Atom(Atom::String, "Porting to Qt 4")
+ << Atom(Atom::FormattingRight, ATOM_FORMATTING_LINK)
+ << " for more information."
+ << Atom::ParaRight;
+ }
+ generateText(text, node, marker);
+ break;
+ default:
+ Generator::generateStatus(node, marker);
+ }
+}
+
+#ifdef GENERATE_MAC_REFS
+/*
+ No longer valid.
+ */
+void DitaXmlGenerator::generateMacRef(const Node *node, CodeMarker *marker)
+{
+ if (!pleaseGenerateMacRef || marker == 0)
+ return;
+
+ QStringList macRefs = marker->macRefsForNode(node);
+ foreach (const QString &macRef, macRefs)
+ out() << "\n";
+}
+#endif
+
+void DitaXmlGenerator::beginLink(const QString &link,
+ const Node *node,
+ const Node *relative,
+ CodeMarker *marker)
+{
+ Q_UNUSED(marker)
+ Q_UNUSED(relative)
+
+ this->link = link;
+ if (link.isEmpty()) {
+ if (showBrokenLinks)
+ out() << "";
+ }
+ else if (node == 0 || (relative != 0 &&
+ node->status() == relative->status())) {
+ out() << "";
+ }
+ else {
+ switch (node->status()) {
+ case Node::Obsolete:
+ out() << "";
+ break;
+ case Node::Compat:
+ out() << "";
+ break;
+ default:
+ out() << "";
+ }
+ }
+ inLink = true;
+}
+
+void DitaXmlGenerator::endLink()
+{
+ if (inLink) {
+ if (link.isEmpty()) {
+ if (showBrokenLinks)
+ out() << "";
+ }
+ else {
+ if (inObsoleteLink) {
+ out() << "(obsolete)";
+ }
+ out() << "";
+ }
+ }
+ inLink = false;
+ inObsoleteLink = false;
+}
+
+#ifdef QDOC_QML
+
+/*!
+ Generates the summary for the \a section. Only used for
+ sections of QML element documentation.
+
+ Currently handles only the QML property group.
+ */
+void DitaXmlGenerator::generateQmlSummary(const Section& section,
+ const Node *relative,
+ CodeMarker *marker)
+{
+ if (!section.members.isEmpty()) {
+ NodeList::ConstIterator m;
+ int count = section.members.size();
+ bool twoColumn = false;
+ if (section.members.first()->type() == Node::QmlProperty) {
+ twoColumn = (count >= 5);
+ }
+ if (twoColumn)
+ out() << "
\n";
+ if (++numTableRows % 2 == 1)
+ out() << "
";
+ else
+ out() << "
";
+ // << "
";
+ out() << "
\n";
+
+ int row = 0;
+ m = section.members.begin();
+ while (m != section.members.end()) {
+ if (twoColumn && row == (int) (count + 1) / 2)
+ out() << "
";
+}
+
+/*!
+ Output the "Inherits" line for the QML element,
+ if there should be one.
+ */
+void DitaXmlGenerator::generateQmlInherits(const QmlClassNode* cn,
+ CodeMarker* marker)
+{
+ if (cn && !cn->links().empty()) {
+ if (cn->links().contains(Node::InheritsLink)) {
+ QPair linkPair;
+ linkPair = cn->links()[Node::InheritsLink];
+ QStringList strList(linkPair.first);
+ const Node* n = myTree->findNode(strList,Node::Fake);
+ if (n && n->subType() == Node::QmlClass) {
+ const QmlClassNode* qcn = static_cast(n);
+ out() << "
";
+ Text text;
+ text << "[Inherits ";
+ text << Atom(Atom::LinkNode,CodeMarker::stringForNode(qcn));
+ text << Atom(Atom::FormattingLeft, ATOM_FORMATTING_LINK);
+ text << Atom(Atom::String, linkPair.second);
+ text << Atom(Atom::FormattingRight, ATOM_FORMATTING_LINK);
+ text << "]";
+ generateText(text, cn, marker);
+ out() << "
";
+ }
+ }
+ }
+}
+
+/*!
+ Output the "Inherit by" list for the QML element,
+ if it is inherited by any other elements.
+ */
+void DitaXmlGenerator::generateQmlInheritedBy(const QmlClassNode* cn,
+ CodeMarker* marker)
+{
+ if (cn) {
+ NodeList subs;
+ QmlClassNode::subclasses(cn->name(),subs);
+ if (!subs.isEmpty()) {
+ Text text;
+ text << Atom::ParaLeft << "Inherited by ";
+ appendSortedQmlNames(text,cn,subs,marker);
+ text << Atom::ParaRight;
+ generateText(text, cn, marker);
+ }
+ }
+}
+
+/*!
+ Output the "[Xxx instantiates the C++ class QmlGraphicsXxx]"
+ line for the QML element, if there should be one.
+
+ If there is no class node, or if the class node status
+ is set to Node::Internal, do nothing.
+ */
+void DitaXmlGenerator::generateQmlInstantiates(const QmlClassNode* qcn,
+ CodeMarker* marker)
+{
+ const ClassNode* cn = qcn->classNode();
+ if (cn && (cn->status() != Node::Internal)) {
+ out() << "
";
+ Text text;
+ text << "[";
+ text << Atom(Atom::LinkNode,CodeMarker::stringForNode(qcn));
+ text << Atom(Atom::FormattingLeft, ATOM_FORMATTING_LINK);
+ text << Atom(Atom::String, qcn->name());
+ text << Atom(Atom::FormattingRight, ATOM_FORMATTING_LINK);
+ text << " instantiates the C++ class ";
+ text << Atom(Atom::LinkNode,CodeMarker::stringForNode(cn));
+ text << Atom(Atom::FormattingLeft, ATOM_FORMATTING_LINK);
+ text << Atom(Atom::String, cn->name());
+ text << Atom(Atom::FormattingRight, ATOM_FORMATTING_LINK);
+ text << "]";
+ generateText(text, qcn, marker);
+ out() << "
";
+ }
+}
+
+/*!
+ Output the "[QmlGraphicsXxx is instantiated by QML element Xxx]"
+ line for the class, if there should be one.
+
+ If there is no QML element, or if the class node status
+ is set to Node::Internal, do nothing.
+ */
+void DitaXmlGenerator::generateInstantiatedBy(const ClassNode* cn,
+ CodeMarker* marker)
+{
+ if (cn && cn->status() != Node::Internal && !cn->qmlElement().isEmpty()) {
+ const Node* n = myTree->root()->findNode(cn->qmlElement(),Node::Fake);
+ if (n && n->subType() == Node::QmlClass) {
+ out() << "
";
+ Text text;
+ text << "[";
+ text << Atom(Atom::LinkNode,CodeMarker::stringForNode(cn));
+ text << Atom(Atom::FormattingLeft, ATOM_FORMATTING_LINK);
+ text << Atom(Atom::String, cn->name());
+ text << Atom(Atom::FormattingRight, ATOM_FORMATTING_LINK);
+ text << " is instantiated by QML element ";
+ text << Atom(Atom::LinkNode,CodeMarker::stringForNode(n));
+ text << Atom(Atom::FormattingLeft, ATOM_FORMATTING_LINK);
+ text << Atom(Atom::String, n->name());
+ text << Atom(Atom::FormattingRight, ATOM_FORMATTING_LINK);
+ text << "]";
+ generateText(text, cn, marker);
+ out() << "