summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--share/qtcreator/themes/dark.creatortheme1
-rw-r--r--share/qtcreator/translations/qtcreator_ru.ts2896
-rw-r--r--src/plugins/baremetal/baremetalcustomrunconfiguration.cpp6
-rw-r--r--src/plugins/baremetal/baremetalcustomrunconfiguration.h1
-rw-r--r--src/plugins/baremetal/baremetalrunconfiguration.cpp9
-rw-r--r--src/plugins/baremetal/baremetalrunconfiguration.h1
-rw-r--r--src/plugins/cmakeprojectmanager/cmakerunconfiguration.cpp11
-rw-r--r--src/plugins/cmakeprojectmanager/cmakerunconfiguration.h1
-rw-r--r--src/plugins/debugger/debuggerrunconfigurationaspect.cpp6
-rw-r--r--src/plugins/debugger/debuggerrunconfigurationaspect.h5
-rw-r--r--src/plugins/ios/iosrunconfiguration.cpp9
-rw-r--r--src/plugins/ios/iosrunconfiguration.h1
-rw-r--r--src/plugins/projectexplorer/customexecutableconfigurationwidget.cpp6
-rw-r--r--src/plugins/projectexplorer/customexecutablerunconfiguration.cpp9
-rw-r--r--src/plugins/projectexplorer/customexecutablerunconfiguration.h3
-rw-r--r--src/plugins/projectexplorer/foldernavigationwidget.cpp10
-rw-r--r--src/plugins/projectexplorer/localenvironmentaspect.cpp7
-rw-r--r--src/plugins/projectexplorer/localenvironmentaspect.h1
-rw-r--r--src/plugins/projectexplorer/runconfiguration.cpp107
-rw-r--r--src/plugins/projectexplorer/runconfiguration.h11
-rw-r--r--src/plugins/projectexplorer/runconfigurationaspects.cpp72
-rw-r--r--src/plugins/projectexplorer/runconfigurationaspects.h21
-rw-r--r--src/plugins/pythoneditor/pythoneditorplugin.cpp8
-rw-r--r--src/plugins/qbsprojectmanager/qbsrunconfiguration.cpp14
-rw-r--r--src/plugins/qbsprojectmanager/qbsrunconfiguration.h3
-rw-r--r--src/plugins/qmakeandroidsupport/qmakeandroidrunconfiguration.cpp13
-rw-r--r--src/plugins/qmakeandroidsupport/qmakeandroidrunconfiguration.h2
-rw-r--r--src/plugins/qmakeprojectmanager/desktopqmakerunconfiguration.cpp31
-rw-r--r--src/plugins/qmakeprojectmanager/desktopqmakerunconfiguration.h4
-rw-r--r--src/plugins/qmlprofiler/qmlprofilerrunconfigurationaspect.cpp6
-rw-r--r--src/plugins/qmlprofiler/qmlprofilerrunconfigurationaspect.h3
-rw-r--r--src/plugins/qmlprojectmanager/qmlprojectenvironmentaspect.cpp5
-rw-r--r--src/plugins/qmlprojectmanager/qmlprojectenvironmentaspect.h7
-rw-r--r--src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp11
-rw-r--r--src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.h3
-rw-r--r--src/plugins/qnx/qnxrunconfiguration.cpp11
-rw-r--r--src/plugins/qnx/qnxrunconfiguration.h10
-rw-r--r--src/plugins/remotelinux/linuxdevicetester.cpp11
-rw-r--r--src/plugins/remotelinux/linuxdevicetester.h6
-rw-r--r--src/plugins/remotelinux/remotelinuxcustomrunconfiguration.cpp12
-rw-r--r--src/plugins/remotelinux/remotelinuxcustomrunconfiguration.h1
-rw-r--r--src/plugins/remotelinux/remotelinuxenvironmentaspect.cpp5
-rw-r--r--src/plugins/remotelinux/remotelinuxenvironmentaspect.h1
-rw-r--r--src/plugins/remotelinux/remotelinuxrunconfiguration.cpp8
-rw-r--r--src/plugins/remotelinux/remotelinuxrunconfiguration.h1
-rw-r--r--src/plugins/valgrind/valgrindplugin.cpp5
-rw-r--r--tests/auto/debugger/tst_dumpers.cpp21
-rw-r--r--tests/system/suite_tools/suite.conf2
-rw-r--r--tests/system/suite_tools/tst_sort/test.py (renamed from tests/system/suite_tools/tst_external_sort/test.py)7
-rw-r--r--tests/system/suite_tools/tst_sort/testdata/sorted.txt25
-rw-r--r--tests/system/suite_tools/tst_sort/testdata/unsorted.txt (renamed from tests/system/suite_tools/tst_external_sort/testdata/unsorted.txt)0
51 files changed, 1859 insertions, 1571 deletions
diff --git a/share/qtcreator/themes/dark.creatortheme b/share/qtcreator/themes/dark.creatortheme
index 006daa501c..0c6e90e838 100644
--- a/share/qtcreator/themes/dark.creatortheme
+++ b/share/qtcreator/themes/dark.creatortheme
@@ -199,6 +199,7 @@ PaletteButton=shadowBackground
PaletteBrightText=ffff0000
PaletteText=text
PaletteButtonText=text
+PaletteButtonTextDisabled=textDisabled
PaletteToolTipBase=selectedBackground
PaletteHighlight=selectedBackground
PaletteDark=shadowBackground
diff --git a/share/qtcreator/translations/qtcreator_ru.ts b/share/qtcreator/translations/qtcreator_ru.ts
index 97fd9c79cd..c215f4ba9d 100644
--- a/share/qtcreator/translations/qtcreator_ru.ts
+++ b/share/qtcreator/translations/qtcreator_ru.ts
@@ -167,13 +167,17 @@
<translation>Версия установленного SDK (%1) не включает скрипты Gradle. Минимальная версия Qt, необходимая для работы сборки Gradle, является %2</translation>
</message>
<message>
+ <source>The minimum Qt version required for Gradle build to work is %2. It is recommended to install the latest Qt version.</source>
+ <translation>Для работы сборки Gradle необходима Qt версии не ниже %2. Рекомендуется установить последнюю версию Qt.</translation>
+ </message>
+ <message>
<source>The API level set for the APK is less than the minimum required by the kit.
The minimum API level required by the kit is %1.</source>
<translation>Уровень API, заданный для APK, ниже чем минимальный для комплекта.
-Комплекту требуется минимальный уровень API %1. </translation>
+Комплекту требуется минимальный уровень API %1.</translation>
</message>
<message>
- <source>Cannot sign the package. Invalid keystore path(%1).</source>
+ <source>Cannot sign the package. Invalid keystore path (%1).</source>
<translation>Не удалось подписать пакет. Неверный путь к связке ключей (%1).</translation>
</message>
<message>
@@ -470,10 +474,6 @@ Do you want to uninstall the existing package?</source>
<translation>Уровень API устройства: %1.</translation>
</message>
<message>
- <source>Android 5 devices are incompatible with deploying Qt to a temporary directory.</source>
- <translation>Устройства на базе Android 5 не поддерживают установку Qt во временный каталог.</translation>
- </message>
- <message>
<source>Incompatible devices</source>
<translation>Несовместимые устройства</translation>
</message>
@@ -776,8 +776,8 @@ Do you want to uninstall the existing package?</source>
<context>
<name>Android::Internal::AndroidPotentialKitWidget</name>
<message>
- <source>Qt Creator needs additional settings to enable Android support. You can configure those settings in the Options dialog.</source>
- <translation>Для включения поддержки Android требуются дополнительные настройки в диалоге Параметры.</translation>
+ <source>%1 needs additional settings to enable Android support. You can configure those settings in the Options dialog.</source>
+ <translation>Для включения поддержки Android в %1 требуются дополнительные настройки в диалоге Параметры.</translation>
</message>
</context>
<context>
@@ -862,79 +862,240 @@ Do you want to uninstall the existing package?</source>
</message>
</context>
<context>
- <name>Android::Internal::AndroidSettingsPage</name>
+ <name>Android::Internal::AndroidSdkManager</name>
<message>
- <source>Android</source>
- <translation>Android</translation>
+ <source>The operation requires user interaction. Use the &quot;sdkmanager&quot; command-line tool.</source>
+ <translation>Операция требует вмешательства пользователя. Используйте «sdkmanager» в командной строке.</translation>
+ </message>
+ <message>
+ <source>License command failed.
+
+</source>
+ <translation>Команда License завершилась с ошибкой.
+
+</translation>
</message>
</context>
<context>
- <name>Android::Internal::AndroidSettingsWidget</name>
+ <name>Android::Internal::AndroidSdkManagerWidget</name>
+ <message>
+ <source>Android SDK Manager</source>
+ <translation>Android SDK Manager</translation>
+ </message>
+ <message>
+ <source>Expand All</source>
+ <translation>Развернуть всё</translation>
+ </message>
+ <message>
+ <source>SDK manger is not available with the current version of SDK tools. Use native SDK manager.</source>
+ <translation>SDK Manager недоступен в текущей версии инструментов SDK. Используйте штатный SDK Manager.</translation>
+ </message>
+ <message>
+ <source>Update Installed</source>
+ <translation>Обновление установлено</translation>
+ </message>
+ <message>
+ <source>Apply</source>
+ <translation>Применить</translation>
+ </message>
<message>
- <source>&quot;%1&quot; does not seem to be an Android SDK top folder.</source>
- <translation>Путь «%1» не похож на корневой каталог Android SDK.</translation>
+ <source>Show Packages</source>
+ <translation>Показать пакеты</translation>
</message>
<message>
- <source>&quot;%1&quot; does not seem to be an Android NDK top folder.</source>
- <translation>Путь «%1» не похож на корневой каталог Android NDK.</translation>
+ <source>Available</source>
+ <translation>Доступные</translation>
+ </message>
+ <message>
+ <source>Installed</source>
+ <translation>Установленные</translation>
+ </message>
+ <message>
+ <source>All</source>
+ <translation>Все</translation>
+ </message>
+ <message>
+ <source>Advanced Options...</source>
+ <translation>Дополнительно...</translation>
+ </message>
+ <message>
+ <source>Native SDK Manager...</source>
+ <translation>Штатный SDK Manager...</translation>
+ </message>
+ <message>
+ <source>Cancel</source>
+ <translation>Отмена</translation>
+ </message>
+ <message>
+ <source>Do you want to accept the Android SDK license?</source>
+ <translation>Принимаете условия лицензии Android SDK?</translation>
+ </message>
+ <message>
+ <source>Checking pending licenses...
+</source>
+ <translation>Проверка ожидающих лицензий...
+</translation>
+ </message>
+ <message>
+ <source>
+SDK Manager is busy.</source>
+ <translation>
+SDK Manager занят.</translation>
+ </message>
+ <message>
+ <source>Android SDK Changes</source>
+ <translation>Изменения в Android SDK</translation>
</message>
<message numerus="yes">
- <source>Found %n toolchains for this NDK.</source>
+ <source>%n Android SDK packages shall be updated.</source>
<translation>
- <numerusform>Для этого NDK обнаружен %n инструментарий.</numerusform>
- <numerusform>Для этого NDK обнаружено %n инструментария.</numerusform>
- <numerusform>Для этого NDK обнаружено %n инструментариев.</numerusform>
+ <numerusform>%n пакет Android SDK должен быть обновлён.</numerusform>
+ <numerusform>%n пакета Android SDK должны быть обновлены.</numerusform>
+ <numerusform>%n пакетов Android SDK должны быть обновлены.</numerusform>
</translation>
</message>
<message>
- <source>Qt version for architecture %1 is missing.
-To add the Qt version, select Options &gt; Build &amp; Run &gt; Qt Versions.</source>
- <translation>Отсутствует профиль Qt для архитектуры %1.
-Для его добавления зайдите в Параметры - Сборка и запуск - Профили Qt.</translation>
+ <source>[Packages to be uninstalled:]
+</source>
+ <translation>[Удаляемые пакеты:]
+</translation>
</message>
<message>
- <source>Select JDK Path</source>
- <translation>Выбор размещения JDK</translation>
+ <source>Native SDK Manager Not Available</source>
+ <translation>Штатный SDK Manager недоступен</translation>
</message>
<message>
- <source>The Android NDK cannot be installed into a path with spaces.</source>
- <translation>Нельзя устанавливать Android NDK в каталог, путь к которому содержит пробелы.</translation>
+ <source>SDK manager UI tool is not available in the installed SDK tools (version %1). Use the command line tool &quot;sdkmanager&quot; for advanced SDK management.</source>
+ <translation>SDK Manager недоступен в установленном SDK (версии %1). Используйте утилиту командной строки «sdkmanager» для расширенного управления SDK.</translation>
</message>
- <message numerus="yes">
- <source>Qt versions for %n architectures are missing.
-To add the Qt versions, select Options &gt; Build &amp; Run &gt; Qt Versions.</source>
+ <message>
+ <source>
+Please note that the installation and use of Android SDK packages may fail if respective licenses are not accepted.</source>
<translation>
- <numerusform>Не задан профиль Qt для %n архитектуры.
-Для исправления зайдите в Параметры - Сборка и запуск - Профили Qt.</numerusform>
- <numerusform>Не задан профиль Qt для %n архитектур.
-Для исправления зайдите в Параметры - Сборка и запуск - Профили Qt.</numerusform>
- <numerusform>Не задан профиль Qt для %n архитектур.
-Для исправления зайдите в Параметры - Сборка и запуск - Профили Qt.</numerusform>
- </translation>
+Имейте в виду, что установка и использование пакетов Android SDK может не работать, если соответствующие лицензии не были приняты.</translation>
</message>
<message>
- <source>The Platform tools are missing. Please use the Android SDK Manager to install them.</source>
- <translation>Отсутствуют инструменты для данной платформы. Используйте Android SDK Manager для их установки.</translation>
+ <source>Android SDK Licenses</source>
+ <translation>Лицензии Android SDK</translation>
</message>
<message>
- <source>&quot;%1&quot; does not seem to be a JDK folder.</source>
- <translation>Путь «%1» не похож на каталог JDK.</translation>
+ <source>SDK Manager is busy. Operation cancelled.</source>
+ <translation>SDK Manager занят. Операция отменена.</translation>
</message>
<message>
- <source>Remove Android Virtual Device</source>
- <translation>Удаление виртуального устройства Android</translation>
+ <source>Installing/Uninstalling selected packages...
+</source>
+ <translation>Установка/удаление выбранных пакетов...
+</translation>
</message>
<message>
- <source>Remove device &quot;%1&quot;? This cannot be undone.</source>
- <translation>Удалить устройство «%1»? Отменить операцию будет нельзя.</translation>
+ <source>Closing the %1 dialog will cancel the running and scheduled SDK operations.
+</source>
+ <translation>Закрытие диалога %1 отменит выполняющиеся или запланированные операции с SDK.
+</translation>
+ </message>
+ <message>
+ <source>preferences</source>
+ <translatorcomment>Mac OS</translatorcomment>
+ <translation>настроек</translation>
+ </message>
+ <message>
+ <source>options</source>
+ <translatorcomment>Остальные</translatorcomment>
+ <translation>настроек</translation>
+ </message>
+ <message>
+ <source>Updating installed packages...
+</source>
+ <translation>Обновление установленных пакетов...
+</translation>
+ </message>
+ <message>
+ <source>Android SDK operations finished.</source>
+ <translation>Операции с Android SDK завершены.</translation>
+ </message>
+ <message>
+ <source>Operation cancelled.
+</source>
+ <translation>Операция отменена.
+</translation>
+ </message>
+ <message>
+ <source>
+No pending operations to cancel...
+</source>
+ <translation>
+Нет ожидающих операций для отмены...
+</translation>
+ </message>
+ <message>
+ <source>
+Cancelling pending operations...
+</source>
+ <translation>
+Отмена ожидающих операций...
+</translation>
+ </message>
+</context>
+<context>
+ <name>Android::Internal::AndroidSdkModel</name>
+ <message>
+ <source>Package</source>
+ <translation>Пакет</translation>
+ </message>
+ <message>
+ <source>Revision</source>
+ <translation>Ревизия</translation>
+ </message>
+ <message>
+ <source>API</source>
+ <translation>API</translation>
+ </message>
+ <message>
+ <source>Operation</source>
+ <translation>Операция</translation>
+ </message>
+ <message>
+ <source>Tools</source>
+ <translation>Инструменты</translation>
+ </message>
+ <message>
+ <source>SDK Platform</source>
+ <translation>Платформа SDK</translation>
+ </message>
+ <message>
+ <source>Update Only</source>
+ <translation>Только обновить</translation>
+ </message>
+ <message>
+ <source>Uninstall</source>
+ <translation>Удалить</translation>
+ </message>
+ <message>
+ <source>Install</source>
+ <translation>Установить</translation>
+ </message>
+</context>
+<context>
+ <name>Android::Internal::AndroidSettingsPage</name>
+ <message>
+ <source>Android</source>
+ <translation>Android</translation>
+ </message>
+</context>
+<context>
+ <name>Android::Internal::AndroidSettingsWidget</name>
+ <message>
+ <source>Select JDK Path</source>
+ <translation>Выбор размещения JDK</translation>
</message>
<message>
- <source>Unsupported GDB</source>
- <translation>Неподдерживаемый GDB</translation>
+ <source>Remove Android Virtual Device</source>
+ <translation>Удаление виртуального устройства Android</translation>
</message>
<message>
- <source>The GDB inside this NDK seems to not support Python. The Qt Project offers fixed GDB builds at: &lt;a href=&quot;http://download.qt.io/official_releases/gdb/&quot;&gt;http://download.qt.io/official_releases/gdb/&lt;/a&gt;</source>
- <translation>Похоже, GDB из NDK не поддерживает Python. Проект Qt предлагает исправленную сборку GDB: &lt;a href=&quot;http://download.qt.io/official_releases/gdb/&quot;&gt;http://download.qt.io/official_releases/gdb/&lt;/a&gt;</translation>
+ <source>Remove device &quot;%1&quot;? This cannot be undone.</source>
+ <translation>Удалить устройство «%1»? Отменить операцию будет нельзя.</translation>
</message>
<message>
<source>AVD Manager Not Available</source>
@@ -949,12 +1110,90 @@ To add the Qt versions, select Options &gt; Build &amp; Run &gt; Qt Versions.</s
<translation>Выбор каталога Android SDK</translation>
</message>
<message>
+ <source>JDK path exists.</source>
+ <translation>Путь к JDK существует.</translation>
+ </message>
+ <message>
+ <source>JDK path is a valid JDK root folder.</source>
+ <translation>Путь к JDK является корректным каталогом корня JDK.</translation>
+ </message>
+ <message>
+ <source>Java Settings are OK.</source>
+ <translation>Настройки Java в порядке.</translation>
+ </message>
+ <message>
+ <source>Java settings have errors.</source>
+ <translation>Настройки Java содержат ошибки.</translation>
+ </message>
+ <message>
+ <source>Android SDK path exists.</source>
+ <translation>Путь к Android SDK существует.</translation>
+ </message>
+ <message>
+ <source>SDK tools installed.</source>
+ <translation>Инструменты SDK установлены.</translation>
+ </message>
+ <message>
+ <source>Platform tools installed.</source>
+ <translation>Инструменты платформы установлены.</translation>
+ </message>
+ <message>
+ <source>Build tools installed.</source>
+ <translation>Инструменты сборки установлены.</translation>
+ </message>
+ <message>
+ <source>Platform SDK installed.</source>
+ <translation>SDK платформы установлен.</translation>
+ </message>
+ <message>
+ <source>Android NDK path exists.</source>
+ <translation>Путь к Android NDK существует.</translation>
+ </message>
+ <message>
+ <source>Android NDK directory structure is correct.</source>
+ <translation>Структура каталога Android NDK корректна.</translation>
+ </message>
+ <message>
+ <source>Android NDK installed into a path without spaces.</source>
+ <translation>Android NDK установлен в каталог, путь к которому не содержит пробелов.</translation>
+ </message>
+ <message>
+ <source>Android settings are OK.</source>
+ <translation>Настройки Android в порядке.</translation>
+ </message>
+ <message>
+ <source>Android settings have errors.</source>
+ <translation>Настройки Android содержат ошибки.</translation>
+ </message>
+ <message>
<source>Select Android NDK folder</source>
<translation>Выбор каталога Android NDK</translation>
</message>
<message>
- <source>Select ant Script</source>
- <translation>Выбор сценария ant</translation>
+ <source>Android SDK installation is missing necessary packages. Do you want to install the missing packages?</source>
+ <translation>В установленом Android SDK отсутствует ряд необходимых пакетов. Доустановить их?</translation>
+ </message>
+ <message>
+ <source>Missing Android SDK packages</source>
+ <translation>В Android SDK недостаёт пакетов</translation>
+ </message>
+ <message>
+ <source>Cannot create kits for all architectures.</source>
+ <translation>Невозможно создать комплекты для всех архитектур.</translation>
+ </message>
+ <message>
+ <source>Qt versions are missing for the following architectures:
+%1
+
+To add the Qt version, select Options &gt; Build &amp; Run &gt; Qt Versions.</source>
+ <translation>Отсутствуют профили Qt для следующих архитектур:
+%1
+
+Для добавления профиля зайдите в Параметры &gt; Сборка и запуск &gt; Профили Qt.</translation>
+ </message>
+ <message>
+ <source>(SDK Version: %1, NDK Version: %2)</source>
+ <translation>(Версия SDK: %1, Версия NDK: %2)</translation>
</message>
</context>
<context>
@@ -1012,6 +1251,25 @@ Install an SDK of at least API version %1.</source>
</message>
</context>
<context>
+ <name>Android::Internal::OptionsDialog</name>
+ <message>
+ <source>SDK Manager Arguments</source>
+ <translation>Параметры SDK Manager</translation>
+ </message>
+ <message>
+ <source>Cannot load available arguments for &quot;sdkmanager&quot; command.</source>
+ <translation>Не удалось загрузить доступные параметры для команды «sdkmanager».</translation>
+ </message>
+ <message>
+ <source>SDK manager arguments:</source>
+ <translation>Параметры SDK Manager:</translation>
+ </message>
+ <message>
+ <source>Available arguments:</source>
+ <translation>Доступные параметры:</translation>
+ </message>
+</context>
+<context>
<name>Android::PasswordInputDialog</name>
<message>
<source>Incorrect password.</source>
@@ -1120,30 +1378,6 @@ Install an SDK of at least API version %1.</source>
<translation>Внедрять библиотеки Qt в APK</translation>
</message>
<message>
- <source>Pushes local Qt libraries to device. You must have Qt libraries compiled for that platform.
-The APK will not be usable on any other device.</source>
- <translation>Копировать локальные библиотеки Qt на устройство. Необходимо иметь библиотеки,
-собранные под эту платформу. Файл APK не будет работать на других устройствах.</translation>
- </message>
- <message>
- <source>Deploy local Qt libraries to temporary directory</source>
- <translation>Устанавливать Qt во временный каталог</translation>
- </message>
- <message>
- <source>Signing an APK that uses &quot;Deploy local Qt libraries&quot; is not allowed.
-Deploying local Qt libraries is incompatible with Android 5.</source>
- <translation>Подписывание APK, использующего локальные библиотеки Qt, запрещено.
-Установка локальных библиотек Qt не поддерживается на Android 5.</translation>
- </message>
- <message>
- <source>Use Gradle (Ant builds are deprecated)</source>
- <translation>Использовать Gradle (сборщик Ant устарел)</translation>
- </message>
- <message>
- <source>Gradle builds are forced from Android SDK tools version 25.3.0 onwards as Ant scripts are no longer available.</source>
- <translation>Сборщик Gradle принудительно используется в Android SDK начиная с версии 25.3.0, тогда как скрипты Ant больше недоступны.</translation>
- </message>
- <message>
<source>Packages debug server with the APK to enable debugging. For the signed APK this option is unchecked by default.</source>
<translation>Добавляет отладочный сервер в APK для включения отладки. Для подписанных APK эта опция отключена по умолчанию.</translation>
</message>
@@ -1269,6 +1503,37 @@ Deploying local Qt libraries is incompatible with Android 5.</source>
</message>
</context>
<context>
+ <name>AndroidSdkManager</name>
+ <message>
+ <source>Updating installed packages.</source>
+ <translation>Обновление установленных пакетов.</translation>
+ </message>
+ <message>
+ <source>Failed.</source>
+ <translation>Ошибка.</translation>
+ </message>
+ <message>
+ <source>Done
+
+</source>
+ <translation>Готово
+
+</translation>
+ </message>
+ <message>
+ <source>Installing</source>
+ <translation>Установка</translation>
+ </message>
+ <message>
+ <source>Uninstalling</source>
+ <translation>Удаление</translation>
+ </message>
+ <message>
+ <source>Failed</source>
+ <translation>Ошибка</translation>
+ </message>
+</context>
+<context>
<name>AndroidSettingsWidget</name>
<message>
<source>Android Configuration</source>
@@ -1284,7 +1549,7 @@ Deploying local Qt libraries is incompatible with Android 5.</source>
</message>
<message>
<source>AVD Manager</source>
- <translation>Управление AVD</translation>
+ <translation>AVD Manager</translation>
</message>
<message>
<source>System/data partition size:</source>
@@ -1315,14 +1580,6 @@ Deploying local Qt libraries is incompatible with Android 5.</source>
<translation>Загрузить Android NDK</translation>
</message>
<message>
- <source>Ant executable:</source>
- <translation>Программа Ant:</translation>
- </message>
- <message>
- <source>Download Ant</source>
- <translation>Загрузить Ant</translation>
- </message>
- <message>
<source>Download JDK</source>
<translation>Загрузить JDK</translation>
</message>
@@ -1331,24 +1588,24 @@ Deploying local Qt libraries is incompatible with Android 5.</source>
<translation>Запустить...</translation>
</message>
<message>
- <source>Start AVD Manager...</source>
- <translation>Управление AVD...</translation>
- </message>
- <message>
<source>Add...</source>
<translation>Добавить...</translation>
</message>
<message>
- <source>&lt;a href=&quot;xx&quot;&gt;The GDB in the NDK appears to have broken python support.&lt;/a&gt;</source>
- <translation>&lt;a href=&quot;xx&quot;&gt;GDB из NDK не имеет поддержки Python.&lt;/a&gt;</translation>
+ <source>Java Settings</source>
+ <translation>Настройки Java</translation>
</message>
<message>
- <source>Use Gradle instead of Ant (Ant builds are deprecated)</source>
- <translation>Использовать Gradle вместо Ant (сборщик Ant устарел)</translation>
+ <source>Android Settings</source>
+ <translation>Настройки Android</translation>
</message>
<message>
- <source>Gradle builds are forced from Android SDK tools version 25.3.0 onwards as Ant scripts are no longer available.</source>
- <translation>Сборщик Gradle принудительно используется в Android SDK начиная с версии 25.3.0, тогда как скрипты Ant больше недоступны.</translation>
+ <source>Native AVD Manager...</source>
+ <translation>Штатный AVD Manager...</translation>
+ </message>
+ <message>
+ <source>SDK Manager</source>
+ <translation>SDK Manager</translation>
</message>
</context>
<context>
@@ -1382,49 +1639,6 @@ Deploying local Qt libraries is incompatible with Android 5.</source>
</message>
</context>
<context>
- <name>ApplicationLauncher</name>
- <message>
- <source>User requested stop. Shutting down...</source>
- <translation>Пользователь запросил останов. Завершение...</translation>
- </message>
- <message>
- <source>Failed to start program. Path or permissions wrong?</source>
- <translation>Не удалось запустить программу. Путь или права недопустимы?</translation>
- </message>
- <message>
- <source>The program has unexpectedly finished.</source>
- <translation>Программа неожиданно завершилась.</translation>
- </message>
- <message>
- <source>Some error has occurred while running the program.</source>
- <translation>Во время работы программы возникли некоторые ошибки.</translation>
- </message>
- <message>
- <source>Cannot run: No device.</source>
- <translation>Невозможно запустить: нет устройства.</translation>
- </message>
- <message>
- <source>Cannot run: Device is not able to create processes.</source>
- <translation>Не удалось запустить: Устройство не может создавать процессы.</translation>
- </message>
- <message>
- <source>Cannot run: No command given.</source>
- <translation>Невозможно запустить: команда не указана.</translation>
- </message>
- <message>
- <source>Application failed to start: %1</source>
- <translation>Не удалось запустить приложение: %1</translation>
- </message>
- <message>
- <source>Application finished with exit code %1.</source>
- <translation>Приложение завершилось с кодом %1.</translation>
- </message>
- <message>
- <source>Application finished with exit code 0.</source>
- <translation>Приложение завершилось с кодом 0.</translation>
- </message>
-</context>
-<context>
<name>ApplicationWindowSpecifics</name>
<message>
<source>Window</source>
@@ -1454,8 +1668,8 @@ Deploying local Qt libraries is incompatible with Android 5.</source>
<context>
<name>AutoTest</name>
<message>
- <source>Test Settings</source>
- <translation>Настройки тестов</translation>
+ <source>Testing</source>
+ <translation>Тестирование</translation>
</message>
</context>
<context>
@@ -1689,14 +1903,6 @@ Deploying local Qt libraries is incompatible with Android 5.</source>
<translation>Perf</translation>
</message>
<message>
- <source>XML output recommended as it avoids parsing issues, while plain text is more human readable.
-
-Warning: Plain text output is missing some information (e.g. duration)</source>
- <translation>Рекомендуется вывод в формате XML, так как исключает проблемы при разборе. Простой же текст более удобен для чтения человеком.
-
-Предупреждение: простой текст не содержит некоторую информацию (например, длительность)</translation>
- </message>
- <message>
<source>Use XML output</source>
<translation>Использовать вывод XML</translation>
</message>
@@ -1712,6 +1918,41 @@ Warning: Plain text output is missing some information (e.g. duration)</source>
<source>Log signals and slots</source>
<translation>Логировать сигналы и слоты</translation>
</message>
+ <message>
+ <source>XML output is recommended, because it avoids parsing issues, while plain text is more human readable.
+
+Warning: Plain text misses some information, such as duration.</source>
+ <translation>Рекомендуется вывод в формате XML, так как исключает проблемы при разборе. Простой же текст более удобен для чтения человеком.
+
+Предупреждение: простой текст не содержит некоторую информацию, например, длительность.</translation>
+ </message>
+</context>
+<context>
+ <name>Autotest::Internal::RunConfigurationSelectionDialog</name>
+ <message>
+ <source>Select Run Configuration</source>
+ <translation>Выбор конфигурации запуска</translation>
+ </message>
+ <message>
+ <source>Could not determine which run configuration to choose for running tests (%1)</source>
+ <translation>Не удалось определить, какую выбрать конфигурацию запуска для запуска тестов (%1)</translation>
+ </message>
+ <message>
+ <source>Run Configuration:</source>
+ <translation>Конфигурация запуска:</translation>
+ </message>
+ <message>
+ <source>Executable:</source>
+ <translation>Программа:</translation>
+ </message>
+ <message>
+ <source>Arguments:</source>
+ <translation>Параметры:</translation>
+ </message>
+ <message>
+ <source>Working Directory:</source>
+ <translation>Рабочий каталог:</translation>
+ </message>
</context>
<context>
<name>Autotest::Internal::TestCodeParser</name>
@@ -1905,6 +2146,14 @@ Warning: Plain text output is missing some information (e.g. duration)</source>
<translation>Сохранить вывод в файл...</translation>
</message>
<message>
+ <source>Run This Test</source>
+ <translation>Запустить этот тест</translation>
+ </message>
+ <message>
+ <source>Debug This Test</source>
+ <translation>Отладить этот тест</translation>
+ </message>
+ <message>
<source>Save Output To</source>
<translation>Сохранение вывода в</translation>
</message>
@@ -1940,13 +2189,17 @@ Warning: Plain text output is missing some information (e.g. duration)</source>
</message>
<message>
<source>guessed from</source>
- <translation type="unfinished">предположено по</translation>
+ <translation>предположено по</translation>
+ </message>
+ <message>
+ <source>Omitted the following arguments specified on the run configuration page for &quot;%1&quot;:</source>
+ <translation>Пропущены следующие параметры, указанные на странице конфигурации запуска для «%1»:</translation>
</message>
<message>
<source>Project&apos;s run configuration was guessed for &quot;%1&quot;.
This might cause trouble during execution.
(guessed from &quot;%2&quot;)</source>
- <translation type="unfinished">Конфигурация запуска проекта соответствует «%1».
+ <translation>Конфигурация запуска проекта соответствует «%1».
Это может вызвать проблемы при запуске.
(основано на «%2»)</translation>
</message>
@@ -1969,6 +2222,18 @@ Check the test environment.</source>
<translation>Тест проекта «%1» завершился аварийно.</translation>
</message>
<message>
+ <source>Test for project &quot;%1&quot; did not produce any expected output.</source>
+ <translation>Тест проекта «%1» не создал ожидаемого вывода.</translation>
+ </message>
+ <message>
+ <source>&lt;unknown&gt;</source>
+ <translation>&lt;неизвестный&gt;</translation>
+ </message>
+ <message>
+ <source>No test cases left for execution. Canceling test run.</source>
+ <translation>Не осталось больше тестов для запуска. Запуск отменён.</translation>
+ </message>
+ <message>
<source>Could not find command &quot;%1&quot;. (%2)</source>
<translation>Не удалось найти команду «%1». (%2)</translation>
</message>
@@ -2101,6 +2366,16 @@ Only desktop kits are supported. Make sure the currently active kit is a desktop
<source>Remove</source>
<translation>Удалить</translation>
</message>
+ <message>
+ <source>Allow passing arguments specified on the respective run configuration.
+Warning: this is an experimental feature and might lead to failing to execute the test executable.</source>
+ <translation>Разрешение на передачу параметров указанных в соответствующей конфигурации запуска.
+Предупреждение: это экспериментальная возможность, которая может привести к сбою запуска теста.</translation>
+ </message>
+ <message>
+ <source>Process arguments</source>
+ <translation>Передавать параметры</translation>
+ </message>
</context>
<context>
<name>Autotest::Internal::TestSettingsWidget</name>
@@ -2224,8 +2499,8 @@ Only desktop kits are supported. Make sure the currently active kit is a desktop
<context>
<name>AutotoolsProjectManager::Internal::BuildPathPage</name>
<message>
- <source>Please enter the directory in which you want to build your project. Qt Creator recommends to not use the source directory for building. This ensures that the source directory remains clean and enables multiple builds with different settings.</source>
- <translation>Укажите каталог, в котором желаете собирать проект. Qt Creator рекомендует не использовать каталог с исходниками для сборки. Это позволит поддерживать каталог с исходниками в чистоте, а также даст возможность делать несколько сборок с различными настройками.</translation>
+ <source>Please enter the directory in which you want to build your project. It is not recommended to use the source directory for building. This ensures that the source directory remains clean and enables multiple builds with different settings.</source>
+ <translation>Укажите каталог, в котором желаете собирать проект. Рекомендуется не использовать каталог с исходниками для сборки. Это позволит поддерживать каталог с исходниками в чистоте, а также даст возможность делать несколько сборок с различными настройками.</translation>
</message>
<message>
<source>Build directory:</source>
@@ -3415,6 +3690,16 @@ For example, &quot;Revision: 15&quot; will leave the branch at revision 15.</sou
<translation>Ф&amp;орматировать выделенное</translation>
</message>
<message>
+ <source>&amp;Format at Cursor</source>
+ <extracomment>Menu entry</extracomment>
+ <translation>&amp;Форматировать под курсором</translation>
+ </message>
+ <message>
+ <source>&amp;Disable Formatting for Selected Text</source>
+ <extracomment>Menu entry</extracomment>
+ <translation>&amp;Отключить форматирование выделенного</translation>
+ </message>
+ <message>
<source>%1 Command</source>
<extracomment>File dialog title for path chooser when choosing binary</extracomment>
<translation>Команда %1</translation>
@@ -3462,10 +3747,6 @@ For example, &quot;Revision: 15&quot; will leave the branch at revision 15.</sou
<translation>Использовать особый стиль:</translation>
</message>
<message>
- <source>Format entire file if no text was selected</source>
- <translation>Форматировать весь файл, если ничего не выбрано</translation>
- </message>
- <message>
<source>Restrict to MIME types:</source>
<translation>Только для MIME-типов:</translation>
</message>
@@ -3473,10 +3754,6 @@ For example, &quot;Revision: 15&quot; will leave the branch at revision 15.</sou
<source>Fallback style:</source>
<translation>Резервный стиль:</translation>
</message>
- <message>
- <source>For action Format Selected Text.</source>
- <translation>Для операции форматирования вылеленного текста.</translation>
- </message>
</context>
<context>
<name>Beautifier::Internal::ClangFormat::ClangFormatSettings</name>
@@ -3622,7 +3899,7 @@ For example, &quot;Revision: 15&quot; will leave the branch at revision 15.</sou
</message>
<message>
<source>Use file specific uncrustify.cfg</source>
- <translation type="unfinished">Особый uncrustify.cfg для каждого файла</translation>
+ <translation>Особый uncrustify.cfg для каждого файла</translation>
</message>
</context>
<context>
@@ -4121,34 +4398,6 @@ For example, &quot;Revision: 15&quot; will leave the branch at revision 15.</sou
</message>
</context>
<context>
- <name>CMakeBuildConfigurationFactory</name>
- <message>
- <source>Default</source>
- <extracomment>The name of the build configuration created by default for a cmake project.</extracomment>
- <translation>По умолчанию</translation>
- </message>
- <message>
- <source>Build</source>
- <translation>Сборка</translation>
- </message>
- <message>
- <source>Debug</source>
- <translation>Отладка</translation>
- </message>
- <message>
- <source>Release</source>
- <translation>Выпуск</translation>
- </message>
- <message>
- <source>Minimum Size Release</source>
- <translation>Выпуск минимального размера</translation>
- </message>
- <message>
- <source>Release with Debug Information</source>
- <translation>Выпуск с отладочной информацией</translation>
- </message>
-</context>
-<context>
<name>CMakeFilesProjectNode</name>
<message>
<source>CMake Modules</source>
@@ -4165,6 +4414,10 @@ For example, &quot;Revision: 15&quot; will leave the branch at revision 15.</sou
<source>Not in CMakeCache.txt</source>
<translation>Не в CMakeCache.txt</translation>
</message>
+ <message>
+ <source>Value requested by kit: %1</source>
+ <translation>Запрошенное комплектом значение: %1</translation>
+ </message>
</context>
<context>
<name>CMakeProjectManager::CMakeBuildStep</name>
@@ -4246,8 +4499,8 @@ For example, &quot;Revision: 15&quot; will leave the branch at revision 15.</sou
<translation>Инструментарий не поддерживается выбранным генератором CMake.</translation>
</message>
<message>
- <source>The selected CMake binary has no server-mode and the CMake generator does not generate a CodeBlocks file. Qt Creator will not be able to parse CMake projects.</source>
- <translation>Выбранная программа CMake не имеет серверного режима, а генератор CMake не создаёт файлы CodeBlocks. Qt Creator не имеет возможности разбирать проекты CMake.</translation>
+ <source>The selected CMake binary has no server-mode and the CMake generator does not generate a CodeBlocks file. %1 will not be able to parse CMake projects.</source>
+ <translation>Выбранная программа CMake не имеет серверного режима, а генератор CMake не создаёт файлы CodeBlocks. %1 не имеет возможности разбирать проекты CMake.</translation>
</message>
<message>
<source>Generator: %1&lt;br&gt;Extra generator: %2</source>
@@ -4331,6 +4584,14 @@ For example, &quot;Revision: 15&quot; will leave the branch at revision 15.</sou
<translation>Автоматически запускать CMake при изменении файлов проекта.</translation>
</message>
<message>
+ <source>Auto-create build directories</source>
+ <translation>Автосоздание каталогов сборки</translation>
+ </message>
+ <message>
+ <source>Automatically create build directories for CMake projects.</source>
+ <translation>Автоматически создавать каталоги сборки для проектов CMake.</translation>
+ </message>
+ <message>
<source>Name:</source>
<translation>Название:</translation>
</message>
@@ -4353,29 +4614,44 @@ For example, &quot;Revision: 15&quot; will leave the branch at revision 15.</sou
<context>
<name>CMakeProjectManager::ConfigModel</name>
<message>
- <source>&lt;UNSET&gt;</source>
- <translation>&lt;не задано&gt;</translation>
+ <source>Key</source>
+ <translation>Ключ</translation>
</message>
<message>
- <source>Kit value: %1</source>
- <translation>Значение комплекта: %1</translation>
+ <source> (ADVANCED)</source>
+ <translation> (РАСШИРЕННО)</translation>
</message>
<message>
- <source>Setting</source>
- <translation>Настройка</translation>
+ <source>Current kit: %1</source>
+ <translation>Текущий комплект: %1</translation>
+ </message>
+ <message>
+ <source>&lt;UNSET&gt;</source>
+ <translation>&lt;не задано&gt;</translation>
</message>
<message>
<source>Value</source>
<translation>Значение</translation>
</message>
+</context>
+<context>
+ <name>CMakeProjectManager::ConfigModelItemDelegate</name>
<message>
- <source>Advanced</source>
- <translation>Дополнительно</translation>
+ <source>Select a file for %1</source>
+ <translation>Выберите файл для %1</translation>
+ </message>
+ <message>
+ <source>Select a directory for %1</source>
+ <translation>Выберите каталог для %1</translation>
</message>
</context>
<context>
<name>CMakeProjectManager::Internal::BuildDirManager</name>
<message>
+ <source>Failed to create build directory &quot;%1&quot;.</source>
+ <translation>Не удалось создать каталог сборки «%1».</translation>
+ </message>
+ <message>
<source>Failed to create temporary directory &quot;%1&quot;.</source>
<translation>Не удалось создать временный каталог «%1».</translation>
</message>
@@ -4388,16 +4664,20 @@ For example, &quot;Revision: 15&quot; will leave the branch at revision 15.</sou
<translation>&lt;удалён&gt;</translation>
</message>
<message>
- <source>&lt;empty&gt;</source>
- <translation>&lt;пусто&gt;</translation>
+ <source>Key</source>
+ <translation>Ключ</translation>
</message>
<message>
- <source>CMake configuration has changed on disk.</source>
- <translation>Конфигурация CMake изменилась на диске.</translation>
+ <source>CMake</source>
+ <translation>CMake</translation>
</message>
<message>
- <source>The CMakeCache.txt file has changed: %1</source>
- <translation>Файл CMakeCache.txt был изменён: %1</translation>
+ <source>Project</source>
+ <translation>Проект</translation>
+ </message>
+ <message>
+ <source>CMake configuration has changed on disk.</source>
+ <translation>Конфигурация CMake изменилась на диске.</translation>
</message>
<message>
<source>Overwrite Changes in CMake</source>
@@ -4416,6 +4696,34 @@ For example, &quot;Revision: 15&quot; will leave the branch at revision 15.</sou
</message>
</context>
<context>
+ <name>CMakeProjectManager::Internal::CMakeBuildConfigurationFactory</name>
+ <message>
+ <source>Default</source>
+ <extracomment>The name of the build configuration created by default for a cmake project.</extracomment>
+ <translation>По умолчанию</translation>
+ </message>
+ <message>
+ <source>Build</source>
+ <translation>Сборка</translation>
+ </message>
+ <message>
+ <source>Debug</source>
+ <translation>Отладка</translation>
+ </message>
+ <message>
+ <source>Release</source>
+ <translation>Выпуск</translation>
+ </message>
+ <message>
+ <source>Minimum Size Release</source>
+ <translation>Выпуск минимального размера</translation>
+ </message>
+ <message>
+ <source>Release with Debug Information</source>
+ <translation>Выпуск с отладочной информацией</translation>
+ </message>
+</context>
+<context>
<name>CMakeProjectManager::Internal::CMakeBuildSettingsWidget</name>
<message>
<source>Build directory:</source>
@@ -4430,6 +4738,10 @@ For example, &quot;Revision: 15&quot; will leave the branch at revision 15.</sou
<translation>&amp;Добавить</translation>
</message>
<message>
+ <source>Add a new configuration value.</source>
+ <translation>Добавить новое значение конфигурации.</translation>
+ </message>
+ <message>
<source>&amp;Boolean</source>
<translation>&amp;Булево</translation>
</message>
@@ -4450,10 +4762,26 @@ For example, &quot;Revision: 15&quot; will leave the branch at revision 15.</sou
<translation>&amp;Изменить</translation>
</message>
<message>
+ <source>Edit the current CMake configuration value.</source>
+ <translation>Изменить текущее значение конфигурации CMake.</translation>
+ </message>
+ <message>
+ <source>&amp;Unset</source>
+ <translation>&amp;Сбросить</translation>
+ </message>
+ <message>
+ <source>Unset a value in the CMake configuration.</source>
+ <translation>Сбросить значение конфигурации CMake.</translation>
+ </message>
+ <message>
<source>&amp;Reset</source>
<translation>&amp;Вернуть</translation>
</message>
<message>
+ <source>Reset all unapplied changes.</source>
+ <translation>Сбросить все неприменённые изменения.</translation>
+ </message>
+ <message>
<source>Advanced</source>
<translation>Дополнительно</translation>
</message>
@@ -4466,6 +4794,31 @@ For example, &quot;Revision: 15&quot; will leave the branch at revision 15.</sou
<translation>&lt;не задано&gt;</translation>
</message>
<message>
+ <source>bool</source>
+ <comment>display string for cmake type BOOLEAN</comment>
+ <translation>булевый</translation>
+ </message>
+ <message>
+ <source>file</source>
+ <comment>display string for cmake type FILE</comment>
+ <translation>файл</translation>
+ </message>
+ <message>
+ <source>directory</source>
+ <comment>display string for cmake type DIRECTORY</comment>
+ <translation>каталог</translation>
+ </message>
+ <message>
+ <source>string</source>
+ <comment>display string for cmake type STRING</comment>
+ <translation>строка</translation>
+ </message>
+ <message>
+ <source>Force to %1</source>
+ <translatorcomment>Принудительно булевый/файл/каталог/строка</translatorcomment>
+ <translation>Принудительно %1</translation>
+ </message>
+ <message>
<source>CMake</source>
<translation>CMake</translation>
</message>
@@ -4478,7 +4831,7 @@ For example, &quot;Revision: 15&quot; will leave the branch at revision 15.</sou
<translation>Сборка CMake</translation>
</message>
<message>
- <source>Qt Creator needs a CMake Tool set up to build. Configure a CMake Tool in the kit options.</source>
+ <source>A CMake tool must be set up for building. Configure a CMake tool in the kit options.</source>
<translation>Для сборки необходимо, чтобы была задана утилита CMake. Задайте её в настройках комлекта.</translation>
</message>
<message>
@@ -4494,10 +4847,8 @@ For example, &quot;Revision: 15&quot; will leave the branch at revision 15.</sou
<translation>Запуск CMake при подготовке к сборке...</translation>
</message>
<message>
- <source>Error parsing CMake: %1
-</source>
- <translation>Ошибка разбора CMake: %1
-</translation>
+ <source>Project did not parse successfully, cannot build.</source>
+ <translation>Не удалось разобрать проект, сборка невозможна.</translation>
</message>
</context>
<context>
@@ -4661,12 +5012,19 @@ For example, &quot;Revision: 15&quot; will leave the branch at revision 15.</sou
<translation>Запуск комплекта CMake</translation>
</message>
<message>
- <source>(disabled)</source>
- <translation>(отключено)</translation>
+ <source>The project no longer builds the target associated with this run configuration.</source>
+ <translation>Проект больше не собирает цель, ассоциированную с ним в конфигурации запуска.</translation>
+ </message>
+</context>
+<context>
+ <name>CMakeProjectManager::Internal::CMakeRunConfigurationWidget</name>
+ <message>
+ <source>Executable:</source>
+ <translation>Программа:</translation>
</message>
<message>
- <source>The executable is not built by the current build configuration</source>
- <translation>Приложение собрано не текущей конфигурацией сборки</translation>
+ <source>&lt;unknown&gt;</source>
+ <translation>&lt;неизвестная&gt;</translation>
</message>
</context>
<context>
@@ -4809,16 +5167,16 @@ For example, &quot;Revision: 15&quot; will leave the branch at revision 15.</sou
<translation>Не удалось разобрать проект CMake: потеряно соединение с сервером CMake.</translation>
</message>
<message>
- <source>Starting to parse CMake project for Qt Creator.</source>
- <translation>Начинается разбор проекта CMake для Qt Creator.</translation>
- </message>
- <message>
<source>Configuring &quot;%1&quot;</source>
<translation>Настройка «%1»</translation>
</message>
<message>
- <source>&lt;Source Directory&gt;</source>
- <translation>&lt;Каталог исходников&gt;</translation>
+ <source>Starting to parse CMake project, using: &quot;%1&quot;.</source>
+ <translation>Начинается разбор проекта CMake с использованием «%1».</translation>
+ </message>
+ <message>
+ <source>Starting to parse CMake project.</source>
+ <translation>Начинается разбор проекта CMake.</translation>
</message>
<message>
<source>&lt;Build Directory&gt;</source>
@@ -4837,6 +5195,27 @@ For example, &quot;Revision: 15&quot; will leave the branch at revision 15.</sou
<translation>Не удалось разобрать проект CMake.</translation>
</message>
<message>
+ <source>%1 in line %3</source>
+ <translatorcomment>думаю, ошибка в оригинале</translatorcomment>
+ <translation>%1 в строке %2</translation>
+ </message>
+ <message>
+ <source>%1</source>
+ <translation>%1</translation>
+ </message>
+ <message>
+ <source>%1 in %2:%3</source>
+ <translation>%1 в %2:%3</translation>
+ </message>
+ <message>
+ <source>%1 in %2</source>
+ <translation>%1 в %2</translation>
+ </message>
+ <message>
+ <source>Target Definition</source>
+ <translation>Определение цели</translation>
+ </message>
+ <message>
<source>&lt;Headers&gt;</source>
<translation>&lt;Заголовки&gt;</translation>
</message>
@@ -4977,6 +5356,21 @@ For example, &quot;Revision: 15&quot; will leave the branch at revision 15.</sou
</message>
</context>
<context>
+ <name>ClangCodeModel::Internal::BackendCommunicator</name>
+ <message>
+ <source>Clang Code Model: Error: The clangbackend executable &quot;%1&quot; does not exist.</source>
+ <translation>Модель кода Clang: Ошибка: Программа clangbackend «%1» отсутствует.</translation>
+ </message>
+ <message>
+ <source>Clang Code Model: Error: The clangbackend executable &quot;%1&quot; could not be started (timeout after %2ms).</source>
+ <translation>Модель кода Clang: Ошибка: Не удалось запустить программу clangbackend «%1» (истекло время: %2 мс).</translation>
+ </message>
+ <message>
+ <source>Clang Code Model: Error: The clangbackend process has finished unexpectedly and was restarted.</source>
+ <translation>Модель кода Clang: Ошибка: Программа clangbackend неожиданно завершилась и была перезапущена.</translation>
+ </message>
+</context>
+<context>
<name>ClangCodeModel::Internal::ClangCompletionAssistProcessor</name>
<message>
<source>Location: %1</source>
@@ -5025,21 +5419,6 @@ However, using the relaxed and extended rules means also that no highlighting/co
</message>
</context>
<context>
- <name>ClangCodeModel::Internal::IpcCommunicator</name>
- <message>
- <source>Clang Code Model: Error: The clangbackend executable &quot;%1&quot; does not exist.</source>
- <translation>Модель кода Clang: Ошибка: Программа clangbackend «%1» отсутствует.</translation>
- </message>
- <message>
- <source>Clang Code Model: Error: The clangbackend executable &quot;%1&quot; could not be started (timeout after %2ms).</source>
- <translation>Модель кода Clang: Ошибка: Не удалось запустить программу clangbackend «%1» (истекло время: %2 мс).</translation>
- </message>
- <message>
- <source>Clang Code Model: Error: The clangbackend process has finished unexpectedly and was restarted.</source>
- <translation>Модель кода Clang: Ошибка: Программа clangbackend неожиданно завершилась и была перезапущена.</translation>
- </message>
-</context>
-<context>
<name>ClangCodeModel::Internal::ModelManagerSupport</name>
<message>
<source>Clang</source>
@@ -5275,6 +5654,10 @@ Output:
<translation>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Вы пытаетесь запустить «%1» для приложения в режиме %2. Этот инструмент разработан для использования в отладочном режиме, так как включённые утверждения могут уменьшить число ложных срабатываний.&lt;/p&gt;&lt;p&gt;Продолжить запуск в режиме %2?&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
</message>
<message>
+ <source>Clang Static Analyzer stopped by user.</source>
+ <translation>Статический анализатор Clang остановлен пользователем.</translation>
+ </message>
+ <message>
<source>Clang Static Analyzer is still running.</source>
<translation>Статический анализатор Clang ещё работает.</translation>
</message>
@@ -5283,6 +5666,10 @@ Output:
<translation>Запустить статический анализатор Clang.</translation>
</message>
<message>
+ <source>This is not a C++ project.</source>
+ <translation>Это не проект на языке C++.</translation>
+ </message>
+ <message>
<source>Clang Static Analyzer is running.</source>
<translation>Статический анализатор Clang работает.</translation>
</message>
@@ -5306,10 +5693,6 @@ Output:
<context>
<name>ClangStaticAnalyzer::Internal::ClangStaticAnalyzerToolRunner</name>
<message>
- <source>Clang Static Analyzer</source>
- <translation>Статический анализатор Clang</translation>
- </message>
- <message>
<source>The project configuration changed since the start of the Clang Static Analyzer. Please re-run with current configuration.</source>
<translation>Конфигурация проекта изменилась с момента запуска статического анализатора Clang. Перезапустите его.</translation>
</message>
@@ -5338,10 +5721,6 @@ Output:
<translation>Анализ</translation>
</message>
<message>
- <source>Clang Static Analyzer stopped by user.</source>
- <translation>Статический анализатор Clang остановлен пользователем.</translation>
- </message>
- <message>
<source>Analyzing &quot;%1&quot;.</source>
<translation>Анализ «%1».</translation>
</message>
@@ -5359,13 +5738,6 @@ Output:
</message>
</context>
<context>
- <name>ClangStaticAnalyzer::Internal::DummyRunConfiguration</name>
- <message>
- <source>Clang Static Analyzer</source>
- <translation>Статический анализатор Clang</translation>
- </message>
-</context>
-<context>
<name>ClangStaticAnalyzer::Internal::LogFileReader</name>
<message>
<source>File &quot;%1&quot; does not exist or is not readable.</source>
@@ -5704,6 +6076,11 @@ Output:
<translation>Ошибка при проверке комментария. Зафиксировать файлы?</translation>
</message>
<message>
+ <source>check in</source>
+ <comment>&quot;commit&quot; action for ClearCase.</comment>
+ <translation>фиксировать</translation>
+ </message>
+ <message>
<source>Updating ClearCase Index</source>
<translation>Обновление индекса ClearCase</translation>
</message>
@@ -6779,8 +7156,8 @@ Continue?</source>
<translation> (%1)</translation>
</message>
<message>
- <source>Qt Creator %1%2</source>
- <translation>Qt Creator %1%2</translation>
+ <source>%1 %2%3</source>
+ <translation>%1 %2%3</translation>
</message>
<message>
<source>Based on Qt %1 (%2, %3 bit)</source>
@@ -7013,24 +7390,24 @@ Continue?</source>
<translation>Каталог, открытый в диалоге выбора файлов последним.</translation>
</message>
<message>
- <source>Is Qt Creator running on Windows?</source>
- <translation>Qt Creator работает под Windows?</translation>
+ <source>Is %1 running on Windows?</source>
+ <translation>%1 работает под Windows?</translation>
</message>
<message>
- <source>Is Qt Creator running on OS X?</source>
- <translation>Qt Creator работает под OS X?</translation>
+ <source>Is %1 running on OS X?</source>
+ <translation>%1 работает под OS X?</translation>
</message>
<message>
- <source>Is Qt Creator running on Linux?</source>
- <translation>Qt Creator работает под Linux?</translation>
+ <source>Is %1 running on Linux?</source>
+ <translation>%1 работает под Linux?</translation>
</message>
<message>
- <source>Is Qt Creator running on any unix-based platform?</source>
- <translation>Qt Creator работает под unix-подобной ОС?</translation>
+ <source>Is %1 running on any unix-based platform?</source>
+ <translation>%1 работает под unix-подобной ОС?</translation>
</message>
<message>
- <source>The directory where Qt Creator finds its pre-installed resources.</source>
- <translation>Каталог, в котором Qt Creator ищет свои предустановленные ресурсы.</translation>
+ <source>The directory where %1 finds its pre-installed resources.</source>
+ <translation>Каталог, в котором %1 ищет свои предустановленные ресурсы.</translation>
</message>
<message>
<source>The current date (QDate formatstring).</source>
@@ -7345,10 +7722,6 @@ To do this, you type this shortcut and a space in the Locator entry field, and t
<translation>Закрыть другие</translation>
</message>
<message>
- <source>Qt Creator</source>
- <translation>Qt Creator</translation>
- </message>
- <message>
<source>Cannot Open File</source>
<translation>Не удалось открыть файл</translation>
</message>
@@ -7473,14 +7846,6 @@ Do you want to kill it?</source>
<translation>Предпросмотр Qt Quick 1 (qmlviewer)</translation>
</message>
<message>
- <source>Sorts the selected text</source>
- <translation>Сортировка выделенного текста</translation>
- </message>
- <message>
- <source>Sort Selection</source>
- <translation>Отсортировать выделенное</translation>
- </message>
- <message>
<source>Opens the current file in vi</source>
<translation>Открытие текущего файла в vi</translation>
</message>
@@ -7821,8 +8186,8 @@ Do you want to kill it?</source>
<context>
<name>Core::Internal::FindToolWindow</name>
<message>
- <source>Empty search term</source>
- <translation>Пустое поле поиска</translation>
+ <source>Empty search term.</source>
+ <translation>Пустое поле поиска.</translation>
</message>
</context>
<context>
@@ -7867,12 +8232,12 @@ Do you want to kill it?</source>
<translation>Требуется перезапуск</translation>
</message>
<message>
- <source>Interface</source>
- <translation>Интерфейс</translation>
+ <source>The language change will take effect after restart.</source>
+ <translation>Изменение языка вступит в силу после перезапуска.</translation>
</message>
<message>
- <source>The language change will take effect after a restart of Qt Creator.</source>
- <translation>Изменение языка вступит в силу после перезапуска Qt Creator.</translation>
+ <source>Interface</source>
+ <translation>Интерфейс</translation>
</message>
<message>
<source>User Interface</source>
@@ -8019,10 +8384,6 @@ Do you want to kill it?</source>
<context>
<name>Core::Internal::MainWindow</name>
<message>
- <source>Qt Creator</source>
- <translation></translation>
- </message>
- <message>
<source>&amp;File</source>
<translation>&amp;Файл</translation>
</message>
@@ -8179,6 +8540,14 @@ Do you want to kill it?</source>
<translation>Показать выбор режимов</translation>
</message>
<message>
+ <source>About &amp;%1</source>
+ <translation>О программе &amp;%1</translation>
+ </message>
+ <message>
+ <source>About &amp;%1...</source>
+ <translation>О программе &amp;%1...</translation>
+ </message>
+ <message>
<source>New File or Project</source>
<comment>Title of dialog</comment>
<translation>Новый файл или проект</translation>
@@ -8196,14 +8565,6 @@ Do you want to kill it?</source>
<translation>&amp;Обзоры</translation>
</message>
<message>
- <source>About &amp;Qt Creator</source>
- <translation>О программе &amp;Qt Creator</translation>
- </message>
- <message>
- <source>About &amp;Qt Creator...</source>
- <translation>О программе &amp;Qt Creator...</translation>
- </message>
- <message>
<source>About &amp;Plugins...</source>
<translation>О &amp;модулях...</translation>
</message>
@@ -8258,10 +8619,6 @@ Do you want to kill it?</source>
<translation>Приоритет:</translation>
</message>
<message>
- <source>&lt;i&gt;Note: Wide range values might impact Qt Creator&apos;s performance when opening files.&lt;/i&gt;</source>
- <translation>&lt;i&gt;Широкий диапазон значений может снизить скорость Qt Creator при открытии файлов.&lt;/i&gt;</translation>
- </message>
- <message>
<source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;MIME magic data is interpreted as defined by the Shared MIME-info Database specification from &lt;a href=&quot;http://standards.freedesktop.org/shared-mime-info-spec/shared-mime-info-spec-latest.html&quot;&gt;freedesktop.org&lt;/a&gt;.&lt;hr/&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
<translation>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Магические данные MIME интерпретируются так, как задано в спецификации Shared MIME-Info Database сайта &lt;a href=&quot;http://standards.freedesktop.org/shared-mime-info-spec/shared-mime-info-spec-latest.html&quot;&gt;freedesktop.org&lt;/a&gt;.&lt;hr/&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
</message>
@@ -8309,6 +8666,10 @@ Do you want to kill it?</source>
<source>RegExp</source>
<translation>RegExp</translation>
</message>
+ <message>
+ <source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;span style=&quot; font-style:italic;&quot;&gt;Note: Wide range values might impact performance when opening files.&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
+ <translation>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;span style=&quot; font-style:italic;&quot;&gt;Широкий диапазон значений может снизить скорость при открытии файлов.&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
+ </message>
</context>
<context>
<name>Core::Internal::MimeTypeSettings</name>
@@ -8394,8 +8755,8 @@ Do you want to kill it?</source>
<translation>Сброс типов MIME</translation>
</message>
<message>
- <source>Changes will take effect after Qt Creator restart.</source>
- <translation>Изменения вступят в силу после перезапуска Qt Creator.</translation>
+ <source>Changes will take effect after restart.</source>
+ <translation>Изменения вступят в силу после перезапуска.</translation>
</message>
</context>
<context>
@@ -8737,10 +9098,6 @@ Do you want to kill it?</source>
<translation>Продолжить</translation>
</message>
<message>
- <source>Cannot replace because replacement text is unchanged.</source>
- <translation>Невозможно заменить, так как замещающий текст не изменился.</translation>
- </message>
- <message>
<source>No matches found.</source>
<translation>Совпадений не найдено.</translation>
</message>
@@ -8889,10 +9246,6 @@ Do you want to kill it?</source>
<translation> МБ</translation>
</message>
<message>
- <source>Automatically creates temporary copies of modified files. If Qt Creator is restarted after a crash or power failure, it asks whether to recover the auto-saved content.</source>
- <translation>Автоматически создавать копии изменённых файлов. Если работа Qt Creator завершится аварийно или из-за сбоя питания, то при перезапуске он предложит восстановить их содержимое.</translation>
- </message>
- <message>
<source>Auto-save modified files</source>
<translation>Автосохранение изменённых файлов</translation>
</message>
@@ -8957,6 +9310,10 @@ Do you want to kill it?</source>
<translation>Команда, используемая для отката фрагментов diff.</translation>
</message>
<message>
+ <source>Automatically creates temporary copies of modified files. If %1 is restarted after a crash or power failure, it asks whether to recover the auto-saved content.</source>
+ <translation>Автоматически создавать копии изменённых файлов. Если работа %1 завершится аварийно или из-за сбоя питания, то при перезапуске он предложит восстановить их содержимое.</translation>
+ </message>
+ <message>
<source>Case Sensitive (Default)</source>
<translation>Учитывать регистр (по умолчанию)</translation>
</message>
@@ -8989,13 +9346,13 @@ Do you want to kill it?</source>
<translation>Выгружать неизменённые файлы</translation>
</message>
<message>
- <source>Minimum number of open documents that should be kept in memory. Increasing this number will lead to greater resource usage of Qt Creator when not manually closing documents.</source>
- <translation>Минимальное число открытых документов, которые необходимо хранить в памяти. При увеличении этого числа будет расти и потрбление ресурсов, если не закрывать документы вручную.</translation>
- </message>
- <message>
<source>Files to keep open:</source>
<translation>Держать открытыми:</translation>
</message>
+ <message>
+ <source>Minimum number of open documents that should be kept in memory. Increasing this number will lead to greater resource usage when not manually closing documents.</source>
+ <translation>Минимальное число открытых документов, которые необходимо хранить в памяти. При увеличении этого числа будет расти и потребление ресурсов, если не закрывать документы вручную.</translation>
+ </message>
</context>
<context>
<name>Core::Internal::ThemeChooser</name>
@@ -9008,8 +9365,8 @@ Do you want to kill it?</source>
<translation>Требуется перезапуск</translation>
</message>
<message>
- <source>The theme change will take effect after a restart of Qt Creator.</source>
- <translation>Изменение темы вступит в силу только после перезапуска Qt Creator.</translation>
+ <source>The theme change will take effect after restart.</source>
+ <translation>Изменение темы вступит в силу после перезапуска.</translation>
</message>
</context>
<context>
@@ -9022,8 +9379,8 @@ Do you want to kill it?</source>
<context>
<name>Core::Internal::VersionDialog</name>
<message>
- <source>About Qt Creator</source>
- <translation>О Qt Creator</translation>
+ <source>About %1</source>
+ <translation>О программе %1</translation>
</message>
<message>
<source>&lt;br/&gt;From revision %1&lt;br/&gt;</source>
@@ -9100,6 +9457,10 @@ Do you want to kill it?</source>
<translation>Команда patch не настроена в общих настройках «Среды».</translation>
</message>
<message>
+ <source>The patch-command configured in the general &quot;Environment&quot; settings does not exist.</source>
+ <translation>Команда patch, настроенная в общих настройках «Среды», отсутствует.</translation>
+ </message>
+ <message>
<source>Running in %1: %2 %3</source>
<translation>Выполняется в %1: %2 %3</translation>
</message>
@@ -9772,6 +10133,26 @@ to version control (%2)
<source>%1 (Copy)</source>
<translation>%1 (копия)</translation>
</message>
+ <message>
+ <source>Option &quot;%1&quot; is invalid.</source>
+ <translation>Параметр «%1» неверен.</translation>
+ </message>
+ <message>
+ <source>Configuration passes sanity checks.</source>
+ <translation>Конфигурация прошла предпроверку.</translation>
+ </message>
+ <message>
+ <source>%1</source>
+ <translation>%1</translation>
+ </message>
+ <message>
+ <source>ValidationIcon</source>
+ <translation></translation>
+ </message>
+ <message>
+ <source>ValidationText</source>
+ <translation></translation>
+ </message>
</context>
<context>
<name>CppTools::CppClassesFilter</name>
@@ -9821,14 +10202,6 @@ to version control (%2)
<translation></translation>
</message>
<message>
- <source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;When pre-compiled headers are not ignored, the parsing for code completion and semantic highlighting will process the pre-compiled header before processing any file.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
- <translation>&lt;p&gt;Обрабатывать или нет прекомпилированные заголовки перед обработкой любого файла для дополнения и подсветки кода.&lt;/p&gt;</translation>
- </message>
- <message>
- <source>Ignore pre-compiled headers</source>
- <translation>Игнорировать прекомпилированные заголовки</translation>
- </message>
- <message>
<source>Clang Code Model Warnings</source>
<translation>Предупреждения модели кода Clang</translation>
</message>
@@ -9856,6 +10229,14 @@ to version control (%2)
<source>Interpret ambiguous headers as C headers</source>
<translation>Двусмысленные заголовки считать заголовками C</translation>
</message>
+ <message>
+ <source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;When precompiled headers are not ignored, the parsing for code completion and semantic highlighting will process the precompiled header before processing any file.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
+ <translation>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Обрабатывать или нет прекомпилированные заголовки перед обработкой любого файла для дополнения и подсветки кода.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
+ </message>
+ <message>
+ <source>Ignore precompiled headers</source>
+ <translation>Игнорировать прекомпилированные заголовки</translation>
+ </message>
</context>
<context>
<name>CppTools::Internal::CppCodeStyleSettingsPage</name>
@@ -10223,9 +10604,13 @@ These prefixes are used in addition to current file name on Switch Header/Source
<source>Searching for Usages</source>
<translation>Поиск использований</translation>
</message>
- <message>
- <source>Re&amp;name %1 files</source>
- <translation>&amp;Переименовать %1 файл(ов)</translation>
+ <message numerus="yes">
+ <source>Re&amp;name %n files</source>
+ <translation>
+ <numerusform>&amp;Переименовать %n файл</numerusform>
+ <numerusform>&amp;Переименовать %n файла</numerusform>
+ <numerusform>&amp;Переименовать %n файлов</numerusform>
+ </translation>
</message>
<message>
<source>Files:
@@ -11000,6 +11385,19 @@ Flags: %3</source>
<extracomment>Label text for path configuration. %2 is &quot;x-bit version&quot;.</extracomment>
<translation>&lt;html&gt;&lt;body&gt;&lt;p&gt;Укажите здесь путь к &lt;a href=&quot;%1&quot;&gt;программе Windows Console Debugger&lt;/a&gt; (%2).&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
</message>
+ <message>
+ <source>Auto-detected CDB at %1</source>
+ <translation>Обнаруженный CDB в %1</translation>
+ </message>
+ <message>
+ <source>System %1 at %2</source>
+ <extracomment>%1: Debugger engine type (GDB, LLDB, CDB...), %2: Path</extracomment>
+ <translation>Система %1 в %2</translation>
+ </message>
+ <message>
+ <source>Extracted from Kit %1</source>
+ <translation>Извлечён из комплекта %1</translation>
+ </message>
</context>
<context>
<name>Debugger::DebuggerKitInformation</name>
@@ -11087,6 +11485,26 @@ Flags: %3</source>
<translation>Копия %1</translation>
</message>
<message>
+ <source>Name</source>
+ <translation>Имя</translation>
+ </message>
+ <message>
+ <source>Location</source>
+ <translation>Размещение</translation>
+ </message>
+ <message>
+ <source>Type</source>
+ <translation>Тип</translation>
+ </message>
+ <message>
+ <source>Auto-detected</source>
+ <translation>Обнаруженный</translation>
+ </message>
+ <message>
+ <source>Manual</source>
+ <translation>Особые</translation>
+ </message>
+ <message>
<source>New Debugger</source>
<translation>Новый отладчик</translation>
</message>
@@ -11109,10 +11527,22 @@ Flags: %3</source>
<context>
<name>Debugger::DebuggerRunTool</name>
<message>
+ <source>Unpacking core file to %1</source>
+ <translation>Распаковка файла дампа в %1</translation>
+ </message>
+ <message>
+ <source>Cannot debug: Local executable is not set.</source>
+ <translation>Отладка невозможна: локальная программа не задана.</translation>
+ </message>
+ <message>
<source>No executable specified.</source>
<translation>Программа не указана.</translation>
</message>
<message>
+ <source>Unsupported CDB host system.</source>
+ <translation>Неподдерживаемая CDB основная система.</translation>
+ </message>
+ <message>
<source>Debugger</source>
<translation>Отладчик</translation>
</message>
@@ -11125,14 +11555,6 @@ Flags: %3</source>
<translation>Отладка запущена</translation>
</message>
<message>
- <source>Debugging has failed</source>
- <translation>Ошибка отладки</translation>
- </message>
- <message>
- <source>Debugging has finished</source>
- <translation>Отладка завершена</translation>
- </message>
- <message>
<source>Close Debugging Session</source>
<translation>Закрытие сессии отладки</translation>
</message>
@@ -11158,9 +11580,13 @@ Flags: %3</source>
<source>Checking available ports...</source>
<translation>Проверка доступных портов...</translation>
</message>
- <message>
- <source>Found %1 free ports</source>
- <translation>Обнаружено %1 свободных портов</translation>
+ <message numerus="yes">
+ <source>Found %n free ports.</source>
+ <translation>
+ <numerusform>Обнаружен %n свободный порт.</numerusform>
+ <numerusform>Обнаружено %n свободных порта.</numerusform>
+ <numerusform>Обнаружено %n свободных портов.</numerusform>
+ </translation>
</message>
<message>
<source>Not enough free ports on device for C++ debugging.</source>
@@ -11811,14 +12237,6 @@ Flags: %3</source>
<context>
<name>Debugger::Internal::CdbEngine</name>
<message>
- <source>The console process &quot;%1&quot; could not be started.</source>
- <translation>Не удалось запустить консольный процесс «%1».</translation>
- </message>
- <message>
- <source>Debugger Error</source>
- <translation>Ошибка отладчика</translation>
- </message>
- <message>
<source>Failed to Start the Debugger</source>
<translation>Не удалось запустить отладчик</translation>
</message>
@@ -11843,6 +12261,10 @@ Flags: %3</source>
<translation>В отладчике возникла ошибка: %1</translation>
</message>
<message>
+ <source>Module loaded: %1</source>
+ <translation>Загружен модуль: %1</translation>
+ </message>
+ <message>
<source>&quot;Select Widget to Watch&quot;: Not supported in state &quot;%1&quot;.</source>
<translation>«Выбрать виджет для слежения»: Не поддерживается в состоянии «%1».</translation>
</message>
@@ -11851,14 +12273,6 @@ Flags: %3</source>
<translation>Получен неверный ответ на требование остановки.</translation>
</message>
<message>
- <source>Internal error: Invalid start parameters passed for the CDB engine.</source>
- <translation>Внутренняя ошибка: Неверные стартовые параметры переданы CDB.</translation>
- </message>
- <message>
- <source>Unsupported CDB host system.</source>
- <translation>Неподдерживаемая CDB основная система.</translation>
- </message>
- <message>
<source>Internal error: The extension %1 cannot be found.
If you have updated Qt Creator via Maintenance Tool, you may need to rerun the Tool and select &quot;Add or remove components&quot; and then select the
Qt &gt; Tools &gt; Qt Creator &gt; Qt Creator CDB Debugger Support component.
@@ -11875,10 +12289,6 @@ you will need to build a separate CDB extension with the same bitness as the CDB
<translation>Переключение в основной поток...</translation>
</message>
<message>
- <source>Module loaded: </source>
- <translation>Загружен модуль:</translation>
- </message>
- <message>
<source>Value %1 obtained from evaluating the condition of breakpoint %2, stopping.</source>
<translation>При вычисление условия точки останова %2 получено значение %1, останавливаемся.</translation>
</message>
@@ -11934,10 +12344,6 @@ you will need to build a separate CDB extension with the same bitness as the CDB
<translation>Игнорировать первые нарушения доступа к памяти</translation>
</message>
<message>
- <source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Uses CDB&apos;s native console instead of Qt Creator&apos;s console for console applications. The native console does not prompt on application exit. It is suitable for diagnosing cases in which the application does not start up properly in Qt Creator&apos;s console and the subsequent attach fails.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
- <translation>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Использовать родную консоль CDB вместо встроенной Qt Creator. Но она не сообщает о завершении приложения, поэтому её имеет смысл использовать только для определения причины незапуска в консоли Qt Creator.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
- </message>
- <message>
<source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Attempts to correct the location of a breakpoint based on file and line number should it be in a comment or in a line for which no code is generated. The correction is based on the code model.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
<translation>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Пытаться исправить положение точки останова, если она установлена на строке файла, для которой код не создаётся (комментарий, например). Коррекция производится согласно модели кода.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
</message>
@@ -11945,6 +12351,10 @@ you will need to build a separate CDB extension with the same bitness as the CDB
<source>Use Python dumper</source>
<translation>Использовать дампер</translation>
</message>
+ <message>
+ <source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Uses CDB&apos;s native console for console applications. This overrides the setting in Environment &gt; System. The native console does not prompt on application exit. It is suitable for diagnosing cases in which the application does not start up properly in the configured console and the subsequent attach fails.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
+ <translation>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Использовать штатную консоль CDB для консольных приложений. Перекрывает настройку в Среда &gt; Система. Штатная консоль не сообщает о завершении приложения, поэтому её имеет смысл использовать только для определения причины незапуска в настроенной консоли или при сбое присоединения.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
+ </message>
</context>
<context>
<name>Debugger::Internal::CdbPathsPage</name>
@@ -12026,6 +12436,18 @@ you will need to build a separate CDB extension with the same bitness as the CDB
<translation>Закрывать временные обзоры памяти при завершении отладки</translation>
</message>
<message>
+ <source>Bring %1 to foreground when application interrupts</source>
+ <translation>Переходить в окно %1 при прерывании приложения</translation>
+ </message>
+ <message>
+ <source>Registers %1 for debugging crashed applications.</source>
+ <translation>Зарегистрировать %1 для отладки приложений, завершённых аварийно.</translation>
+ </message>
+ <message>
+ <source>Use %1 for post-mortem debugging</source>
+ <translation>Зарегистрировать %1 системным отладчиком</translation>
+ </message>
+ <message>
<source>Closes automatically opened source views when the debugger exits.</source>
<translation>Закрывает автоматически открытые обзоры исходников при завершении отладки.</translation>
</message>
@@ -12038,10 +12460,6 @@ you will need to build a separate CDB extension with the same bitness as the CDB
<translation>Переключаться в предыдущий режим при завершении отладчика</translation>
</message>
<message>
- <source>Bring Qt Creator to foreground when application interrupts</source>
- <translation>Переходить в окно Qt Creator при прерывании приложения</translation>
- </message>
- <message>
<source>Shows QML object tree in Locals and Expressions when connected and not stepping.</source>
<translation>Показывать дерево объектов QML в окне «Переменные и выражения» при подключении, но не при пошаговой отладке.</translation>
</message>
@@ -12058,14 +12476,6 @@ you will need to build a separate CDB extension with the same bitness as the CDB
<translation>Задавать полный путь к точкам останова</translation>
</message>
<message>
- <source>Registers Qt Creator for debugging crashed applications.</source>
- <translation>Зарегистрировать Qt Creator для отладки приложений, завершённых аварийно.</translation>
- </message>
- <message>
- <source>Use Qt Creator for post-mortem debugging</source>
- <translation>Назначить Qt Creator системным отладчиком</translation>
- </message>
- <message>
<source>Warn when debugging &quot;Release&quot; builds</source>
<translation>Предупреждать при отладке «выпускаемых» сборок</translation>
</message>
@@ -12143,6 +12553,10 @@ you will need to build a separate CDB extension with the same bitness as the CDB
<translation>Запуск отладчика</translation>
</message>
<message>
+ <source>Debugging has failed</source>
+ <translation>Ошибка отладки</translation>
+ </message>
+ <message>
<source>Setup failed.</source>
<translation>Не удалось настроить.</translation>
</message>
@@ -12175,6 +12589,10 @@ you will need to build a separate CDB extension with the same bitness as the CDB
<translation>Процесс %2 неожиданно завершился (код: %1).</translation>
</message>
<message>
+ <source>Attempting to interrupt.</source>
+ <translation>Попытка прервать.</translation>
+ </message>
+ <message>
<source>Stopped: &quot;%1&quot;.</source>
<translation>Остановлено: «%1».</translation>
</message>
@@ -12199,14 +12617,6 @@ you will need to build a separate CDB extension with the same bitness as the CDB
<translation>Невозможно отобразить содержимое памяти, так как модуль просмотра двоичных данных не загружен.</translation>
</message>
<message>
- <source>Adapter start failed</source>
- <translation>Не удалось запустить адаптер</translation>
- </message>
- <message>
- <source>Debugging complex command lines is currently not supported on Windows.</source>
- <translation>Отладка сложных командных строк под Windows пока не поддерживается.</translation>
- </message>
- <message>
<source>Taking notice of pid %1</source>
<translation>Получено уведомление от pid %1</translation>
</message>
@@ -12314,8 +12724,8 @@ Setting breakpoints by file name and line number may fail.</source>
<context>
<name>Debugger::Internal::DebuggerEnginePrivate</name>
<message>
- <source>Attempting to interrupt.</source>
- <translation>Попытка прервать.</translation>
+ <source>Debugging has finished</source>
+ <translation>Отладка завершена</translation>
</message>
</context>
<context>
@@ -12460,28 +12870,28 @@ Setting breakpoints by file name and line number may fail.</source>
<translation>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Вы пытаетесь запустить утилиту «%1» для приложения в режиме %2, а %3.&lt;/p&gt;&lt;p&gt;Характер работы приложения сильно зависит от оптимизации. Выводы, сделанные для одного режима, могут быть неверны для другого.&lt;/p&gt;&lt;p&gt;Запуск утилиты требующей отладочные символы для программ их не имеющих приведёт к проблемам определения имён функций или некорректному выводу информации.&lt;/p&gt;&lt;p&gt;Запустить утилиту в режиме %2?&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
</message>
<message>
+ <source>Unable to create a debugging engine. Please select a Debugger Setting from the Run page of the project mode.</source>
+ <translation>Не удалось создать отладчик. Пожалуйста включите в разделе «Настройки отладчика» на странице «Запуск» режима проекта.</translation>
+ </message>
+ <message>
+ <source>Unable to create a debugging engine.</source>
+ <translation>Не удалось создать отладчик.</translation>
+ </message>
+ <message>
<source>Some breakpoints cannot be handled by the debugger languages currently active, and will be ignored.
Affected are breakpoints %1</source>
<translation>Будут пропущены следующие точки останова, так как не поддерживаются активными языками отладчика:
%1</translation>
</message>
<message>
- <source>The debugging engine required for combined QML/C++ debugging could not be created: %1</source>
- <translation>Не удалось создать отладчик для комбинированной отладки QML/C++: %1</translation>
- </message>
- <message>
- <source>Unable to create a debugging engine of the type &quot;%1&quot;</source>
- <translation>Не удалось создать отладчик типа «%1»</translation>
+ <source>Debugging complex command lines is currently not supported on Windows.</source>
+ <translation>Отладка сложных командных строк под Windows пока не поддерживается.</translation>
</message>
<message>
<source>Not enough free ports for QML debugging.</source>
<translation>Недостаточно свободных портов для отладки QML.</translation>
</message>
<message>
- <source>Unknown debugger type &quot;%1&quot;</source>
- <translation>Неизвестный отладчик типа «%1»</translation>
- </message>
- <message>
<source>Install &amp;Debug Information</source>
<translation>Установить &amp;отладочную информацию</translation>
</message>
@@ -12585,12 +12995,6 @@ Affected are breakpoints %1</source>
<translation>Процесс уже работает под контролем отладчика</translation>
</message>
<message>
- <source>The process %1 is already under the control of a debugger.
-Qt Creator cannot attach to it.</source>
- <translation>Процесс %1 уже работает под контролем отладчика.
-Qt Creator не может подключиться к нему.</translation>
- </message>
- <message>
<source>Set Breakpoint at Line %1</source>
<translation>Установить точку останова на строку %1</translation>
</message>
@@ -12741,6 +13145,12 @@ Qt Creator не может подключиться к нему.</translation>
<translation>Невозможно подключиться к процессу с PID равным 0</translation>
</message>
<message>
+ <source>The process %1 is already under the control of a debugger.
+%2 cannot attach to it.</source>
+ <translation>Процесс %1 уже работает под контролем отладчика.
+%2 не может подключиться к нему.</translation>
+ </message>
+ <message>
<source>It is only possible to attach to a locally running process.</source>
<translation>Можно подключаться только к локально запущенным процессам.</translation>
</message>
@@ -12793,10 +13203,6 @@ Qt Creator не может подключиться к нему.</translation>
<translation>Подключиться к серверу отладки...</translation>
</message>
<message>
- <source>Start Debug Server Attached to Process...</source>
- <translation>Запустить сервер отладки подключённый к процессу...</translation>
- </message>
- <message>
<source>Select</source>
<translation>Выбрать</translation>
</message>
@@ -12853,10 +13259,6 @@ Qt Creator не может подключиться к нему.</translation>
<translation>Подключение к незапущенному приложению</translation>
</message>
<message>
- <source>Start Gdbserver</source>
- <translation>Запустить Gdbserver</translation>
- </message>
- <message>
<source>Shift+Ctrl+Y</source>
<translation>Shift+Ctrl+Y</translation>
</message>
@@ -13175,10 +13577,6 @@ Qt Creator не может подключиться к нему.</translation>
<translation>Сопоставление каталогов исходников</translation>
</message>
<message>
- <source>&lt;p&gt;Mappings of source file folders to be used in the debugger can be entered here.&lt;/p&gt;&lt;p&gt;This is useful when using a copy of the source tree at a location different from the one at which the modules where built, for example, while doing remote debugging.&lt;/p&gt;&lt;p&gt;If source is specified as a regular expression by starting it with an open parenthesis, Qt Creator matches the paths in the ELF with the regular expression to automatically determine the source path.&lt;/p&gt;&lt;p&gt;Example: &lt;b&gt;(/home/.*/Project)/KnownSubDir -&gt; D:\Project&lt;/b&gt; will substitute ELF built by any user to your local project directory.&lt;/p&gt;</source>
- <translation>&lt;p&gt;Сопоставление каталогов исходников используемое отладчиком.&lt;/p&gt;&lt;p&gt;Это нужно, когда исходники находятся в отличном от каталога сборки месте, например, при отладке удалённого приложения.&lt;/p&gt;Если исходник задан в виде регулярного выражения, помещаемого в скобки, то Qt Creator будет сравнивать пути к программе с регулярным выражением для автоматического определения размещения исходников.&lt;p&gt;&lt;/p&gt;&lt;p&gt;Пример: &lt;b&gt;(/home/.*/Project)/KnownSubDir -&gt; D:\Project&lt;/b&gt; заменит сборку любого пользователя на ваш локальный каталог проекта.&lt;/p&gt;</translation>
- </message>
- <message>
<source>&lt;p&gt;Add a mapping for Qt&apos;s source folders when using an unpatched version of Qt.</source>
<translation>&lt;p&gt;Добавление каталогов исходников Qt при использование неизменённой версии Qt.</translation>
</message>
@@ -13195,6 +13593,10 @@ Qt Creator не может подключиться к нему.</translation>
<translation>Путь к &amp;исходникам:</translation>
</message>
<message>
+ <source>&lt;p&gt;Mappings of source file folders to be used in the debugger can be entered here.&lt;/p&gt;&lt;p&gt;This is useful when using a copy of the source tree at a location different from the one at which the modules where built, for example, while doing remote debugging.&lt;/p&gt;&lt;p&gt;If source is specified as a regular expression by starting it with an open parenthesis, the paths in the ELF are matched with the regular expression to automatically determine the source path.&lt;/p&gt;&lt;p&gt;Example: &lt;b&gt;(/home/.*/Project)/KnownSubDir -&gt; D:\Project&lt;/b&gt; will substitute ELF built by any user to your local project directory.&lt;/p&gt;</source>
+ <translation>&lt;p&gt;Сопоставление каталогов исходников используемое отладчиком.&lt;/p&gt;&lt;p&gt;Это нужно, когда исходники находятся в отличном от каталога сборки месте, например, при отладке внешнего приложения.&lt;/p&gt;&lt;p&gt;Если исходник задан в виде регулярного выражения (заключён в скобки), то пути в ELF будут сравниваться с регулярным выражением для автоматического определения размещения исходников.&lt;/p&gt;&lt;p&gt;Пример: &lt;b&gt;(/home/.*/Project)/KnownSubDir -&gt; D:\Project&lt;/b&gt; заменит сборку ELF любого пользователя на ваш локальный каталог проекта.&lt;/p&gt;</translation>
+ </message>
+ <message>
<source>&amp;Target path:</source>
<translation>Путь к &amp;программе:</translation>
</message>
@@ -13243,220 +13645,282 @@ Qt Creator не может подключиться к нему.</translation>
</message>
</context>
<context>
- <name>Debugger::Internal::GdbAttachEngine</name>
+ <name>Debugger::Internal::GdbEngine</name>
<message>
- <source>Attaching to process %1.</source>
- <translation>Подключение к процессу %1.</translation>
+ <source>Reading %1...</source>
+ <translation>Чтение %1...</translation>
</message>
<message>
- <source>Attached to running application</source>
- <translation>Подключено к работающему приложению</translation>
+ <source>Missing debug information for %1
+Try: %2</source>
+ <translation>У %1 отсутствует отладочная информация
+Попробуйте: %2</translation>
</message>
<message>
- <source>Failed to attach to application: %1</source>
- <translation>Не удалось подключиться к приложению: %1</translation>
+ <source>The gdb process failed to start.</source>
+ <translation>Не удалось запустить процесс gdb.</translation>
</message>
<message>
- <source>Debugger Error</source>
- <translation>Ошибка отладчика</translation>
+ <source>Application exited with exit code %1</source>
+ <translation>Приложение завершилось с кодом %1</translation>
</message>
-</context>
-<context>
- <name>Debugger::Internal::GdbCoreEngine</name>
<message>
- <source>Error Loading Core File</source>
- <translation>Не удалось загрузить файл дампа</translation>
+ <source>Application exited after receiving signal %1</source>
+ <translation>Приложение завершилось после получения сигнала %1</translation>
</message>
<message>
- <source>The specified file does not appear to be a core file.</source>
- <translation>Указанный файл не является дампом.</translation>
+ <source>Cannot continue debugged process:</source>
+ <translation>Невозможно продолжить отлаживаемый процесс:</translation>
</message>
<message>
- <source>Error Loading Symbols</source>
- <translation>Не удалось загрузить символы</translation>
+ <source>Cannot create snapshot:</source>
+ <translation>Не удалось создать снимок:</translation>
</message>
<message>
- <source>No executable to load symbols from specified core.</source>
- <translation>Отсутствует программа для загрузки символов из указанного дампа.</translation>
+ <source>The working directory &quot;%1&quot; is not usable.</source>
+ <translation>Рабочий каталог «%1» невозможно использовать.</translation>
</message>
<message>
- <source>Symbols found.</source>
- <translation>Символы найдены.</translation>
+ <source>Failed to start application:</source>
+ <translation>Не удалось запустить приложение:</translation>
</message>
<message>
- <source>No symbols found in core file &lt;i&gt;%1&lt;/i&gt;.</source>
- <translation>Символы в файле дампа &lt;i&gt;%1&lt;/i&gt; не найдены.</translation>
+ <source>Failed to Start Application</source>
+ <translation>Не удалось запустить приложение</translation>
</message>
<message>
- <source>This can be caused by a path length limitation in the core file.</source>
- <translation>Это могло возникнуть из-за ограничений на длину пути в файле дампа.</translation>
+ <source>The gdb process could not be stopped:
+%1</source>
+ <translation>Невозможно остановить процесс gdb:
+%1</translation>
</message>
<message>
- <source>Try to specify the binary using the &lt;i&gt;Debug-&gt;Start Debugging-&gt;Attach to Core&lt;/i&gt; dialog.</source>
- <translation>Попробуйте указать программу используя диалог &lt;i&gt;Отладка-&gt;Начать отладку-&gt;Подключиться к дампу&lt;/i&gt;.</translation>
+ <source>Application process could not be stopped:
+%1</source>
+ <translation>Невозможно остановить процесс приложения:
+%1</translation>
</message>
<message>
- <source>Attached to core.</source>
- <translation>Подключено к дампу.</translation>
+ <source>Connecting to remote server failed:
+%1</source>
+ <translation>Не удалось подключиться к удалённому серверу:
+%1</translation>
</message>
<message>
- <source>Attach to core &quot;%1&quot; failed:</source>
- <translation>Не удалось подключиться к дампу «%1»:</translation>
+ <source>An exception was triggered:</source>
+ <translation>Возникло исключение:</translation>
</message>
<message>
- <source>Continuing nevertheless.</source>
- <translation>Всё же продолжаем.</translation>
+ <source>Library %1 loaded.</source>
+ <translation>Библиотека %1 загружена.</translation>
</message>
-</context>
-<context>
- <name>Debugger::Internal::GdbEngine</name>
<message>
- <source>Reading %1...</source>
- <translation>Чтение %1...</translation>
+ <source>Library %1 unloaded.</source>
+ <translation>Библиотека %1 выгружена.</translation>
</message>
<message>
- <source>Library %1 loaded</source>
- <translation>Библиотека %1 загружена</translation>
+ <source>Thread group %1 created.</source>
+ <translation>Создана группа потоков %1.</translation>
</message>
<message>
- <source>Library %1 unloaded</source>
- <translation>Библиотека %1 выгружена</translation>
+ <source>Thread %1 created.</source>
+ <translation>Поток %1 создан.</translation>
</message>
<message>
- <source>Thread group %1 created</source>
- <translation>Создана группа потоков %1</translation>
+ <source>Thread group %1 exited.</source>
+ <translation>Группа потоков %1 завершена.</translation>
</message>
<message>
- <source>Thread %1 created</source>
- <translation>Поток %1 создан</translation>
+ <source>Thread %1 in group %2 exited.</source>
+ <translation>Завершился поток %1 из группы %2.</translation>
</message>
<message>
- <source>Thread group %1 exited</source>
- <translation>Группа потоков %1 завершена</translation>
+ <source>Thread %1 selected.</source>
+ <translation>Выбран поток %1.</translation>
</message>
<message>
- <source>Thread %1 in group %2 exited</source>
- <translation>Завершился поток %1 из группы %2</translation>
+ <source>Stopping temporarily.</source>
+ <translation>Временно остановлено.</translation>
</message>
- <message>
- <source>Thread %1 selected</source>
- <translation>Выбран поток %1</translation>
+ <message numerus="yes">
+ <source>The gdb process has not responded to a command within %n seconds. This could mean it is stuck in an endless loop or taking longer than expected to perform the operation.
+You can choose between waiting longer or aborting debugging.</source>
+ <translation>
+ <numerusform>Процесс gdb не отвечает на команду в течение %n секунды. Это может означать, что он попал в бесконечный цикл, или выполнение операции занимает больше времени, чем предполагается.
+Вы можете продолжить ожидание или прервать отладку.</numerusform>
+ <numerusform>Процесс gdb не отвечает на команду в течение %n секунд. Это может означать, что он попал в бесконечный цикл, или выполнение операции занимает больше времени, чем предполагается.
+Вы можете продолжить ожидание или прервать отладку.</numerusform>
+ <numerusform>Процесс gdb не отвечает на команду в течение %n секунд. Это может означать, что он попал в бесконечный цикл, или выполнение операции занимает больше времени, чем предполагается.
+Вы можете продолжить ожидание или прервать отладку.</numerusform>
+ </translation>
</message>
<message>
- <source>Missing debug information for %1
-Try: %2</source>
- <translation>У %1 отсутствует отладочная информация
-Попробуйте: %2</translation>
+ <source>GDB Not Responding</source>
+ <translation>GDB не отвечает</translation>
</message>
<message>
- <source>The gdb process failed to start.</source>
- <translation>Не удалось запустить процесс gdb.</translation>
+ <source>Give GDB More Time</source>
+ <translation>Дать GDB ещё время</translation>
</message>
<message>
- <source>Stopping temporarily</source>
- <translation>Временно остановлено</translation>
+ <source>Stop Debugging</source>
+ <translation>Остановить отладку</translation>
</message>
<message>
- <source>GDB not responding</source>
- <translation>GDB не отвечает</translation>
+ <source>Process failed to start.</source>
+ <translation>Не удалось запустить процесс.</translation>
</message>
<message>
- <source>Give GDB more time</source>
- <translation>Дать GDB ещё время</translation>
+ <source>Setting Breakpoints Failed</source>
+ <translation>Не удалось установить точки останова</translation>
</message>
<message>
- <source>Process failed to start</source>
- <translation>Процессу не удалось запуститься</translation>
+ <source>Cannot jump. Stopped.</source>
+ <translation>Не удалось перейти. Остановлено.</translation>
</message>
<message>
- <source>Cannot jump. Stopped</source>
- <translation>Не удалось перейти. Остановлено</translation>
+ <source>Jumped. Stopped.</source>
+ <translation>Переход сделан. Остановлено.</translation>
</message>
<message>
- <source>Jumped. Stopped</source>
- <translation>Переход сделан. Остановлено</translation>
+ <source>Target line hit, and therefore stopped.</source>
+ <translation>Строка назначения достигнута. Остановлено.</translation>
</message>
<message>
- <source>Application exited with exit code %1</source>
- <translation>Приложение завершилось с кодом %1</translation>
+ <source>Application exited normally.</source>
+ <translation>Приложение завершилось нормально.</translation>
</message>
<message>
- <source>Application exited after receiving signal %1</source>
- <translation>Приложение завершилось после получения сигнала %1</translation>
+ <source>The selected build of GDB supports Python scripting, but the used version %1.%2 is not sufficient for %3. Supported versions are Python 2.7 and 3.x.</source>
+ <translation>Выбранная сборка GDB поддерживает сценарии Python, но версия Python %1.%2 не подходит %3. Поддерживается Python версий 2.7 и 3.x.</translation>
</message>
<message>
- <source>Application exited normally</source>
- <translation>Приложение завершилось успешно</translation>
+ <source>Stopped.</source>
+ <translation>Остановлено.</translation>
</message>
<message>
- <source>Cannot continue debugged process:</source>
- <translation>Невозможно продолжить отлаживаемый процесс:</translation>
+ <source>Failed to Shut Down Application</source>
+ <translation>Не удалось закрыть приложение</translation>
</message>
<message>
- <source>There is no GDB binary available for binaries in format &quot;%1&quot;</source>
- <translation>Отсутствует GDB для программ в формате «%1»</translation>
+ <source>There is no GDB binary available for binaries in format &quot;%1&quot;.</source>
+ <translation>Отсутствует GDB для программ в формате «%1».</translation>
</message>
<message>
- <source>Cannot create snapshot:</source>
- <translation>Не удалось создать снимок:</translation>
+ <source>Cannot set up communication with child process: %1</source>
+ <translation>Не удалось установить связь с дочерним процессом: %1</translation>
</message>
<message>
- <source>The working directory &quot;%1&quot; is not usable.</source>
- <translation>Рабочий каталог «%1» невозможно использовать.</translation>
+ <source>Cannot Find Debugger Initialization Script</source>
+ <translation>Не удалось найти скрипт инициализации отладчика</translation>
</message>
<message>
- <source>The debugger settings point to a script file at &quot;%1&quot; which is not accessible. If a script file is not needed, consider clearing that entry to avoid this warning. </source>
+ <source>The debugger settings point to a script file at &quot;%1&quot;, which is not accessible. If a script file is not needed, consider clearing that entry to avoid this warning.</source>
<translation>В настройках указан файл скрипта «%1», который сейчас недоступен. Если файл скрипта не обязателен, просто очистите поле, чтобы не было этого предупреждения.</translation>
</message>
<message>
- <source>Failed to start application:</source>
- <translation>Не удалось запустить приложение:</translation>
+ <source>GDB I/O Error</source>
+ <translation>Ошибка вводы/вывода GDB</translation>
</message>
<message>
- <source>The gdb process could not be stopped:
-%1</source>
- <translation>Невозможно остановить процесс gdb:
-%1</translation>
+ <source>Application started.</source>
+ <translation>Приложение запущено.</translation>
</message>
<message>
- <source>Application process could not be stopped:
-%1</source>
- <translation>Невозможно остановить процесс приложения:
-%1</translation>
+ <source>Application running.</source>
+ <translation>Приложение работает.</translation>
</message>
<message>
- <source>Application started</source>
- <translation>Приложение запущено</translation>
+ <source>Attached to stopped application.</source>
+ <translation>Присоединено к остановленному приложению.</translation>
</message>
<message>
- <source>Application running</source>
- <translation>Приложение работает</translation>
+ <source>No symbol file given.</source>
+ <translation>Не задан файл символов.</translation>
</message>
<message>
- <source>Attached to stopped application</source>
- <translation>Подключено к остановленному приложению</translation>
+ <source>Error Loading Core File</source>
+ <translation>Не удалось загрузить файл дампа</translation>
</message>
<message>
- <source>Connecting to remote server failed:
-%1</source>
- <translation>Не удалось подключиться к удалённому серверу:
-%1</translation>
+ <source>The specified file does not appear to be a core file.</source>
+ <translation>Указанный файл не является дампом.</translation>
</message>
<message>
- <source>An exception was triggered:</source>
- <translation>Возникло исключение:</translation>
+ <source>Error Loading Symbols</source>
+ <translation>Не удалось загрузить символы</translation>
</message>
<message>
- <source>Stopped.</source>
- <translation>Остановлено.</translation>
+ <source>No executable to load symbols from specified core.</source>
+ <translation>Отсутствует программа для загрузки символов из указанного дампа.</translation>
</message>
<message>
- <source>GDB I/O Error</source>
- <translation>Ошибка вводы/вывода GDB</translation>
+ <source>Attaching to process %1.</source>
+ <translation>Присоединение к процессу %1.</translation>
</message>
<message>
- <source>Adapter start failed</source>
- <translation>Не удалось запустить адаптер</translation>
+ <source>Attached to running application.</source>
+ <translation>Присоединено к работающему приложению.</translation>
+ </message>
+ <message>
+ <source>Failed to attach to application: %1</source>
+ <translation>Не удалось присоединиться к приложению: %1</translation>
+ </message>
+ <message>
+ <source>Debugger Error</source>
+ <translation>Ошибка отладчика</translation>
+ </message>
+ <message>
+ <source>Interrupting not possible.</source>
+ <translation>Прерывание невозможно.</translation>
+ </message>
+ <message>
+ <source>Reading debug information failed:</source>
+ <translation>Сбой чтения отладочной информации:</translation>
+ </message>
+ <message>
+ <source>Symbols found.</source>
+ <translation>Символы найдены.</translation>
+ </message>
+ <message>
+ <source>No symbols found in the core file &quot;%1&quot;.</source>
+ <translation>Символы в файле дампа «%1» не найдены.</translation>
+ </message>
+ <message>
+ <source>This can be caused by a path length limitation in the core file.</source>
+ <translation>Это могло возникнуть из-за ограничений на длину пути в файле дампа.</translation>
+ </message>
+ <message>
+ <source>Try to specify the binary in Debug &gt; Start Debugging &gt; Attach to Core.</source>
+ <translation>Попробуйте указать программу используя диалог Отладка-&gt;Начать отладку-&gt;Присоединиться к дампу.</translation>
+ </message>
+ <message>
+ <source>Starting executable failed:</source>
+ <translation>Не удалось запустить программу:</translation>
+ </message>
+ <message>
+ <source>No Remote Executable or Process ID Specified</source>
+ <translation>Ни внешний исполняемый файл, ни ID процесса не указаны</translation>
+ </message>
+ <message>
+ <source>No remote executable could be determined from your build system files.&lt;p&gt;In case you use qmake, consider adding&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;target.path = /tmp/your_executable # path on device&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;INSTALLS += target&lt;/p&gt;to your .pro file.</source>
+ <translation>Не удалось определить внешний исполняемый файл из вашей системы сборки.&lt;p&gt;В случае использования qmake, добавьте&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;target.path = /tmp/your_executable # путь на устройстве&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;INSTALLS += target&lt;/p&gt;в файл .pro.</translation>
+ </message>
+ <message>
+ <source>Continue Debugging</source>
+ <translation>Продолжить отладку</translation>
+ </message>
+ <message>
+ <source>Attached to core.</source>
+ <translation>Присоединено к дампу.</translation>
+ </message>
+ <message>
+ <source>Attach to core &quot;%1&quot; failed:</source>
+ <translation>Не удалось присоединиться к дампу «%1»:</translation>
+ </message>
+ <message>
+ <source>Continuing nevertheless.</source>
+ <translation>Всё же продолжаем.</translation>
</message>
<message>
<source>Snapshot Creation Error</source>
@@ -13467,10 +13931,6 @@ Try: %2</source>
<translation>Не удалось создать файл снимка.</translation>
</message>
<message>
- <source>Cannot find debugger initialization script</source>
- <translation>Не удалось найти скрипт инициализации отладчика</translation>
- </message>
- <message>
<source>Retrieving data for stack view...</source>
<translation>Получение данных о стеке...</translation>
</message>
@@ -13479,33 +13939,9 @@ Try: %2</source>
<translation>Потребована остановка...</translation>
</message>
<message>
- <source>Executable failed</source>
- <translation>Программа завершилась с ошибкой</translation>
- </message>
- <message>
<source>An exception was triggered.</source>
<translation>Возникло исключение.</translation>
</message>
- <message numerus="yes">
- <source>The gdb process has not responded to a command within %n second(s). This could mean it is stuck in an endless loop or taking longer than expected to perform the operation.
-You can choose between waiting longer or aborting debugging.</source>
- <translation>
- <numerusform>Процесс gdb не отвечает на команду в течение %n секунды. Это может означать, что он попал в бесконечный цикл, или исполнение операции занимает больше времени, чем предполагается.
-Вы можете продолжить ожидание или прервать отладку.</numerusform>
- <numerusform>Процесс gdb не отвечает на команду в течение %n секунд. Это может означать, что он попал в бесконечный цикл, или исполнение операции занимает больше времени, чем предполагается.
-Вы можете продолжить ожидание или прервать отладку.</numerusform>
- <numerusform>Процесс gdb не отвечает на команду в течение %n секунд. Это может означать, что он попал в бесконечный цикл, или исполнение операции занимает больше времени, чем предполагается.
-Вы можете продолжить ожидание или прервать отладку.</numerusform>
- </translation>
- </message>
- <message>
- <source>Stop debugging</source>
- <translation>Прервать отладку</translation>
- </message>
- <message>
- <source>Setting breakpoints failed</source>
- <translation>Не удалось установить точки останова</translation>
- </message>
<message>
<source>Executable Failed</source>
<translation>Программа завершилась с ошибкой</translation>
@@ -13515,26 +13951,14 @@ You can choose between waiting longer or aborting debugging.</source>
<translation>Программа завершилась с ошибкой: %1</translation>
</message>
<message>
- <source>Target line hit. Stopped</source>
- <translation>Строка достигнута. Остановлено</translation>
- </message>
- <message>
<source>Value changed from %1 to %2.</source>
<translation>Значение изменилось с %1 на %2.</translation>
</message>
<message>
- <source>The selected build of GDB supports Python scripting, but the used version %1.%2 is not sufficient for Qt Creator. Supported versions are Python 2.7 and 3.x.</source>
- <translation>Выбранная сборка GDB поддерживает сценарии Python, но версия Python %1.%2 не подходит Qt Creator. Поддерживается Python версий 2.7 и 3.x.</translation>
- </message>
- <message>
<source>Execution Error</source>
<translation>Ошибка выполнения</translation>
</message>
<message>
- <source>Failed to shut down application</source>
- <translation>Не удалось закрыть приложение</translation>
- </message>
- <message>
<source>Running requested...</source>
<translation>Потребован запуск...</translation>
</message>
@@ -13591,16 +14015,12 @@ You can choose between waiting longer or aborting debugging.</source>
<translation>Настройка подчинённого...</translation>
</message>
<message>
- <source>Setting breakpoints...</source>
- <translation>Установка точек останова...</translation>
- </message>
- <message>
- <source>Failed to start application</source>
- <translation>Не удалось запустить приложение</translation>
+ <source>Adapter Start Failed</source>
+ <translation>Не удалось запустить адаптер</translation>
</message>
<message>
- <source>Adapter crashed</source>
- <translation>Адаптер аварийно завершился</translation>
+ <source>Setting breakpoints...</source>
+ <translation>Установка точек останова...</translation>
</message>
</context>
<context>
@@ -13614,19 +14034,6 @@ You can choose between waiting longer or aborting debugging.</source>
<translation>Таймаут ответа GDB:</translation>
</message>
<message>
- <source>The number of seconds Qt Creator will wait before it terminates
-a non-responsive GDB process. The default value of 20 seconds should
-be sufficient for most applications, but there are situations when
-loading big libraries or listing source files takes much longer than
-that on slow machines. In this case, the value should be increased.</source>
- <translation>Столько секунд будет ждать Qt Creator перед тем, как завершит
-неотвечающий процесс gdb. 20 секунд, которые установлены по
-умолчанию, в большинстве случаев должно быть достаточно, но
-бывают ситуации, когда загрузка больших библиотек или просмотр
-исходных файлов могут занять гораздо больше времени, особенно на
-медленных машинах. В таком случае это число должно быть увеличено.</translation>
- </message>
- <message>
<source>sec</source>
<translation> сек</translation>
</message>
@@ -13741,6 +14148,19 @@ markers in the source code editor.</source>
<translation>GDB</translation>
</message>
<message>
+ <source>The number of seconds before a non-responsive GDB process is terminated.
+The default value of 20 seconds should be sufficient for most
+applications, but there are situations when loading big libraries or
+listing source files takes much longer than that on slow machines.
+In this case, the value should be increased.</source>
+ <translation>Столько секунд следует ждать неотвечающий процесс GDB перед тем,
+как его завершить. 20 секунд, которые установлены по умолчанию,
+в большинстве случаев должно быть достаточно, но бывают ситуации,
+когда загрузка больших библиотек или просмотр исходных файлов
+могут занять гораздо больше времени, особенно на медленных машинах.
+В таком случае это число должно быть увеличено.</translation>
+ </message>
+ <message>
<source>Extended</source>
<translation>Расширенные</translation>
</message>
@@ -13785,142 +14205,6 @@ markers in the source code editor.</source>
</message>
</context>
<context>
- <name>Debugger::Internal::GdbPlainEngine</name>
- <message>
- <source>Starting executable failed:</source>
- <translation>Не удалось запустить программу:</translation>
- </message>
- <message>
- <source>Cannot set up communication with child process: %1</source>
- <translation>Не удалось установить связь с дочерним процессом: %1</translation>
- </message>
-</context>
-<context>
- <name>Debugger::Internal::GdbRemoteServerEngine</name>
- <message>
- <source>The upload process failed to start. Shell missing?</source>
- <translation>Не удалось запустить процесс выгрузки. Отсутствует оболочка?</translation>
- </message>
- <message>
- <source>The upload process crashed some time after starting successfully.</source>
- <translation>Процесс выгрузки аварийно завершился через некоторое время после успешного запуска.</translation>
- </message>
- <message>
- <source>The last waitFor...() function timed out. The state of QProcess is unchanged, and you can try calling waitFor...() again.</source>
- <translation>У последней функции waitFor...() истекло время ожидания. Состояние QProcess не изменилось, и вы можете попробовать вызвать waitFor...() снова.</translation>
- </message>
- <message>
- <source>An error occurred when attempting to write to the upload process. For example, the process may not be running, or it may have closed its input channel.</source>
- <translation>Ошибка при отправке данных процессу выгрузки. Например, процесс может уже не работать или он мог закрыть свой входной канал.</translation>
- </message>
- <message>
- <source>An error occurred when attempting to read from the upload process. For example, the process may not be running.</source>
- <translation>Ошибка при получении данных от процесса выгрузки. Например, процесс может уже не работать.</translation>
- </message>
- <message>
- <source>An unknown error in the upload process occurred. This is the default return value of error().</source>
- <translation>У процесса выгрузки возникла неизвестная ошибка. Это значение error() возвращает по умолчанию.</translation>
- </message>
- <message>
- <source>Error</source>
- <translation>Ошибка</translation>
- </message>
- <message>
- <source>Upload failed: %1</source>
- <translation>Не удалось выгрузить: %1</translation>
- </message>
- <message>
- <source>No symbol file given.</source>
- <translation>Не обнаружен файл символов.</translation>
- </message>
- <message>
- <source>Reading debug information failed:</source>
- <translation>Не удалось прочитать отладочную информацию:</translation>
- </message>
- <message>
- <source>No Remote Executable or Process ID Specified</source>
- <translation>Ни внешний исполняемый файл, ни ID процесса не указаны</translation>
- </message>
- <message>
- <source>No remote executable could be determined from your build system files.&lt;p&gt;In case you use qmake, consider adding&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;target.path = /tmp/your_executable # path on device&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;INSTALLS += target&lt;/p&gt;to your .pro file.</source>
- <translation>Не удалось определить внешний исполняемый файл из вашей системы сборки.&lt;p&gt;В случае использования qmake, добавьте&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;target.path = /tmp/your_executable # путь на устройстве&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;INSTALLS += target&lt;/p&gt;в файл .pro.</translation>
- </message>
- <message>
- <source>Continue Debugging</source>
- <translation>Продолжить отладку</translation>
- </message>
- <message>
- <source>Stop Debugging</source>
- <translation>Остановить отладку</translation>
- </message>
- <message>
- <source>Interrupting not possible</source>
- <translation>Прерывание невозможно</translation>
- </message>
-</context>
-<context>
- <name>Debugger::Internal::GdbServerStarter</name>
- <message>
- <source>Remote Error</source>
- <translation>Удалённая ошибка</translation>
- </message>
- <message>
- <source>Could not retrieve list of free ports:</source>
- <translation>Не удалось получить список свободных портов:</translation>
- </message>
- <message>
- <source>Process aborted</source>
- <translation>Процесс прерван</translation>
- </message>
- <message>
- <source>Running command: %1</source>
- <translation>Выполнение команды: %1</translation>
- </message>
- <message>
- <source>Connection error: %1</source>
- <translation>Ошибка подключения: %1</translation>
- </message>
- <message>
- <source>Starting gdbserver...</source>
- <translation>Запускается gdbserver...</translation>
- </message>
- <message>
- <source>Port %1 is now accessible.</source>
- <translation>Порт %1 сейчас доступен.</translation>
- </message>
- <message>
- <source>Server started on %1:%2</source>
- <translation>Сервер запущен на %1:%2</translation>
- </message>
- <message>
- <source>Warning</source>
- <translation>Предупреждение</translation>
- </message>
- <message>
- <source>Cannot find local executable for remote process &quot;%1&quot;.</source>
- <translation>Не удалось найти локальную программу для внешнего процесса «%1».</translation>
- </message>
- <message>
- <source>Cannot find ABI for remote process &quot;%1&quot;.</source>
- <translation>Не удалось найти ABI для внешнего процесса «%1».</translation>
- </message>
- <message>
- <source>Remote: &quot;%1&quot;</source>
- <translation>Внешний: «%1»</translation>
- </message>
- <message>
- <source>Process gdbserver finished. Status: %1</source>
- <translation>Процесс gdbserver завершился. Статус: %1</translation>
- </message>
-</context>
-<context>
- <name>Debugger::Internal::GdbTermEngine</name>
- <message>
- <source>Debugger Error</source>
- <translation>Ошибка отладчика</translation>
- </message>
-</context>
-<context>
<name>Debugger::Internal::InputPane</name>
<message>
<source>Type Ctrl-&lt;Return&gt; to execute a line.</source>
@@ -13962,10 +14246,6 @@ markers in the source code editor.</source>
<translation>У процесса LLDB возникла неопознанная ошибка.</translation>
</message>
<message>
- <source>Debugger Error</source>
- <translation>Ошибка отладчика</translation>
- </message>
- <message>
<source>The last waitFor...() function timed out. The state of QProcess is unchanged, and you can try calling waitFor...() again.</source>
<translation>У последней функции waitFor...() истекло время ожидания. Состояние QProcess не изменилось, и вы можете попробовать вызвать waitFor...() снова.</translation>
</message>
@@ -13974,10 +14254,6 @@ markers in the source code editor.</source>
<translation>Временно остановлено</translation>
</message>
<message>
- <source>Run in Terminal is not supported with the LLDB backend.</source>
- <translation>Запуск в терминале не поддерживается отладчиком LLDB.</translation>
- </message>
- <message>
<source>Unable to start LLDB &quot;%1&quot;: %2</source>
<translation>Не удалось запустить LLDB «%1»: %2</translation>
</message>
@@ -13991,21 +14267,56 @@ markers in the source code editor.</source>
</message>
</context>
<context>
+ <name>Debugger::Internal::LocalProcessRunner</name>
+ <message>
+ <source>Upload failed: %1</source>
+ <translation>Не удалось выгрузить: %1</translation>
+ </message>
+ <message>
+ <source>The upload process failed to start. Shell missing?</source>
+ <translation>Не удалось запустить процесс выгрузки. Отсутствует оболочка?</translation>
+ </message>
+ <message>
+ <source>The upload process crashed some time after starting successfully.</source>
+ <translation>Процесс выгрузки аварийно завершился через некоторое время после успешного запуска.</translation>
+ </message>
+ <message>
+ <source>The last waitFor...() function timed out. The state of QProcess is unchanged, and you can try calling waitFor...() again.</source>
+ <translation>У последней функции waitFor...() истекло время ожидания. Состояние QProcess не изменилось, и вы можете попробовать вызвать waitFor...() снова.</translation>
+ </message>
+ <message>
+ <source>An error occurred when attempting to write to the upload process. For example, the process may not be running, or it may have closed its input channel.</source>
+ <translation>Ошибка при отправке данных процессу выгрузки. Например, процесс может уже не работать или он мог закрыть свой входной канал.</translation>
+ </message>
+ <message>
+ <source>An error occurred when attempting to read from the upload process. For example, the process may not be running.</source>
+ <translation>Ошибка при получении данных от процесса выгрузки. Например, процесс может уже не работать.</translation>
+ </message>
+ <message>
+ <source>An unknown error in the upload process occurred. This is the default return value of error().</source>
+ <translation>У процесса выгрузки возникла неизвестная ошибка. Это значение error() возвращает по умолчанию.</translation>
+ </message>
+ <message>
+ <source>Error</source>
+ <translation>Ошибка</translation>
+ </message>
+</context>
+<context>
<name>Debugger::Internal::LocalsAndExpressionsOptionsPage</name>
<message>
<source>Use Debugging Helper</source>
<translation>Использовать помощник отладчика</translation>
</message>
<message>
- <source>The debugging helpers are used to produce a nice display of objects of certain types like QString or std::map in the &amp;quot;Locals and Expressions&amp;quot; view. </source>
- <translation>Помощники отладчика используются для корректного отображения объектов некоторых типов, вроде QString и std::map в обзоре «Переменные» режима отладки.</translation>
- </message>
- <message>
<source>Debugging Helper Customization</source>
<translation>Настройка помощников отладчика</translation>
</message>
<message>
- <source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Python commands entered here will be executed after Qt Creator&apos;s debugging helpers have been loaded and fully initialized. You can load additional debugging helpers or modify existing ones here.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
+ <source>The debugging helpers are used to produce a nice display of objects of certain types like QString or std::map in the &amp;quot;Locals and Expressions&amp;quot; view.</source>
+ <translation>Помощники отладчика используются для корректного отображения объектов некоторых типов, вроде QString и std::map в обзоре «Переменные» режима отладки.</translation>
+ </message>
+ <message>
+ <source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Python commands entered here will be executed after built-in debugging helpers have been loaded and fully initialized. You can load additional debugging helpers or modify existing ones here.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
<translation>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Введённые здесь команды на языке Python будут выполнены после загрузки и полной инициализации помощников отладчика. Здесь же можно загрузить дополнительные помощники или изменить существующие.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
</message>
<message>
@@ -14044,11 +14355,11 @@ markers in the source code editor.</source>
<translation>Команда:</translation>
</message>
<message>
- <source>Note: This log contains possibly confidential information about your machine, environment variables, in-memory data of the processes you are debugging, and more. It is never transferred over the internet by Qt Creator, and only stored to disk if you manually use the respective option from the context menu, or through mechanisms that are not under Qt Creator&apos;s control, for instance in swap files.
+ <source>Note: This log contains possibly confidential information about your machine, environment variables, in-memory data of the processes you are debugging, and more. It is never transferred over the internet by %1, and only stored to disk if you manually use the respective option from the context menu, or through mechanisms that are not under the control of %1, for instance in swap files.
You may be asked to share the contents of this log when reporting bugs related to debugger operation. In this case, make sure your submission does not contain data you do not want to or you are not allowed to share.
</source>
- <translation>Замечание: Этот журнал может содержать конфиденциальную информацию о вашей машине, переменных среды, данных из памяти отлаживаемых процессов и пр. Qt Creator никогда не передаёт его по сети Internet, а только сохраняет на диск, при использовании соответствующей опции контекстного меню или через внешний механизм, например, файл подкачки.
+ <translation>Замечание: Этот журнал может содержать конфиденциальную информацию о вашей машине, переменных среды, данных из памяти отлаживаемых процессов и пр. %1 никогда не передаёт его по сети Internet, а только сохраняет на диск, при использовании соответствующей опции контекстного меню или через неподконтрольный %1 механизм, например, файл подкачки.
Вас могут попросить поделиться журналом при сообщении об ошибках при отладке. В этом случае убедитесь, что отправляемое содержимое не содержит данных, которые публиковать недопустимо.
</translation>
@@ -14167,29 +14478,6 @@ You may be asked to share the contents of this log when reporting bugs related t
</message>
</context>
<context>
- <name>Debugger::Internal::Predicate</name>
- <message>
- <source>Name</source>
- <translation>Имя</translation>
- </message>
- <message>
- <source>Location</source>
- <translation>Размещение</translation>
- </message>
- <message>
- <source>Type</source>
- <translation>Тип</translation>
- </message>
- <message>
- <source>Auto-detected</source>
- <translation>Обнаруженная</translation>
- </message>
- <message>
- <source>Manual</source>
- <translation>Особые</translation>
- </message>
-</context>
-<context>
<name>Debugger::Internal::QmlCppEngine</name>
<message>
<source>C++ debugger activated</source>
@@ -14207,10 +14495,6 @@ You may be asked to share the contents of this log when reporting bugs related t
<translation>Вывод приложения не получен вовремя</translation>
</message>
<message>
- <source>Qt Creator</source>
- <translation></translation>
- </message>
- <message>
<source>Could not connect to the in-process QML debugger.
Do you want to retry?</source>
<translation>Не удалось подключиться к внутрипроцессному отладчику QML.
@@ -14237,6 +14521,10 @@ Do you want to retry?</source>
<translation>Потребовано выполнение до строки %1 (%2)...</translation>
</message>
<message>
+ <source>Cannot evaluate %1 in current stack frame.</source>
+ <translation>Невозможно вычислить %1 в текущем кадре стека.</translation>
+ </message>
+ <message>
<source>QML Debugger disconnected.</source>
<translation>Отладчик QML отключён.</translation>
</message>
@@ -14620,6 +14908,10 @@ Do you want to retry?</source>
<translation>Выбор рабочего каталога</translation>
</message>
<message>
+ <source>This option can be used to point to a script that will be used to start a debug server. If the field is empty, default methods to set up debug servers will be used.</source>
+ <translation>Этот параметр позволяет указать сценарий для запуска сервера отладки. Если оставить его пустым, то будет использоваться стандартный метод запуска.</translation>
+ </message>
+ <message>
<source>Select Location of Debugging Information</source>
<translation>Выберите размещение отладочной информации</translation>
</message>
@@ -14632,10 +14924,6 @@ Do you want to retry?</source>
<translation>Порт сервера:</translation>
</message>
<message>
- <source>This option can be used to point to a script that will be used to start a debug server. If the field is empty, Qt Creator&apos;s default methods to set up debug servers will be used.</source>
- <translation>Этот параметр позволяет указать сценарий для запуска сервера отладки. Если оставить его пустым, то будет использоваться стандартный метод запуска.</translation>
- </message>
- <message>
<source>&amp;Server start script:</source>
<translation>Сценарий &amp;запуска сервера:</translation>
</message>
@@ -14685,8 +14973,8 @@ You can choose another communication channel here, such as a serial line or cust
<context>
<name>Debugger::Internal::StartRemoteCdbDialog</name>
<message>
- <source>&lt;html&gt;&lt;body&gt;&lt;p&gt;The remote CDB needs to load the matching Qt Creator CDB extension (&lt;code&gt;%1&lt;/code&gt; or &lt;code&gt;%2&lt;/code&gt;, respectively).&lt;/p&gt;&lt;p&gt;Copy it onto the remote machine and set the environment variable &lt;code&gt;%3&lt;/code&gt; to point to its folder.&lt;/p&gt;&lt;p&gt;Launch the remote CDB as &lt;code&gt;%4 &amp;lt;executable&amp;gt;&lt;/code&gt; to use TCP/IP as communication protocol.&lt;/p&gt;&lt;p&gt;Enter the connection parameters as:&lt;/p&gt;&lt;pre&gt;%5&lt;/pre&gt;&lt;/body&gt;&lt;/html&gt;</source>
- <translation>&lt;html&gt;&lt;body&gt;&lt;p&gt;Удалённый CDB должен загрузить подходящее Qt Creator расширение (&lt;code&gt;%1&lt;/code&gt; или &lt;code&gt;%2&lt;/code&gt;, соответственно).&lt;/p&gt;&lt;p&gt;Скопируйте его на удалённую машину и задайте переменной среды &lt;code&gt;%3&lt;/code&gt; путь к каталогу с расширением.&lt;/p&gt;&lt;p&gt;Запустите удалённых CDB так: &lt;code&gt;%4 &amp;lt;программа&amp;gt;&lt;/code&gt; при использовании протокола TCP/IP.&lt;/p&gt;&lt;p&gt;Введите следующие параметры соединения:&lt;/p&gt;&lt;pre&gt;%5&lt;/pre&gt;&lt;/body&gt;&lt;/html&gt;</translation>
+ <source>&lt;html&gt;&lt;body&gt;&lt;p&gt;The remote CDB needs to load the matching %1 CDB extension (&lt;code&gt;%2&lt;/code&gt; or &lt;code&gt;%3&lt;/code&gt;, respectively).&lt;/p&gt;&lt;p&gt;Copy it onto the remote machine and set the environment variable &lt;code&gt;%4&lt;/code&gt; to point to its folder.&lt;/p&gt;&lt;p&gt;Launch the remote CDB as &lt;code&gt;%5 &amp;lt;executable&amp;gt;&lt;/code&gt; to use TCP/IP as communication protocol.&lt;/p&gt;&lt;p&gt;Enter the connection parameters as:&lt;/p&gt;&lt;pre&gt;%6&lt;/pre&gt;&lt;/body&gt;&lt;/html&gt;</source>
+ <translation>&lt;html&gt;&lt;body&gt;&lt;p&gt;Удалённый CDB должен загрузить подходящее %1 расширение (&lt;code&gt;%2&lt;/code&gt; или &lt;code&gt;%3&lt;/code&gt;, соответственно).&lt;/p&gt;&lt;p&gt;Скопируйте его на удалённую машину и задайте переменной среды &lt;code&gt;%4&lt;/code&gt; путь к каталогу с расширением.&lt;/p&gt;&lt;p&gt;Запустите удалённых CDB так: &lt;code&gt;%5 &amp;lt;программа&amp;gt;&lt;/code&gt; при использовании протокола TCP/IP.&lt;/p&gt;&lt;p&gt;Введите следующие параметры соединения:&lt;/p&gt;&lt;pre&gt;%6&lt;/pre&gt;&lt;/body&gt;&lt;/html&gt;</translation>
</message>
<message>
<source>Start a CDB Remote Session</source>
@@ -14970,10 +15258,6 @@ You can choose another communication channel here, such as a serial line or cust
<translation>Внутрениий ID</translation>
</message>
<message>
- <source>Debugger - Qt Creator</source>
- <translation>Отладчик - Qt Creator</translation>
- </message>
- <message>
<source>&lt;empty&gt;</source>
<translation>&lt;пустое&gt;</translation>
</message>
@@ -15025,6 +15309,10 @@ You can choose another communication channel here, such as a serial line or cust
<source>Name</source>
<translation>Имя</translation>
</message>
+ <message>
+ <source>Debugger - %1</source>
+ <translation>Отладчик - %1</translation>
+ </message>
</context>
<context>
<name>Debugger::Internal::WatchItem</name>
@@ -15451,22 +15739,6 @@ You can choose another communication channel here, such as a serial line or cust
</message>
</context>
<context>
- <name>DebuggerItemManagerPrivate</name>
- <message>
- <source>Auto-detected CDB at %1</source>
- <translation>Обнаруженный CDB в %1</translation>
- </message>
- <message>
- <source>System %1 at %2</source>
- <extracomment>%1: Debugger engine type (GDB, LLDB, CDB...), %2: Path</extracomment>
- <translation>Система %1 в %2</translation>
- </message>
- <message>
- <source>Extracted from Kit %1</source>
- <translation>Извлечён из комплекта %1</translation>
- </message>
-</context>
-<context>
<name>Debuggger::Internal::ModulesHandler</name>
<message>
<source>Unknown</source>
@@ -16286,10 +16558,6 @@ Rebuilding the project might help.</source>
<context>
<name>ExtensionSystem::Internal::PluginErrorOverview</name>
<message>
- <source>Qt Creator - Plugin loader messages</source>
- <translation>Сообщения загрузчика модулей Qt Creator</translation>
- </message>
- <message>
<source>The following plugins have errors and cannot be loaded:</source>
<translation>Следующие модули содержат ошибки и не могут быть загружены:</translation>
</message>
@@ -16297,6 +16565,10 @@ Rebuilding the project might help.</source>
<source>Details:</source>
<translation>Подробнее:</translation>
</message>
+ <message>
+ <source>Plugin Loader Messages</source>
+ <translation>Сообщения загрузчика модулей</translation>
+ </message>
</context>
<context>
<name>ExtensionSystem::Internal::PluginErrorView</name>
@@ -16427,6 +16699,33 @@ Rebuilding the project might help.</source>
</message>
</context>
<context>
+ <name>ExtensionSystem::PluginManager</name>
+ <message>
+ <source>Circular dependency detected:</source>
+ <translation>Обнаружена циклическая зависимость:</translation>
+ </message>
+ <message>
+ <source>%1 (%2) depends on</source>
+ <translation>%1 (%2) зависит от</translation>
+ </message>
+ <message>
+ <source>%1 (%2)</source>
+ <translation>%1 (%2)</translation>
+ </message>
+ <message>
+ <source>Cannot load plugin because dependency failed to load: %1 (%2)
+Reason: %3</source>
+ <translation>Невозможно загрузить модуль, так как не удалось загрузить его зависимость: %1 (%2)
+Причина: %3</translation>
+ </message>
+ <message>
+ <source>Cannot load plugin because dependency failed to load: %1(%2)
+Reason: %3</source>
+ <translation>Невозможно загрузить модуль, так как не удалось загрузить его зависимость: %1 (%2)
+Причина: %3</translation>
+ </message>
+</context>
+<context>
<name>ExtensionSystem::PluginView</name>
<message>
<source>Name</source>
@@ -16899,14 +17198,6 @@ will also disable the following plugins:
<translation>Размещение .vimrc:</translation>
</message>
<message>
- <source>Passes key sequences like Ctrl-S to Qt Creator core instead of interpreting them in FakeVim. This gives easier access to Qt Creator core functionality at the price of losing some features of FakeVim.</source>
- <translation>Напрвлять управляющие клавиши (например, Ctrl-S) напрямую ядру Qt Creator, вместо FakeVim. Это даёт простой доступ к функциональности ядра Qt Creator за счёт потери некоторых особенностей FakeVim.</translation>
- </message>
- <message>
- <source>Lets Qt Creator handle some key presses in insert mode so that code can be properly completed and expanded.</source>
- <translation>Позволяет Qt Creator обрабатывать некоторые нажатия клавиш в режиме вставки, что позволяет корректно завершать и дополнять код.</translation>
- </message>
- <message>
<source>Show line numbers relative to cursor</source>
<translation>Номера строк относительно курсора</translation>
</message>
@@ -16918,6 +17209,14 @@ will also disable the following plugins:
<source>Vim tabstop option.</source>
<translation>Опция tabstop редактора Vim.</translation>
</message>
+ <message>
+ <source>Does not interpret key sequences like Ctrl-S in FakeVim but handles them as regular shortcuts. This gives easier access to core functionality at the price of losing some features of FakeVim.</source>
+ <translation>Не интерпретировать комбинации клавиш (например Ctrl-S) в FakeVim, а обрабатывать их, как в обычном редакторе. Это позволит упростить доступ к основной функциональности за счёт потери некоторых возможностей FakeVim.</translation>
+ </message>
+ <message>
+ <source>Does not interpret some key presses in insert mode so that code can be properly completed and expanded.</source>
+ <translation>Не обрабатывать некоторые нажатия клавиш в режиме вставки, чтобы код мог корректно завершаться и дополняться.</translation>
+ </message>
</context>
<context>
<name>FileResourcesModel</name>
@@ -17214,6 +17513,10 @@ will also disable the following plugins:
<translation>Ошибка подсветки: </translation>
</message>
<message>
+ <source>Generic highlighter error: %1</source>
+ <translation>Ошибка подсветки: %1</translation>
+ </message>
+ <message>
<source>Reached empty context.</source>
<translation>Получен пустой контекст.</translation>
</message>
@@ -17230,8 +17533,8 @@ will also disable the following plugins:
<translation>Имя «%1» не найдено.</translation>
</message>
<message>
- <source>Generic highlighter warning: </source>
- <translation>Предупреждение подсветки: </translation>
+ <source>Generic highlighter warning: %1</source>
+ <translation>Предупреждение подсветки: %1</translation>
</message>
</context>
<context>
@@ -17317,8 +17620,8 @@ will also disable the following plugins:
<translation>Импорт существующего проекта</translation>
</message>
<message>
- <source>Imports existing projects that do not use qmake, CMake or Autotools. This allows you to use Qt Creator as a code editor.</source>
- <translation>Импорт существующего проекта, не использующего qmake, CMake или Autotools. Это позволяет использовать Qt Creator в качестве редактора кода.</translation>
+ <source>Imports existing projects that do not use qmake, CMake or Autotools. This allows you to use %1 as a code editor.</source>
+ <translation>Импорт существующего проекта, не использующего qmake, CMake или Autotools. Это позволяет использовать %1 в качестве редактора кода.</translation>
</message>
</context>
<context>
@@ -17584,10 +17887,6 @@ Note: This can expose you to man-in-the-middle attack.</source>
<translation>Не удалось инициализировать</translation>
</message>
<message>
- <source>Failed to initialize dialog. Aborting.</source>
- <translation>Не удалось инициализировать диалог. Прервано.</translation>
- </message>
- <message>
<source>Error</source>
<translation>Ошибка</translation>
</message>
@@ -17645,6 +17944,10 @@ were not verified among remotes in %3. Select different folder?</source>
<translation>&amp;Рецензенты:</translation>
</message>
<message>
+ <source>Cannot find a Gerrit remote. Add one and try again.</source>
+ <translation>Невозможно найти внешнее хранилище Gerrit. Добавьте его и попробуйте снова.</translation>
+ </message>
+ <message>
<source>Number of commits between %1 and %2: %3</source>
<translation>Число фиксаций между %1 и %2: %3</translation>
</message>
@@ -19292,6 +19595,13 @@ Remote: %4</source>
<source>URL:</source>
<translation></translation>
</message>
+</context>
+<context>
+ <name>Git::Internal::RemoteDialog</name>
+ <message>
+ <source>Remotes</source>
+ <translation>Внешние хранилища</translation>
+ </message>
<message>
<source>A remote with the name &quot;%1&quot; already exists.</source>
<translation>Внешнее хранилище с именем «%1» уже существует.</translation>
@@ -19300,13 +19610,6 @@ Remote: %4</source>
<source>The URL may not be valid.</source>
<translation>URL может быть неверен.</translation>
</message>
-</context>
-<context>
- <name>Git::Internal::RemoteDialog</name>
- <message>
- <source>Remotes</source>
- <translation>Внешние хранилища</translation>
- </message>
<message>
<source>Delete Remote</source>
<translation>Удаление внешнего хранилища</translation>
@@ -20700,10 +21003,6 @@ Ids must begin with a lowercase letter.</source>
<translation>Не удалось найти отладочные символы для устройства в %1. Инициализация отладки займёт много времени. Для её ускорения необходимо подключить устройство и открыть окно органайзера Xcode для генерации символов.</translation>
</message>
<message>
- <source>Debugging with Xcode 5.0.x can be unreliable without a dSYM. To create one, add a dsymutil deploystep.</source>
- <translation>Отладка с помощью Xcode 5.0 может быть ненадёжной без dSYM. Для его создания добавьте dsymutil в шаг установки.</translation>
- </message>
- <message>
<source>The dSYM %1 seems to be outdated, it might confuse the debugger.</source>
<translation>Видимо dSYM %1 устарел, он может смутить отладчик.</translation>
</message>
@@ -20863,10 +21162,6 @@ Ids must begin with a lowercase letter.</source>
<translation>Запуск %1 на %2</translation>
</message>
<message>
- <source>The .pro file &quot;%1&quot; is currently being parsed.</source>
- <translation>Идёт обработка файла .pro: «%1».</translation>
- </message>
- <message>
<source>Kit has incorrect device type for running on iOS devices.</source>
<translation>Комплект имеет недопустимый тип устройства для работы под iOS.</translation>
</message>
@@ -21165,7 +21460,7 @@ Error: %2</source>
</message>
<message>
<source>Runtime</source>
- <translation type="unfinished">Программа</translation>
+ <translation>Программа</translation>
</message>
<message>
<source>Current State</source>
@@ -21752,6 +22047,81 @@ Error: %5</translation>
</message>
</context>
<context>
+ <name>MainWidget</name>
+ <message>
+ <source>Crash Handler</source>
+ <translation>Обработчик сбоев</translation>
+ </message>
+ <message>
+ <source>Qt Creator has crashed</source>
+ <translation>Qt Creator завершился крахом</translation>
+ </message>
+ <message>
+ <source>You can send us a crash report in order to help us diagnose and fix the problem.</source>
+ <translation>Вы можете отправить этот отчёт о сбое, чтобы помочь нам определить и исправить проблему.</translation>
+ </message>
+ <message>
+ <source>Email:</source>
+ <translation>Email:</translation>
+ </message>
+ <message>
+ <source>Enter here your email (optional)</source>
+ <translation>Введите свой email (не обязательно)</translation>
+ </message>
+ <message>
+ <source>Tell The Qt Company about this crash so they can fix it</source>
+ <translation>Рассказать The Qt Company об этом сбое, чтобы она смогла исправить его</translation>
+ </message>
+ <message>
+ <source>Details</source>
+ <translation>Описание</translation>
+ </message>
+ <message>
+ <source>Please describe what you did before it crashed (comments are publicly visible)</source>
+ <translation>Пожалуйста, опишите, что вы делали перед сбоем (описание будет опубликовано)</translation>
+ </message>
+ <message>
+ <source>Your crash report will be submitted before you quit or restart.</source>
+ <translation>Ваш отчёт о сбое будет отправлен перед выходом или перезапуском.</translation>
+ </message>
+ <message>
+ <source>%v/%m Bytes</source>
+ <translation>%v/%m Байт</translation>
+ </message>
+ <message>
+ <source>Restart</source>
+ <translation>Перезапустить</translation>
+ </message>
+ <message>
+ <source>Quit</source>
+ <translation>Выйти</translation>
+ </message>
+ <message>
+ <source>We specifically send the following information:
+
+</source>
+ <translation>Будет отправлена следующая информация:
+
+</translation>
+ </message>
+ <message>
+ <source>Email: %1
+</source>
+ <translation>Email: %1
+</translation>
+ </message>
+ <message>
+ <source>Comments: %1
+</source>
+ <translation>Описание: %1
+</translation>
+ </message>
+ <message>
+ <source>In addition, we send a Microsoft Minidump file, which contains information about this computer, such as the operating system and CPU, and most importantly, it contains the stacktrace, which is an internal structure that shows where the program crashed. This information will help us to identify the cause of the crash and to fix it.</source>
+ <translation>И ещё, мы отправим файл Microsoft Minidump, который содержит информацию об этом компьютере, такую как операционная система и процессор, а также, что особенно важно, он содержит стек вызовов — внутреннюю стуктуру показывающую, где возник сбой. Эта информация поможет нам определить причину сбоя и устранить её.</translation>
+ </message>
+</context>
+<context>
<name>MainWindow</name>
<message>
<source>MainWindow</source>
@@ -22371,6 +22741,18 @@ Error: %5</translation>
<translation>Добавить диаграмму холста</translation>
</message>
<message>
+ <source>Synchronize Structure with Diagram</source>
+ <translation>Согласовывать структуру с диаграммой</translation>
+ </message>
+ <message>
+ <source>Synchronize Diagram with Structure</source>
+ <translation>Согласовывать диаграмму со структурой</translation>
+ </message>
+ <message>
+ <source>Keep Synchronized</source>
+ <translation>Держать согласованным</translation>
+ </message>
+ <message>
<source>Images (*.png *.jpeg *.jpg *.tif *.tiff);;PDF (*.pdf)</source>
<translation>Изображения (*.png *.jpeg *.jpg *.tif *.tiff);;PDF (*.pdf)</translation>
</message>
@@ -22414,6 +22796,10 @@ Error: %5</translation>
<source>Boundary</source>
<translation>Граница</translation>
</message>
+ <message>
+ <source>Swimlane</source>
+ <translation>Swimlane</translation>
+ </message>
</context>
<context>
<name>ModelEditor::Internal::ModelsManager</name>
@@ -22456,8 +22842,8 @@ Error: %5</translation>
<context>
<name>ModelManagerSupportInternal::displayName</name>
<message>
- <source>Qt Creator Built-in</source>
- <translation>Встроенный в Qt Creator</translation>
+ <source>%1 Built-in</source>
+ <translation>Встроенный в %1</translation>
</message>
</context>
<context>
@@ -22640,8 +23026,8 @@ Error: %5</translation>
<translation>Компилятор Nim не задан.</translation>
</message>
<message>
- <source>Nim compiler does not exist</source>
- <translation>Компилятор Nim отсутствует</translation>
+ <source>Nim compiler does not exist.</source>
+ <translation>Компилятор Nim отсутствует.</translation>
</message>
</context>
<context>
@@ -23296,6 +23682,11 @@ Error: %5</translation>
<translation>Процесс завершился с кодом %1.</translation>
</message>
<message>
+ <source>submit</source>
+ <comment>&quot;commit&quot; action for perforce</comment>
+ <translation>фиксировать</translation>
+ </message>
+ <message>
<source>The commit message check failed. Do you want to submit this change list?</source>
<translation>Проверки сообщения о фиксации завершилась с ошибкой. Отправить указанные изменения?</translation>
</message>
@@ -23518,24 +23909,6 @@ Error: %5</translation>
<source>Failed Plugins</source>
<translation>Проблемные модули</translation>
</message>
- <message>
- <source>Circular dependency detected:</source>
- <translation>Обнаружена циклическая зависимость:</translation>
- </message>
- <message>
- <source>%1(%2) depends on</source>
- <translation>%1(%2) зависит от</translation>
- </message>
- <message>
- <source>%1(%2)</source>
- <translation>%1(%2)</translation>
- </message>
- <message>
- <source>Cannot load plugin because dependency failed to load: %1(%2)
-Reason: %3</source>
- <translation>Невозможно загрузить модуль, так как его зависимость не загрузилась: %1(%2)
-Причина: %3</translation>
- </message>
</context>
<context>
<name>PluginSpec</name>
@@ -23751,9 +24124,49 @@ Reason: %3</source>
<context>
<name>ProjectExplorer::ApplicationLauncher</name>
<message>
+ <source>User requested stop. Shutting down...</source>
+ <translation>Пользователь запросил останов. Завершение...</translation>
+ </message>
+ <message>
+ <source>Failed to start program. Path or permissions wrong?</source>
+ <translation>Не удалось запустить программу. Путь или права недопустимы?</translation>
+ </message>
+ <message>
+ <source>The program has unexpectedly finished.</source>
+ <translation>Программа неожиданно завершилась.</translation>
+ </message>
+ <message>
+ <source>Some error has occurred while running the program.</source>
+ <translation>Во время работы программы возникли некоторые ошибки.</translation>
+ </message>
+ <message>
<source>Cannot retrieve debugging output.</source>
<translation>Не удалось получить отладочный вывод.</translation>
</message>
+ <message>
+ <source>Cannot run: No device.</source>
+ <translation>Невозможно запустить: нет устройства.</translation>
+ </message>
+ <message>
+ <source>Cannot run: Device is not able to create processes.</source>
+ <translation>Не удалось запустить: Устройство не может создавать процессы.</translation>
+ </message>
+ <message>
+ <source>Cannot run: No command given.</source>
+ <translation>Невозможно запустить: команда не указана.</translation>
+ </message>
+ <message>
+ <source>Application failed to start: %1</source>
+ <translation>Не удалось запустить приложение: %1</translation>
+ </message>
+ <message>
+ <source>Application finished with exit code %1.</source>
+ <translation>Приложение завершилось с кодом %1.</translation>
+ </message>
+ <message>
+ <source>Application finished with exit code 0.</source>
+ <translation>Приложение завершилось с кодом 0.</translation>
+ </message>
</context>
<context>
<name>ProjectExplorer::ArgumentsAspect</name>
@@ -24376,10 +24789,6 @@ cannot be found in the path.</source>
<translation>Ошибка подключения: %1</translation>
</message>
<message>
- <source>Could not start remote process: %1</source>
- <translation>Невозможно запустить внешний процесс: %1</translation>
- </message>
- <message>
<source>Remote process crashed: %1</source>
<translation>Внешний процесс аварийно завершился: %1</translation>
</message>
@@ -24422,8 +24831,8 @@ cannot be found in the path.</source>
<context>
<name>ProjectExplorer::EnvironmentIdAccessor</name>
<message>
- <source>&lt;p&gt;No .user settings file created by this instance of Qt Creator was found.&lt;/p&gt;&lt;p&gt;Did you work with this project on another machine or using a different settings path before?&lt;/p&gt;&lt;p&gt;Do you still want to load the settings file &quot;%1&quot;?&lt;/p&gt;</source>
- <translation>&lt;p&gt;Не удалось найти файл настроек от этого Qt Creator.&lt;/p&gt;&lt;p&gt;Не работали ли вы ранее с этим проектом на другой машине или не использовали ли вы другой путь к настройкам?&lt;/p&gt;&lt;p&gt;Продолжить загрузку файла настроек «%1»?&lt;/p&gt;</translation>
+ <source>&lt;p&gt;No .user settings file created by this instance of %1 was found.&lt;/p&gt;&lt;p&gt;Did you work with this project on another machine or using a different settings path before?&lt;/p&gt;&lt;p&gt;Do you still want to load the settings file &quot;%2&quot;?&lt;/p&gt;</source>
+ <translation>&lt;p&gt;Не удалось найти файл настроек от этого %1.&lt;/p&gt;&lt;p&gt;Не работали ли вы ранее с этим проектом на другой машине или не использовали ли вы другой путь к настройкам?&lt;/p&gt;&lt;p&gt;Продолжить загрузку файла настроек «%2»?&lt;/p&gt;</translation>
</message>
<message>
<source>Settings File for &quot;%1&quot; from a different Environment?</source>
@@ -25150,18 +25559,10 @@ Excluding: %2
<context>
<name>ProjectExplorer::Internal::FolderNavigationWidget</name>
<message>
- <source>Open</source>
- <translation>Открыть</translation>
- </message>
- <message>
<source>Open &quot;%1&quot;</source>
<translation>Открыть «%1»</translation>
</message>
<message>
- <source>Open Parent Folder</source>
- <translation>Открыть родительский каталог</translation>
- </message>
- <message>
<source>Show Hidden Files</source>
<translation>Отображать скрытые файлы</translation>
</message>
@@ -25174,12 +25575,20 @@ Excluding: %2
<translation>Открыть проект в «%1»</translation>
</message>
<message>
- <source>Choose Folder...</source>
- <translation>Выбрать каталог...</translation>
+ <source>Open Project &quot;%1&quot;</source>
+ <translation>Открыть проект в «%1»</translation>
</message>
<message>
- <source>Choose Folder</source>
- <translation>Выбор каталога</translation>
+ <source>Computer</source>
+ <translation>Компьютер</translation>
+ </message>
+ <message>
+ <source>Home</source>
+ <translation>Домашний каталог</translation>
+ </message>
+ <message>
+ <source>Projects</source>
+ <translation>Проекты</translation>
</message>
</context>
<context>
@@ -25492,14 +25901,6 @@ Excluding: %2
</message>
</context>
<context>
- <name>ProjectExplorer::Internal::ProjectDelegate</name>
- <message>
- <source>project</source>
- <comment>Appears in &quot;Open project &lt;name&gt;&quot;</comment>
- <translation>проект</translation>
- </message>
-</context>
-<context>
<name>ProjectExplorer::Internal::ProjectExplorerSettingsPage</name>
<message>
<source>General</source>
@@ -25553,10 +25954,6 @@ Excluding: %2
<translation>Всегда спрашивать перед остановкой приложений</translation>
</message>
<message>
- <source>Limit application output to </source>
- <translation>Ограничить вывод приложения</translation>
- </message>
- <message>
<source>lines</source>
<translation>строками</translation>
</message>
@@ -25616,6 +26013,14 @@ Excluding: %2
<source>Same Build Directory</source>
<translation>В том же каталоге сборки</translation>
</message>
+ <message>
+ <source>Limit build output to </source>
+ <translation>Ограничить вывод сборки</translation>
+ </message>
+ <message>
+ <source>Limit application output to</source>
+ <translation>Ограничить вывод приложения</translation>
+ </message>
</context>
<context>
<name>ProjectExplorer::Internal::ProjectFileWizardExtension</name>
@@ -25658,6 +26063,10 @@ to project &quot;%2&quot;.</source>
<translation>Скрыть сгенерированные файлы</translation>
</message>
<message>
+ <source>Hide Empty Directories</source>
+ <translation>Скрывать пустые каталоги</translation>
+ </message>
+ <message>
<source>Synchronize with Editor</source>
<translation>Согласовать с редактором</translation>
</message>
@@ -25716,6 +26125,11 @@ to project &quot;%2&quot;.</source>
<translation>Открыть %1 «%2» (%3)</translation>
</message>
<message>
+ <source>session</source>
+ <comment>Appears in &quot;Open session &lt;name&gt;&quot;</comment>
+ <translation>сессию</translation>
+ </message>
+ <message>
<source>%1 (last session)</source>
<translation>%1 (последняя сессия)</translation>
</message>
@@ -25736,6 +26150,11 @@ to project &quot;%2&quot;.</source>
<translation>Удалить</translation>
</message>
<message>
+ <source>project</source>
+ <comment>Appears in &quot;Open project &lt;name&gt;&quot;</comment>
+ <translation>проект</translation>
+ </message>
+ <message>
<source>New Project</source>
<translation>Новый проект</translation>
</message>
@@ -25835,13 +26254,6 @@ to project &quot;%2&quot;.</source>
</message>
</context>
<context>
- <name>ProjectExplorer::Internal::RunControlPrivate</name>
- <message>
- <source>Unexpected run control state %1 when worker %2 started.</source>
- <translation type="unfinished">Неожиданное состояние %1 при запуске исполнителя %2.</translation>
- </message>
-</context>
-<context>
<name>ProjectExplorer::Internal::RunSettingsWidget</name>
<message>
<source>Remove Run Configuration?</source>
@@ -25934,25 +26346,6 @@ to project &quot;%2&quot;.</source>
</message>
</context>
<context>
- <name>ProjectExplorer::Internal::RunWorkerPrivate</name>
- <message>
- <source>Worker start timed out.</source>
- <translation>Время запуска исполнителя истекло.</translation>
- </message>
- <message>
- <source>Worker stop timed out.</source>
- <translation>Время остановки исполнителя истекло.</translation>
- </message>
-</context>
-<context>
- <name>ProjectExplorer::Internal::SessionDelegate</name>
- <message>
- <source>session</source>
- <comment>Appears in &quot;Open session &lt;name&gt;&quot;</comment>
- <translation>сессию</translation>
- </message>
-</context>
-<context>
<name>ProjectExplorer::Internal::SessionDialog</name>
<message>
<source>Session Manager</source>
@@ -25986,10 +26379,6 @@ to project &quot;%2&quot;.</source>
<source>Restore last session on startup</source>
<translation>Восстанавливать последнюю сессию</translation>
</message>
- <message>
- <source>Automatically restores the last session when Qt Creator is started.</source>
- <translation>Автоматически восстанавливать последнюю сессию при запуске Qt Creator.</translation>
- </message>
</context>
<context>
<name>ProjectExplorer::Internal::SessionModel</name>
@@ -26933,6 +27322,10 @@ Preselects a desktop Qt for building the application if available.</source>
<translation>Консольное приложение Qt</translation>
</message>
<message>
+ <source>Use Qt Virtual Keyboard.</source>
+ <translation>Использовать виртуальную клавиатуру Qt</translation>
+ </message>
+ <message>
<source>This wizard creates an empty .pro file.</source>
<translation>Этот мастер создаст пустой файл .pro.</translation>
</message>
@@ -26957,66 +27350,18 @@ Preselects a desktop Qt for building the application if available.</source>
<translation>Определение данных проекта</translation>
</message>
<message>
- <source>Creates a Qt Canvas 3D QML project. Optionally including three.js.</source>
- <translation>Создание проекта Qt Canvas 3D QML. Возможно подключение three.js.</translation>
- </message>
- <message>
- <source>Qt Canvas 3D Application</source>
- <translation>Приложение Qt Canvas 3D</translation>
- </message>
- <message>
<source>Qt 5.6</source>
<translation>Qt 5.6</translation>
</message>
<message>
- <source>Qt 5.5</source>
- <translation>Qt 5.5</translation>
- </message>
- <message>
- <source>Qt 5.4</source>
- <translation>Qt 5.4</translation>
- </message>
- <message>
- <source>Qt 5.3</source>
- <translation>Qt 5.3</translation>
- </message>
- <message>
<source>Minimal required Qt version:</source>
<translation>Минимально необходимая версия Qt:</translation>
</message>
<message>
- <source>With ui.qml file</source>
- <translation>С файлом ui.qml</translation>
- </message>
- <message>
- <source>Creates a deployable Qt Quick 2 application.</source>
- <translation>Создание устанавливаемого приложения Qt Quick 2.</translation>
- </message>
- <message>
- <source>Qt Quick Application</source>
- <translation>Приложение Qt Quick</translation>
- </message>
- <message>
<source>Default</source>
<translation>По умолчанию</translation>
</message>
<message>
- <source>Material</source>
- <translation>Материальный</translation>
- </message>
- <message>
- <source>Universal</source>
- <translation>Универсальный</translation>
- </message>
- <message>
- <source>Qt Quick Controls 2 Style:</source>
- <translation>Стиль Qt Quick Controls 2:</translation>
- </message>
- <message>
- <source>Creates a deployable Qt Quick 2 application using Qt Quick Controls 2.&lt;br/&gt;&lt;br/&gt;&lt;b&gt;Note:&lt;/b&gt; Qt Quick Controls 2 are available with Qt 5.7 and later.</source>
- <translation>Создание устанавливаемого приложение Qt Quick 2 с использованием Qt Quick Controls 2.&lt;br/&gt;&lt;br/&gt;&lt;b&gt;Замечание: &lt;/b&gt;Qt Quick Controls 2 доступны начиная с Qt 5.7.</translation>
- </message>
- <message>
<source>Configuration</source>
<translation>Конфигурация</translation>
</message>
@@ -27133,6 +27478,10 @@ Preselects a desktop Qt for building the application if available.</source>
<translation>Создаст простое приложение на языке C++ без зависимостей.</translation>
</message>
<message>
+ <source>Qt 5.9</source>
+ <translation>Qt 5.9</translation>
+ </message>
+ <message>
<source>Qt 5.8</source>
<translation>Qt 5.8</translation>
</message>
@@ -27141,10 +27490,6 @@ Preselects a desktop Qt for building the application if available.</source>
<translation>Qt 5.7</translation>
</message>
<message>
- <source>Qt Quick Controls 2 Application</source>
- <translation>Приложение Qt Quick Controls 2</translation>
- </message>
- <message>
<source>Creates a Qt Quick 2 UI project with a QML entry point. To use it, you need to have a QML runtime environment such as qmlscene set up.
Use this only if you are prototyping. You cannot create a full application with this. Consider using a Qt Quick Application project instead.</source>
@@ -27159,6 +27504,82 @@ Use this only if you are prototyping. You cannot create a full application with
<translation>Прототип UI на Qt Quick</translation>
</message>
<message>
+ <source>Use Qt Virtual Keyboard</source>
+ <translation>Использовать виртуальную клавиатуру Qt</translation>
+ </message>
+ <message>
+ <source>Creates a Qt Canvas 3D QML project, optionally including three.js.</source>
+ <translation>Создание проекта Qt Canvas 3D QML, возможно, с three.js.</translation>
+ </message>
+ <message>
+ <source>Qt Quick Application - Canvas 3D</source>
+ <translation>Приложение Qt Quick - Canvas 3D</translation>
+ </message>
+ <message>
+ <source>Creates a Qt Quick application that contains an empty window.</source>
+ <translation>Создание приложения Qt Quick, содержащее пустое окно.</translation>
+ </message>
+ <message>
+ <source>Qt Quick Application - Empty</source>
+ <translation>Приложение Qt Quick - Пустое</translation>
+ </message>
+ <message>
+ <source>Material Light</source>
+ <translation>Material Светлый</translation>
+ </message>
+ <message>
+ <source>Material Dark</source>
+ <translation>Material Тёмный</translation>
+ </message>
+ <message>
+ <source>Universal Light</source>
+ <translation>Universal Светлый</translation>
+ </message>
+ <message>
+ <source>Universal Dark</source>
+ <translation>Universal Тёмный</translation>
+ </message>
+ <message>
+ <source>Universal System</source>
+ <translation>Universal Системный</translation>
+ </message>
+ <message>
+ <source>Fusion (Qt 5.10+)</source>
+ <translation>Fusion (Qt 5.10+)</translation>
+ </message>
+ <message>
+ <source>Imagine (Qt 5.10+)</source>
+ <translation>Imagine (Qt 5.10+)</translation>
+ </message>
+ <message>
+ <source>Qt Quick Controls Style:</source>
+ <translation>Стиль Qt Quick Controls:</translation>
+ </message>
+ <message>
+ <source>Creates a Qt Quick Controls application with a ScrollView.</source>
+ <translation>Создание приложения Qt Quick Controls с ScrollView.</translation>
+ </message>
+ <message>
+ <source>Qt Quick Application - Scroll</source>
+ <translation>Приложение Qt Quick - Scroll</translation>
+ </message>
+ <message>
+ <source>Creates a Qt Quick Controls application with a StackView to display content, and a Drawer and ToolBar for navigation.</source>
+ <translation>Создание приложения Qt Quick Controls со StackView для отображения данных и Drawer и ToolBar для навигации.</translation>
+ </message>
+ <message>
+ <source>Qt Quick Application - Stack</source>
+ <translation>Приложение Qt Quick - Stack</translation>
+ </message>
+ <message>
+ <source>Creates a Qt Quick Controls application with a SwipeView for navigation.</source>
+ <translation>Создание приложения Qt Quick Controls со SwipeView для навигации.</translation>
+ </message>
+ <message>
+ <source>Qt Quick Application - Swipe</source>
+ <translation>Приложение Qt Quick - Swipe</translation>
+ </message>
+ <message>
<source>Use existing directory</source>
<translation>Использовать существующий каталог</translation>
</message>
@@ -27625,14 +28046,18 @@ Please close all running instances of your application before starting a build.<
</context>
<context>
<name>ProjectExplorer::PortsGatherer</name>
+ <message numerus="yes">
+ <source>Found %n free ports.</source>
+ <translation>
+ <numerusform>Обнаружен %n свободный порт.</numerusform>
+ <numerusform>Обнаружено %n свободных порта.</numerusform>
+ <numerusform>Обнаружено %n свободных портов.</numerusform>
+ </translation>
+ </message>
<message>
<source>Checking available ports...</source>
<translation>Проверка доступных портов...</translation>
</message>
- <message>
- <source>Found %1 free ports</source>
- <translation>Обнаружено %1 свободных портов</translation>
- </message>
</context>
<context>
<name>ProjectExplorer::Project</name>
@@ -27823,6 +28248,10 @@ Please close all running instances of your application before starting a build.<
<translation>C++</translation>
</message>
<message>
+ <source>Open...</source>
+ <translation>Открыть...</translation>
+ </message>
+ <message>
<source>S&amp;essions</source>
<translation>С&amp;ессии</translation>
</message>
@@ -27976,6 +28405,14 @@ Please close all running instances of your application before starting a build.<
<translation>Не закрывать</translation>
</message>
<message>
+ <source>Close %1?</source>
+ <translation>Закрыть %1?</translation>
+ </message>
+ <message>
+ <source>Do you want to cancel the build process and close %1 anyway?</source>
+ <translation>Закрыть %1, прервав процесс сборки?</translation>
+ </message>
+ <message>
<source>The project &quot;%1&quot; is not configured.</source>
<translation>Проект «%1» не настроен.</translation>
</message>
@@ -28201,18 +28638,10 @@ Do you want to ignore them?</source>
<translation>Отменить сборку и закрыть</translation>
</message>
<message>
- <source>Close Qt Creator?</source>
- <translation>Закрыть Qt Creator?</translation>
- </message>
- <message>
<source>A project is currently being built.</source>
<translation>Сейчас собирается проект.</translation>
</message>
<message>
- <source>Do you want to cancel the build process and close Qt Creator anyway?</source>
- <translation>Закрыть Qt Creator, прервав процесс сборки?</translation>
- </message>
- <message>
<source>No active project.</source>
<translation>Нет активного проекта.</translation>
</message>
@@ -28306,6 +28735,14 @@ Do you want to ignore them?</source>
<translation>Переменные текущей среды исполнения</translation>
</message>
<message>
+ <source>The Project is currently being parsed.</source>
+ <translation>Проект сейчас разбирается.</translation>
+ </message>
+ <message>
+ <source>The project could not be fully parsed.</source>
+ <translation>Не удалось полностью разобрать проект.</translation>
+ </message>
+ <message>
<source>Unknown error.</source>
<translation>Неизвестная ошибка.</translation>
</message>
@@ -28337,6 +28774,10 @@ Do you want to ignore them?</source>
<translation>Запускается %1...</translation>
</message>
<message>
+ <source>Unexpected run control state %1 when worker %2 started.</source>
+ <translation>Неожиданное состояние %1 при запуске исполнителя %2.</translation>
+ </message>
+ <message>
<source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;center&gt;&lt;i&gt;%1&lt;/i&gt; is still running.&lt;center/&gt;&lt;center&gt;Force it to quit?&lt;/center&gt;&lt;/body&gt;&lt;/html&gt;</source>
<translation>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;center&gt;&lt;i&gt;%1&lt;/i&gt; ещё выполняется.&lt;center/&gt;&lt;center&gt;Завершить принудительно?&lt;/center&gt;&lt;/body&gt;&lt;/html&gt;</translation>
</message>
@@ -28352,6 +28793,14 @@ Do you want to ignore them?</source>
<context>
<name>ProjectExplorer::RunWorker</name>
<message>
+ <source>Worker start timed out.</source>
+ <translation>Время запуска исполнителя истекло.</translation>
+ </message>
+ <message>
+ <source>Worker stop timed out.</source>
+ <translation>Время остановки исполнителя истекло.</translation>
+ </message>
+ <message>
<source>The process failed to start.</source>
<translation>Не удалось запустить процесс.</translation>
</message>
@@ -28487,13 +28936,13 @@ These files are preserved.</source>
<context>
<name>ProjectExplorer::SettingsAccessor</name>
<message>
- <source>The version of your .shared file is not supported by Qt Creator. Do you want to try loading it anyway?</source>
- <translation>Версия вашего файла .shared не поддерживается этой версией Qt Creator. Попробовать загрузить файл?</translation>
- </message>
- <message>
<source>Unsupported Shared Settings File</source>
<translation>Неподдерживаемый файл общих настроек</translation>
</message>
+ <message>
+ <source>The version of your .shared file is not supported by %1. Do you want to try loading it anyway?</source>
+ <translation>Версия вашего файла .shared не поддерживается этой версией %1. Попробовать загрузить файл?</translation>
+ </message>
</context>
<context>
<name>ProjectExplorer::SimpleTargetRunner</name>
@@ -28609,24 +29058,24 @@ These files are preserved.</source>
<translation>Комплекты</translation>
</message>
<message>
- <source>Qt Creator can use the following kits for project &lt;b&gt;%1&lt;/b&gt;:</source>
+ <source>The following kits can be used for project &lt;b&gt;%1&lt;/b&gt;:</source>
<comment>%1: Project name</comment>
- <translation>Qt Creator может использовать для проекта &lt;b&gt;%1&lt;/b&gt; следующие комплекты:</translation>
+ <translation>К проекту применимы &lt;b&gt;%1&lt;/b&gt; следующие комплекты:</translation>
</message>
</context>
<context>
<name>ProjectExplorer::Task</name>
<message>
- <source>Qt Creator needs a compiler set up to build. Configure a compiler in the kit options.</source>
- <translation>Необходимо в настройках комплекта задать компилятор для сборки.</translation>
+ <source>You asked to build the current Run Configuration&apos;s build target only, but it is not associated with a build target. Update the Make Step in your build settings.</source>
+ <translation>Запрос на сборку только цели текущей конфигурации запуска, но она не связана с целью. Обновите шаги сборки в настройках сборки.</translation>
</message>
<message>
- <source>Qt Creator needs a build configuration set up to build. Configure a build configuration in the project settings.</source>
- <translation>Для сборки проекта необходимо в настройках проекта задать конфигурацию сборки.</translation>
+ <source>%1 needs a compiler set up to build. Configure a compiler in the kit options.</source>
+ <translation>%1 требует наличия компилятора для сборки. Задайте его в настройках комплекта.</translation>
</message>
<message>
- <source>You asked to build the current Run Configuration&apos;s build target only, but it is not associated with a build target. Update the Make Step in your build settings.</source>
- <translation>Запрос на сборку только цели текущей конфигурации запуска, но она не связана с целью. Обновите шаги сборки в настройках сборки.</translation>
+ <source>%1 needs a build configuration set up to build. Configure a build configuration in the project settings.</source>
+ <translation>%1 требует наличия конфигурация сборки. Выберите её в настройках проекта.</translation>
</message>
</context>
<context>
@@ -28657,8 +29106,8 @@ These files are preserved.</source>
<context>
<name>ProjectExplorer::ToolChainKitInformation</name>
<message>
- <source>Compilers produce code for different ABIs.</source>
- <translation>Компиляторы производят коды под разные ABI.</translation>
+ <source>Compilers produce code for different ABIs: %1</source>
+ <translation>Компиляторы производят коды под разные ABI: %1</translation>
</message>
<message>
<source>Compiler</source>
@@ -28762,6 +29211,14 @@ App ID: %2
<context>
<name>PuppetCreator</name>
<message>
+ <source>Puppet is starting ...</source>
+ <translation>Запускается Puppet...</translation>
+ </message>
+ <message>
+ <source>You can now attach your debugger to the %1 puppet with process id: %2.</source>
+ <translation>Сейчас можно присоединить отладчик к %1 puppet с ID процесса %2.</translation>
+ </message>
+ <message>
<source>QML Emulation Layer (QML Puppet) Building was Unsuccessful</source>
<translation>Не удалось собрать слой эмуляции QML (QML Puppet)</translation>
</message>
@@ -28792,14 +29249,6 @@ App ID: %2
<source>Run %1</source>
<translation>Запуск %1</translation>
</message>
- <message>
- <source>(disabled)</source>
- <translation>(отключено)</translation>
- </message>
- <message>
- <source>The script is currently disabled.</source>
- <translation>Сценарий пока отключён.</translation>
- </message>
</context>
<context>
<name>PythonEditor::Internal::PythonRunConfigurationWidget</name>
@@ -29563,6 +30012,10 @@ App ID: %2
<source>TextLabel</source>
<translation></translation>
</message>
+ <message>
+ <source>Store profiles in %1 settings directory</source>
+ <translation>Хранить профили в каталоге настроек %1</translation>
+ </message>
</context>
<context>
<name>QbsProjectManager::Internal::QbsProject</name>
@@ -29681,14 +30134,6 @@ App ID: %2
<context>
<name>QbsProjectManager::Internal::QbsRunConfiguration</name>
<message>
- <source>The .qbs files are currently being parsed.</source>
- <translation>Обрабатываются файлы .qbs.</translation>
- </message>
- <message>
- <source>Parsing of .qbs files has failed.</source>
- <translation>Не удалось обработать файлы .qbs.</translation>
- </message>
- <message>
<source>Error retrieving run environment: %1</source>
<translation>Не удалось получить среду запуска: %1</translation>
</message>
@@ -30182,10 +30627,6 @@ Please update your kit or choose a mkspec for qmake that matches your target env
<context>
<name>QmakeProjectManager::Internal::DesktopQmakeRunConfiguration</name>
<message>
- <source>The .pro file &quot;%1&quot; is currently being parsed.</source>
- <translation>Идёт обработка файла .pro: «%1».</translation>
- </message>
- <message>
<source>Qt Run Configuration</source>
<translation>Конфигурация выполнения Qt</translation>
</message>
@@ -30749,8 +31190,8 @@ Neither the path to the library nor the path to its includes is added to the .pr
<translation>Импортировать как проект qmake (ограниченная функциональность)</translation>
</message>
<message>
- <source>Imports existing projects that do not use qmake, CMake or Autotools.&lt;p&gt;This creates a qmake .pro file that allows you to use Qt Creator as a code editor and as a launcher for debugging and analyzing tools. If you want to build the project, you might need to edit the generated .pro file.</source>
- <translation>Импорт существующего проекта не использующего qmake, CMake или Autotools.&lt;p&gt;Создание файла .pro, который позволит использовать Qt Creator в качестве редактора кода, а так же для запуска отладчика и утилит анализа. Если возникнет необходимость собрать проект, то необходимо отредактировать файл .pro.</translation>
+ <source>Imports existing projects that do not use qmake, CMake or Autotools.&lt;p&gt;This creates a qmake .pro file that allows you to use %1 as a code editor and as a launcher for debugging and analyzing tools. If you want to build the project, you might need to edit the generated .pro file.</source>
+ <translation>Импорт существующего проекта, не использующего qmake, CMake или Autotools.&lt;p&gt;Создание файла .pro, который позволит использовать %1 в качестве редактора кода, а также для запуска отладчика и утилит анализа. Если возникнет необходимость собрать проект, то необходимо отредактировать файл .pro.</translation>
</message>
</context>
<context>
@@ -31652,8 +32093,8 @@ Neither the path to the library nor the path to its includes is added to the .pr
<translation>Требуется перезапуск</translation>
</message>
<message>
- <source>The made changes will take effect after a restart of the QML Emulation layer or Qt Creator.</source>
- <translation>Изменения вступят в силу после перезапуска слоя эмуляции QML или Qt Creator.</translation>
+ <source>The made changes will take effect after a restart of the QML Emulation layer or %1.</source>
+ <translation>Изменения вступят в силу после перезапуска слоя эмуляции QML или %1.</translation>
</message>
<message>
<source>Canvas</source>
@@ -31732,10 +32173,6 @@ Neither the path to the library nor the path to its includes is added to the .pr
<translation>Путь:</translation>
</message>
<message>
- <source>Resets the path to the QML emulation layer that comes with Qt Creator.</source>
- <translation>Вернуть путь к слою эмуляции QML, который идёт в составе Qt Creator.</translation>
- </message>
- <message>
<source>Reset Path</source>
<translation>Сбросить путь</translation>
</message>
@@ -31752,10 +32189,6 @@ Neither the path to the library nor the path to its includes is added to the .pr
<translation>Предупреждать в редакторе об особенностях QML, которые не поддерживаются корректно Qt Quick Designer.</translation>
</message>
<message>
- <source>Path where Qt Creator can find the QML emulation layer executable (qmlpuppet).</source>
- <translation>Путь, по которому Qt Creator сможет найти программу слоя эмуляции QML (qmlpuppet).</translation>
- </message>
- <message>
<source>Internationalization</source>
<translation>Интернационализация</translation>
</message>
@@ -31828,6 +32261,14 @@ Neither the path to the library nor the path to its includes is added to the .pr
<translatorcomment>Полный перевод (начальный размер корневого элемента) не помещается в заголовке GroupBox</translatorcomment>
<translation>Начальный размер</translation>
</message>
+ <message>
+ <source>Path to the QML emulation layer executable (qmlpuppet).</source>
+ <translation>Путь к программе эмуляции QML (qmlpuppet).</translation>
+ </message>
+ <message>
+ <source>Resets the path to the built-in QML emulation layer.</source>
+ <translation>Установить путь к встроенному эмулятору QML.</translation>
+ </message>
</context>
<context>
<name>QmlDesigner::InvalidArgumentException</name>
@@ -31946,6 +32387,14 @@ This is independent of the visibility property in QML.</source>
<source>Move up (CTRL + Up).</source>
<translation>Переместить выше (CTRL + Вверх).</translation>
</message>
+ <message>
+ <source>Filter Tree</source>
+ <translation type="unfinished">Настроить отображение</translation>
+ </message>
+ <message>
+ <source>Show only visible items.</source>
+ <translation>Только видимые элементы.</translation>
+ </message>
</context>
<context>
<name>QmlDesigner::NodeInstanceServerProxy</name>
@@ -32239,7 +32688,7 @@ This is independent of the visibility property in QML.</source>
<translation>Состояния</translation>
</message>
<message>
- <source>Cannot create QtQuick View</source>
+ <source>Cannot Create QtQuick View</source>
<translation>Не удалось создать QtQuick View</translation>
</message>
<message>
@@ -32324,10 +32773,6 @@ This is independent of the visibility property in QML.</source>
<translation>Вставить</translation>
</message>
<message>
- <source>Select Parent: %1</source>
- <translation>Выделить владельца: %1</translation>
- </message>
- <message>
<source>Position</source>
<translation>Положение</translation>
</message>
@@ -32336,10 +32781,6 @@ This is independent of the visibility property in QML.</source>
<translation>Стековый контейнер</translation>
</message>
<message>
- <source>Deselect: </source>
- <translation>Снять выделение: </translation>
- </message>
- <message>
<source>Delete Selection</source>
<translation>Удалить выделенное</translation>
</message>
@@ -33525,16 +33966,16 @@ For more information, see the &quot;Checking Code Syntax&quot; documentation.</s
<context>
<name>QmlJSTools::FindExportedCppTypes</name>
<message>
- <source>The type will only be available in Qt Creator&apos;s QML editors when the type name is a string literal</source>
- <translation>Тип станет доступен в редакторах QML Qt Creator&apos;а только тогда, когда его имя будет строковым литералом</translation>
+ <source>The type will only be available in the QML editors when the type name is a string literal</source>
+ <translation>Имя типа должно быть строковым литералом, чтобы он был доступен в редакторах QML</translation>
</message>
<message>
<source>The module URI cannot be determined by static analysis. The type will be available
globally in the QML editor. You can add a &quot;// @uri My.Module.Uri&quot; annotation to let
-Qt Creator know about a likely URI.</source>
- <translation>Невозможно определить URI модуля путём статического анализа. Тип будет
-глобально доступен в редакторе QML. Можно добавить комментарий
-«// @uri My.Module.Uri», чтобы сообщить Qt Creator&apos;у возможный URI.</translation>
+the QML editor know about a likely URI.</source>
+ <translation>Невозможно определить URI модуля статическим анализом. Тип будет
+глобально доступен в редакторе QML. Можно добавить комментарий вида
+«// @uri My.Module.Uri», чтобы сообщить возможный URI.</translation>
</message>
<message>
<source>must be a string literal to be available in the QML editor</source>
@@ -33706,6 +34147,10 @@ Qt Creator know about a likely URI.</source>
<context>
<name>QmlProfiler::Internal::FlameGraphModel</name>
<message>
+ <source>Could not re-read events from temporary trace file.</source>
+ <translation>Не удалось перечитать события из временного файла трассировки.</translation>
+ </message>
+ <message>
<source>Compile</source>
<translation>Компиляция</translation>
</message>
@@ -33824,6 +34269,10 @@ Qt Creator know about a likely URI.</source>
<source>Mouse Event</source>
<translation>Событие мыши</translation>
</message>
+ <message>
+ <source>Unknown</source>
+ <translation>Неизвестное</translation>
+ </message>
</context>
<context>
<name>QmlProfiler::Internal::InputEventsModelTest</name>
@@ -33907,6 +34356,10 @@ Qt Creator know about a likely URI.</source>
<source>Mouse Event</source>
<translation>Событие мыши</translation>
</message>
+ <message>
+ <source>Unknown</source>
+ <translation>Неизвестное</translation>
+ </message>
</context>
<context>
<name>QmlProfiler::Internal::MemoryUsageModel</name>
@@ -34200,14 +34653,6 @@ Qt Creator know about a likely URI.</source>
<translation>Интервал передачи (мс):</translation>
</message>
<message>
- <source>Periodically flush pending data to Qt Creator. This reduces the delay when loading the
-data and the memory usage in the application. It distorts the profile as the flushing
-itself takes time.</source>
- <translation>Периодически сбрасывать ожидающие данные в Qt Creator. Это уменьшает
-задержку при загрузке данных и объём используемой приложением памяти.
-Но портит профилирование, так как сброс данных занимает время.</translation>
- </message>
- <message>
<source>Process data only when process ends:</source>
<translation>Обрабатывать данные после завершения:</translation>
</message>
@@ -34221,6 +34666,14 @@ the program.</source>
в единую трассировку. Применимо при последовательном запуске/остановке
нескольких движков QML в рамках одного запуска программы.</translation>
</message>
+ <message>
+ <source>Periodically flush pending data to the profiler. This reduces the delay when loading the
+data and the memory usage in the application. It distorts the profile as the flushing
+itself takes time.</source>
+ <translation>Периодически сбрасывать ожидающие данные в профайлер. Это уменьшает
+задержку при загрузке данных и объём используемой приложением памяти,
+но портит профилирование, так как сброс данных занимает время.</translation>
+ </message>
</context>
<context>
<name>QmlProfiler::Internal::QmlProfilerFileReader</name>
@@ -34340,10 +34793,6 @@ the program.</source>
<translation>Основная программа</translation>
</message>
<message>
- <source>%1 / %2% of total in recursive calls</source>
- <translation>%1 / %2% рекурсивных от общего числа вызовов</translation>
- </message>
- <message>
<source>&lt;bytecode&gt;</source>
<translation>&lt;байтовый код&gt;</translation>
</message>
@@ -34372,6 +34821,10 @@ the program.</source>
<translation>Привязка</translation>
</message>
<message>
+ <source>+%1 in recursive calls</source>
+ <translation>+%1 в рекурсивых вызовах</translation>
+ </message>
+ <message>
<source>JavaScript</source>
<translation>JavaScript</translation>
</message>
@@ -34449,10 +34902,6 @@ the program.</source>
<translation>Начать профилирование QML.</translation>
</message>
<message>
- <source>Qt Creator</source>
- <translation>Qt Creator</translation>
- </message>
- <message>
<source>Could not connect to the in-process QML profiler.
Do you want to retry?</source>
<translation>Не удалось подключиться к внутрипроцессному профайлеру QML.
@@ -34596,20 +35045,6 @@ Do you want to save the data first?</source>
</message>
</context>
<context>
- <name>QmlProfiler::QmlProfilerRunner</name>
- <message>
- <source>Qt Creator</source>
- <translation>Qt Creator</translation>
- </message>
- <message>
- <source>Could not connect to the in-process QML debugger:
-%1</source>
- <extracomment>%1 is detailed error message</extracomment>
- <translation>Не удалось подключиться к внутрипроцессному отладчику QML:
-%1</translation>
- </message>
-</context>
-<context>
<name>QmlProfiler::QmlProfilerStatisticsModel</name>
<message>
<source>Could not re-read events from temporary trace file.</source>
@@ -34749,6 +35184,10 @@ Do you want to save the data first?</source>
<comment>QMLRunConfiguration display name.</comment>
<translation></translation>
</message>
+ <message>
+ <source>No script file to execute.</source>
+ <translation>Нет файла сценария для запуска.</translation>
+ </message>
</context>
<context>
<name>QmlProjectManager::QmlTarget</name>
@@ -34759,25 +35198,10 @@ Do you want to save the data first?</source>
</message>
</context>
<context>
- <name>Qnx::Internal::QnxAttachDebugDialog</name>
- <message>
- <source>Project source directory:</source>
- <translation>Каталог исходников проекта:</translation>
- </message>
- <message>
- <source>Local executable:</source>
- <translation>Локальная программа:</translation>
- </message>
-</context>
-<context>
<name>Qnx::Internal::QnxAttachDebugSupport</name>
<message>
- <source>No free ports for debugging.</source>
- <translation>Недостаточно свободных портов для отладки.</translation>
- </message>
- <message>
- <source>Remote: &quot;%1&quot; - Process %2</source>
- <translation>Удалённо: «%1» - процесс %2</translation>
+ <source>Remote QNX process %1</source>
+ <translation>Внешний процесс QNX %1</translation>
</message>
</context>
<context>
@@ -34817,6 +35241,14 @@ Do you want to save the data first?</source>
<source>Preparing remote side...</source>
<translation>Подготовка удалённой стороны...</translation>
</message>
+ <message>
+ <source>Project source directory:</source>
+ <translation>Каталог исходного кода проекта:</translation>
+ </message>
+ <message>
+ <source>Local executable:</source>
+ <translation>Локальная программа:</translation>
+ </message>
</context>
<context>
<name>Qnx::Internal::QnxDeployConfigurationFactory</name>
@@ -35304,17 +35736,6 @@ For more details, see /etc/sysctl.d/10-ptrace.conf
</message>
</context>
<context>
- <name>QtSupport::Internal::ExamplesPageWidget</name>
- <message>
- <source>Search in Examples...</source>
- <translation>Поиск по примерам...</translation>
- </message>
- <message>
- <source>Search in Tutorials...</source>
- <translation>Поиск по учебникам...</translation>
- </message>
-</context>
-<context>
<name>QtSupport::Internal::ExamplesWelcomePage</name>
<message>
<source>Examples</source>
@@ -35360,6 +35781,14 @@ For more details, see /etc/sysctl.d/10-ptrace.conf
<source>Tags:</source>
<translation>Теги:</translation>
</message>
+ <message>
+ <source>Search in Examples...</source>
+ <translation>Поиск по примерам...</translation>
+ </message>
+ <message>
+ <source>Search in Tutorials...</source>
+ <translation>Поиск по учебникам...</translation>
+ </message>
</context>
<context>
<name>QtSupport::Internal::QtKitConfigWidget</name>
@@ -35741,8 +36170,8 @@ For more details, see /etc/sysctl.d/10-ptrace.conf
<context>
<name>QuickTestFramework</name>
<message>
- <source>Quick Tests</source>
- <translation>Тесты Quick</translation>
+ <source>Quick Test</source>
+ <translation>Тест Quick</translation>
</message>
</context>
<context>
@@ -35916,17 +36345,6 @@ For more details, see /etc/sysctl.d/10-ptrace.conf
</message>
</context>
<context>
- <name>RemoteLinux::FifoGatherer</name>
- <message>
- <source>Creating remote socket...</source>
- <translation>Создание внешнего сокета...</translation>
- </message>
- <message>
- <source>Created fifo: %1</source>
- <translation>Создан канал: %1</translation>
- </message>
-</context>
-<context>
<name>RemoteLinux::GenericDirectUploadService</name>
<message>
<source>SFTP initialization failed: %1</source>
@@ -36339,13 +36757,6 @@ In addition, device connectivity will be tested.</source>
</message>
</context>
<context>
- <name>RemoteLinux::LinuxDeviceDebugSupport</name>
- <message>
- <source>Cannot debug: Local executable is not set.</source>
- <translation>Отладка невозможна: локальная программа не задана.</translation>
- </message>
-</context>
-<context>
<name>RemoteLinux::PublicKeyDeploymentDialog</name>
<message>
<source>Choose Public Key File</source>
@@ -36468,13 +36879,6 @@ In addition, device connectivity will be tested.</source>
</message>
</context>
<context>
- <name>RemoteLinux::RemoteLinuxPerfSupport</name>
- <message>
- <source>FIFO for profiling data could not be created.</source>
- <translation>Не удалось создать канал для данных профилирования.</translation>
- </message>
-</context>
-<context>
<name>RemoteLinux::RemoteLinuxRunConfiguration</name>
<message>
<source>%1 (on Remote Device)</source>
@@ -37519,12 +37923,12 @@ Description: %4</source>
<translation>Вырезать</translation>
</message>
<message>
- <source>Remove item(s)</source>
+ <source>Remove items</source>
<translation>Удаление элементов</translation>
</message>
<message>
- <source>Relayout</source>
- <translation>Перекомпоновать</translation>
+ <source>Re-layout</source>
+ <translation>Перекомпоновка</translation>
</message>
<message>
<source>Add new state</source>
@@ -37546,8 +37950,12 @@ Description: %4</source>
<translation>Отсутствует ID</translation>
</message>
<message>
- <source>Duplicate ID (%1)</source>
- <translation>Повторный ID (%1)</translation>
+ <source>Missing ID.</source>
+ <translation>Отсутствует ID.</translation>
+ </message>
+ <message>
+ <source>Duplicate ID (%1).</source>
+ <translation>Повторный ID (%1).</translation>
</message>
</context>
<context>
@@ -37561,8 +37969,8 @@ Description: %4</source>
<translation>Каждый уровень должен иметь только одно начальное состояние.</translation>
</message>
<message>
- <source>Too many initial states at the same level</source>
- <translation>Слишком много начальных состояний на одном уровне</translation>
+ <source>Too many initial states at the same level.</source>
+ <translation>Слишком много начальных состояний на одном уровне.</translation>
</message>
</context>
<context>
@@ -37748,28 +38156,28 @@ Row: %4, Column: %5
<translation>Нарисуйте переходы в состояние.</translation>
</message>
<message>
- <source>No input connection</source>
- <translation>Нет входящего подключения</translation>
+ <source>No input connection.</source>
+ <translation>Нет входящего подключения.</translation>
</message>
<message>
- <source>No input or output connections (%1)</source>
- <translation>Нет входящих или исходящих подключений (%1)</translation>
+ <source>No input or output connections (%1).</source>
+ <translation>Нет входящих или исходящих подключений (%1).</translation>
</message>
<message>
- <source>Draw some transitions to or from state.</source>
- <translation>Нарисуйте переходы в или из состояния.</translation>
+ <source>No output connections (%1).</source>
+ <translation>Нет исходящих подключений (%1).</translation>
</message>
<message>
- <source>No output connections (%1)</source>
- <translation>Нет исходящих подключений (%1)</translation>
+ <source>No input connections (%1).</source>
+ <translation>Нет входящих подключений (%1).</translation>
</message>
<message>
- <source>Draw some transitions from state.</source>
- <translation>Нарисуйте переходы из состояния.</translation>
+ <source>Draw some transitions to or from state.</source>
+ <translation>Нарисуйте переходы в или из состояния.</translation>
</message>
<message>
- <source>No input connections (%1)</source>
- <translation>Нет входящих подключений (%1)</translation>
+ <source>Draw some transitions from state.</source>
+ <translation>Нарисуйте переходы из состояния.</translation>
</message>
</context>
<context>
@@ -37790,8 +38198,8 @@ Row: %4, Column: %5
<translation>Переход должен быть подключён.</translation>
</message>
<message>
- <source>Not Connected (%1)</source>
- <translation>Не подключён (%1)</translation>
+ <source>Not connected (%1).</source>
+ <translation>Не подключён (%1).</translation>
</message>
</context>
<context>
@@ -38389,16 +38797,16 @@ with a password, which you can enter below.</source>
<translation>Настроить проект</translation>
</message>
<message>
- <source>The project &lt;b&gt;%1&lt;/b&gt; is not yet configured.&lt;br/&gt;Qt Creator cannot parse the project, because no kit has been set up.</source>
- <translation>Проект &lt;b&gt;%1&lt;/b&gt; ещё не настроен.&lt;br/&gt;Qt Creator не может обработать проект, так как комплект не задан.</translation>
+ <source>The project &lt;b&gt;%1&lt;/b&gt; is not yet configured.&lt;br/&gt;%2 cannot parse the project, because no kit has been set up.</source>
+ <translation>Проект &lt;b&gt;%1&lt;/b&gt; ещё не настроен.&lt;br/&gt;%2 не может обработать проект, так как комплект не задан.</translation>
</message>
<message>
- <source>The project &lt;b&gt;%1&lt;/b&gt; is not yet configured.&lt;br/&gt;Qt Creator uses the kit &lt;b&gt;%2&lt;/b&gt; to parse the project.</source>
- <translation>Проект &lt;b&gt;%1&lt;/b&gt; ещё не настроен.&lt;br/&gt;Для обработки проекта Qt Creator использует комплект &lt;b&gt;%2&lt;/b&gt;.</translation>
+ <source>The project &lt;b&gt;%1&lt;/b&gt; is not yet configured.&lt;br/&gt;%2 uses the kit &lt;b&gt;%3&lt;/b&gt; to parse the project.</source>
+ <translation>Проект &lt;b&gt;%1&lt;/b&gt; ещё не настроен.&lt;br/&gt;Для обработки проекта %2 использует комплект &lt;b&gt;%3&lt;/b&gt;.</translation>
</message>
<message>
- <source>The project &lt;b&gt;%1&lt;/b&gt; is not yet configured.&lt;br/&gt;Qt Creator uses the &lt;b&gt;invalid&lt;/b&gt; kit &lt;b&gt;%2&lt;/b&gt; to parse the project.</source>
- <translation>Проект &lt;b&gt;%1&lt;/b&gt; ещё не настроен.&lt;br/&gt;Для обработки проекта Qt Creator использует &lt;b&gt;неверный&lt;/b&gt; комплект &lt;b&gt;%2&lt;/b&gt;.</translation>
+ <source>The project &lt;b&gt;%1&lt;/b&gt; is not yet configured.&lt;br/&gt;%2 uses the &lt;b&gt;invalid&lt;/b&gt; kit &lt;b&gt;%3&lt;/b&gt; to parse the project.</source>
+ <translation>Проект &lt;b&gt;%1&lt;/b&gt; ещё не настроен.&lt;br/&gt;Для обработки проекта %2 использует &lt;b&gt;неверный&lt;/b&gt; комплект &lt;b&gt;%3&lt;/b&gt;.</translation>
</message>
<message>
<source>Click to activate:</source>
@@ -38746,8 +39154,8 @@ Excluding: %3
<translation>Шрифт и цвета</translation>
</message>
<message>
- <source>Color Scheme for Qt Creator Theme &quot;%1&quot;</source>
- <translation>Цветовая схема темы Qt Creator «%1»</translation>
+ <source>Color Scheme for Theme &quot;%1&quot;</source>
+ <translation>Цветовая схема темы «%1»</translation>
</message>
<message>
<source>Copy Color Scheme</source>
@@ -38944,25 +39352,6 @@ Specifies how backspace interacts with indentation.
<translation>UTF-8 BOM:</translation>
</message>
<message>
- <source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;
-&lt;p&gt;How text editors should deal with UTF-8 Byte Order Marks. The options are:&lt;/p&gt;
-&lt;ul &gt;&lt;li&gt;&lt;i&gt;Add If Encoding Is UTF-8:&lt;/i&gt; always add a BOM when saving a file in UTF-8 encoding. Note that this will not work if the encoding is &lt;i&gt;System&lt;/i&gt;, as Qt Creator does not know what it actually is.&lt;/li&gt;
-&lt;li&gt;&lt;i&gt;Keep If Already Present: &lt;/i&gt;save the file with a BOM if it already had one when it was loaded.&lt;/li&gt;
-&lt;li&gt;&lt;i&gt;Always Delete:&lt;/i&gt; never write an UTF-8 BOM, possibly deleting a pre-existing one.&lt;/li&gt;&lt;/ul&gt;
-&lt;p&gt;Note that UTF-8 BOMs are uncommon and treated incorrectly by some editors, so it usually makes little sense to add any.&lt;/p&gt;
-&lt;p&gt;This setting does &lt;b&gt;not&lt;/b&gt; influence the use of UTF-16 and UTF-32 BOMs.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
- <translation>&lt;html&gt;&lt;head/&gt;&lt;body&gt;
-&lt;p&gt;Действия редактора с маркерами порядка байт (Byte Order Mark) UTF-8. Варианты:&lt;/p&gt;
-&lt;ul&gt;
-&lt;li&gt;&lt;i&gt;Добавлять, если кодировка UTF-8:&lt;/i&gt; всегда добавлять BOM при сохранении в кодировке UTF-8. Не будет работать, если используется &lt;i&gt;Системная&lt;/i&gt; кодировка, так как Qt Creator не знает, какая она на самом деле.&lt;/li&gt;
-&lt;li&gt;&lt;i&gt;Сохранять, если уже имеется:&lt;/i&gt; записывать BOM в файл, если он был при его загрузке.&lt;/li&gt;
-&lt;li&gt;&lt;i&gt;Всегда удалять:&lt;/i&gt; никогда не записывать BOM в файл, даже если он там был изначально.&lt;/li&gt;
-&lt;/ul&gt;
-&lt;p&gt;Маркеры порядка байт не часто встречаются и могут некорректно интерпретироваться некоторыми редакторами, поэтому нужно серьезное основание для их добавления.&lt;/p&gt;
-&lt;p&gt;Эта настройка &lt;b&gt;не влияет&lt;/b&gt; на использование маркеров кодировок &lt;b&gt;UTF-16&lt;/b&gt; и &lt;b&gt;UTF-32&lt;/b&gt;.&lt;/p&gt;
-&lt;/body&gt;&lt;/html&gt;</translation>
- </message>
- <message>
<source>Add If Encoding Is UTF-8</source>
<translation>Добавлять, если кодировка UTF-8</translation>
</message>
@@ -39034,6 +39423,25 @@ Specifies how backspace interacts with indentation.
<source>Enable smart selection changing</source>
<translation>Использовать умное выделение</translation>
</message>
+ <message>
+ <source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;
+&lt;p&gt;How text editors should deal with UTF-8 Byte Order Marks. The options are:&lt;/p&gt;
+&lt;ul &gt;&lt;li&gt;&lt;i&gt;Add If Encoding Is UTF-8:&lt;/i&gt; always add a BOM when saving a file in UTF-8 encoding. Note that this will not work if the encoding is &lt;i&gt;System&lt;/i&gt;, as the text editor does not know what it actually is.&lt;/li&gt;
+&lt;li&gt;&lt;i&gt;Keep If Already Present: &lt;/i&gt;save the file with a BOM if it already had one when it was loaded.&lt;/li&gt;
+&lt;li&gt;&lt;i&gt;Always Delete:&lt;/i&gt; never write an UTF-8 BOM, possibly deleting a pre-existing one.&lt;/li&gt;&lt;/ul&gt;
+&lt;p&gt;Note that UTF-8 BOMs are uncommon and treated incorrectly by some editors, so it usually makes little sense to add any.&lt;/p&gt;
+&lt;p&gt;This setting does &lt;b&gt;not&lt;/b&gt; influence the use of UTF-16 and UTF-32 BOMs.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
+ <translation>&lt;html&gt;&lt;head/&gt;&lt;body&gt;
+&lt;p&gt;Действия редактора с маркерами порядка байт (Byte Order Mark) UTF-8. Варианты:&lt;/p&gt;
+&lt;ul&gt;
+&lt;li&gt;&lt;i&gt;Добавлять, если кодировка UTF-8:&lt;/i&gt; всегда добавлять BOM при сохранении в кодировке UTF-8. Не будет работать, если используется &lt;i&gt;Системная&lt;/i&gt; кодировка, так как текстовый редактор не знает, какая она на самом деле.&lt;/li&gt;
+&lt;li&gt;&lt;i&gt;Сохранять, если уже имеется:&lt;/i&gt; записывать BOM в файл, если он был при его загрузке.&lt;/li&gt;
+&lt;li&gt;&lt;i&gt;Всегда удалять:&lt;/i&gt; никогда не записывать BOM в файл, даже если он там был изначально.&lt;/li&gt;
+&lt;/ul&gt;
+&lt;p&gt;Маркеры порядка байт не часто встречаются и могут некорректно интерпретироваться некоторыми редакторами, поэтому нужно серьезное основание для их добавления.&lt;/p&gt;
+&lt;p&gt;Эта настройка &lt;b&gt;не влияет&lt;/b&gt; на использование маркеров кодировок &lt;b&gt;UTF-16&lt;/b&gt; и &lt;b&gt;UTF-32&lt;/b&gt;.&lt;/p&gt;
+&lt;/body&gt;&lt;/html&gt;</translation>
+ </message>
</context>
<context>
<name>TextEditor::Internal::CodeStyleDialog</name>
@@ -39564,13 +39972,6 @@ In addition, Shift+Enter inserts an escape character at the cursor position and
</message>
</context>
<context>
- <name>TextEditor::Internal::InternalEngine</name>
- <message>
- <source>Internal</source>
- <translation>Внутрениий</translation>
- </message>
-</context>
-<context>
<name>TextEditor::Internal::LineNumberFilter</name>
<message>
<source>Line %1, Column %2</source>
@@ -40171,6 +40572,18 @@ Influences the indentation of continuation lines.
<translation>Alt+U</translation>
</message>
<message>
+ <source>&amp;Sort Selected Lines</source>
+ <translation>&amp;Упорядочить выбранные строки</translation>
+ </message>
+ <message>
+ <source>Meta+Shift+S</source>
+ <translation>Meta+Shift+S</translation>
+ </message>
+ <message>
+ <source>Alt+Shift+S</source>
+ <translation>Alt+Shift+S</translation>
+ </message>
+ <message>
<source>Fold</source>
<translation>Свернуть</translation>
</message>
@@ -40419,6 +40832,13 @@ Influences the indentation of continuation lines.
</message>
</context>
<context>
+ <name>TextEditor::SearchEngine</name>
+ <message>
+ <source>Internal</source>
+ <translation>Внутренний</translation>
+ </message>
+</context>
+<context>
<name>TextEditor::TextDocument</name>
<message>
<source>Opening File</source>
@@ -40952,6 +41372,18 @@ Will not be applied to whitespace in comments and strings.</source>
<translation>Текст слишком большой для отображения (%1 МБ).</translation>
</message>
<message>
+ <source>&lt;b&gt;Error:&lt;/b&gt; Could not decode &quot;%1&quot; with &quot;%2&quot;-encoding. Editing not possible.</source>
+ <translation>&lt;b&gt;Ошибка:&lt;/b&gt; Не удалось преобразовать «%1» в кодировку «%2». Редактирование невозможно.</translation>
+ </message>
+ <message>
+ <source>Select Encoding</source>
+ <translation>Выбрать кодировку</translation>
+ </message>
+ <message>
+ <source>Other annotations:</source>
+ <translation>Другие аннотации:</translation>
+ </message>
+ <message>
<source>Zoom: %1%</source>
<translation>Масштаб: %1%</translation>
</message>
@@ -40963,17 +41395,6 @@ Will not be applied to whitespace in comments and strings.</source>
<source>Add UTF-8 BOM on Save</source>
<translation>Добавить UTF-8 BOM при сохранении</translation>
</message>
-</context>
-<context>
- <name>TextEditorWidget</name>
- <message>
- <source>&lt;b&gt;Error:&lt;/b&gt; Could not decode &quot;%1&quot; with &quot;%2&quot;-encoding. Editing not possible.</source>
- <translation>&lt;b&gt;Ошибка:&lt;/b&gt; Не удалось преобразовать «%1» в кодировку «%2». Редактирование невозможно.</translation>
- </message>
- <message>
- <source>Select Encoding</source>
- <translation>Выбрать кодировку</translation>
- </message>
<message>
<source>Line: %1, Col: %2</source>
<translation>Строка: %1, Столбец: %2</translation>
@@ -40984,13 +41405,6 @@ Will not be applied to whitespace in comments and strings.</source>
</message>
</context>
<context>
- <name>TextEditorWidgetPrivate</name>
- <message>
- <source>Other annotations:</source>
- <translation>Другие аннотации:</translation>
- </message>
-</context>
-<context>
<name>TextFieldSpecifics</name>
<message>
<source>Text Field</source>
@@ -41350,10 +41764,6 @@ Will not be applied to whitespace in comments and strings.</source>
<translation>Периодичность:</translation>
</message>
<message>
- <source>Qt Creator automatically runs a scheduled check for updates on a time interval basis. If Qt Creator is not in use on the scheduled date, the automatic check for updates will be performed next time Qt Creator starts.</source>
- <translation>Qt Creator периодически проверяет наличие обновлений. Если Qt Creator в это время не работает, то проверка обновлений будет выполнена при следующем его запуске.</translation>
- </message>
- <message>
<source>Next check date:</source>
<translation>Дата следующей проверки:</translation>
</message>
@@ -41369,15 +41779,19 @@ Will not be applied to whitespace in comments and strings.</source>
<source>Check Now</source>
<translation>Проверить сейчас</translation>
</message>
+ <message>
+ <source>Automatically runs a scheduled check for updates on a time interval basis. The automatic check for updates will be performed at the scheduled date, or the next startup following it.</source>
+ <translation>Проверка на наличие обновлений будет запускаться периодически. Она осуществляется в запланированное время или при следующем запуске среды разработки.</translation>
+ </message>
</context>
<context>
<name>UpdateInfo::Internal::UpdateInfoPlugin</name>
<message>
- <source>Updater</source>
- <translation>Обновление</translation>
+ <source>Qt Updater</source>
+ <translation>Программа обновления Qt</translation>
</message>
<message>
- <source>New updates are available. Do you want to start update?</source>
+ <source>New updates are available. Do you want to start the update?</source>
<translation>Доступны новые обновления. Обновить?</translation>
</message>
<message>
@@ -41669,6 +42083,13 @@ Will not be applied to whitespace in comments and strings.</source>
</message>
</context>
<context>
+ <name>Utils::FileSaverBase</name>
+ <message>
+ <source>File Error</source>
+ <translation>Файловая ошибка</translation>
+ </message>
+</context>
+<context>
<name>Utils::FileSearch</name>
<message numerus="yes">
<source>%1: canceled. %n occurrences found in %2 files.</source>
@@ -42086,8 +42507,8 @@ Will not be applied to whitespace in comments and strings.</source>
<translation>Используются старые настройки</translation>
</message>
<message>
- <source>&lt;p&gt;The versioned backup &quot;%1&quot; of the settings file is used, because the non-versioned file was created by an incompatible version of Qt Creator.&lt;/p&gt;&lt;p&gt;Settings changes made since the last time this version of Qt Creator was used are ignored, and changes made now will &lt;b&gt;not&lt;/b&gt; be propagated to the newer version.&lt;/p&gt;</source>
- <translation>&lt;p&gt;Будет использоваться резервная копия файла настроек .user более старой версии («%1»), так как текущий файл создан несовместимой версией Qt Creator.&lt;/p&gt;&lt;p&gt;Изменения настроек проекта, сделанные с момента последнего запуска этой версии Qt Creator, не будут учтены, а изменения, вносимые сейчас, &lt;b&gt;не будут&lt;/b&gt; сохранены в новую версию файла проекта.&lt;/p&gt;</translation>
+ <source>&lt;p&gt;The versioned backup &quot;%1&quot; of the settings file is used, because the non-versioned file was created by an incompatible version of %2.&lt;/p&gt;&lt;p&gt;Settings changes made since the last time this version of %2 was used are ignored, and changes made now will &lt;b&gt;not&lt;/b&gt; be propagated to the newer version.&lt;/p&gt;</source>
+ <translation>&lt;p&gt;Будет использоваться резервная копия файла настроек .user более старой версии («%1»), так как текущий файл создан несовместимой версией %2.&lt;/p&gt;&lt;p&gt;Изменения настроек проекта, сделанные с момента последнего запуска этой версии %2, не будут учтены, а изменения, вносимые сейчас, &lt;b&gt;не будут&lt;/b&gt; сохранены в новую версию файла проекта.&lt;/p&gt;</translation>
</message>
</context>
<context>
@@ -42226,16 +42647,12 @@ Will not be applied to whitespace in comments and strings.</source>
<context>
<name>Utils::fileDeletedPrompt</name>
<message>
- <source>File has been removed</source>
+ <source>File Has Been Removed</source>
<translation>Файл был удалён</translation>
</message>
<message>
- <source>The file %1 has been removed outside Qt Creator. Do you want to save it under a different name, or close the editor?</source>
- <translation>Файл %1 был удалён вне Qt Creator. Желаете его сохранить под другим именем или закрыть?</translation>
- </message>
- <message>
- <source>The file %1 was removed. Do you want to save it under a different name, or close the editor?</source>
- <translation>Файл %1 был удалён. Желаете его сохранить под другим именем или закрыть?</translation>
+ <source>The file %1 has been removed from disk. Do you want to save it under a different name, or close the editor?</source>
+ <translation>Файл %1 был удалён с диска. Закрыть его или сохранить под другим именем?</translation>
</message>
<message>
<source>&amp;Close</source>
@@ -42261,12 +42678,12 @@ Will not be applied to whitespace in comments and strings.</source>
<translation>Файл изменён</translation>
</message>
<message>
- <source>The unsaved file &lt;i&gt;%1&lt;/i&gt; has changed outside Qt Creator. Do you want to reload it and discard your changes?</source>
- <translation>Несохранённый файл &lt;i&gt;%1&lt;/i&gt; был изменён вне Qt Creator. Перезагрузить его с потерей текущих изменений?</translation>
+ <source>The unsaved file &lt;i&gt;%1&lt;/i&gt; has been changed on disk. Do you want to reload it and discard your changes?</source>
+ <translation>Несохранённый файл &lt;i&gt;%1&lt;/i&gt; был изменён на диске. Перезагрузить его с потерей текущих изменений?</translation>
</message>
<message>
- <source>The file &lt;i&gt;%1&lt;/i&gt; has changed outside Qt Creator. Do you want to reload it?</source>
- <translation>Файл &lt;i&gt;%1&lt;/i&gt; был изменён вне Qt Creator. Желаете перезагрузить его?</translation>
+ <source>The file &lt;i&gt;%1&lt;/i&gt; has been changed on disk. Do you want to reload it?</source>
+ <translation>Файл &lt;i&gt;%1&lt;/i&gt; был изменён на диске. Желаете перезагрузить его?</translation>
</message>
<message>
<source>&amp;Close</source>
@@ -43158,6 +43575,12 @@ With cache simulation, further event counters are enabled:
<source>Process terminated.</source>
<translation>Процесс прерван.</translation>
</message>
+ <message>
+ <source>Process exited with return value %1
+</source>
+ <translation>Процесс завершился с кодом %1
+</translation>
+ </message>
</context>
<context>
<name>Valgrind::Internal::Visualisation</name>
@@ -43580,7 +44003,7 @@ should a repository require SSH-authentication (see documentation on SSH and the
</message>
</context>
<context>
- <name>VcsBase::VcsBaseDiffEditorControllerPrivate</name>
+ <name>VcsBase::VcsBaseDiffEditorController</name>
<message>
<source>Processing diff</source>
<translation>Обработка отличий</translation>
@@ -43648,6 +44071,15 @@ should a repository require SSH-authentication (see documentation on SSH and the
<translation>Не удалось удалить файл «%1».</translation>
</message>
<message>
+ <source>commit</source>
+ <comment>name of &quot;commit&quot; action of the VCS.</comment>
+ <translation>фиксировать</translation>
+ </message>
+ <message>
+ <source>Save before %1?</source>
+ <translation>Сохранить перед тем, как %1?</translation>
+ </message>
+ <message>
<source>The directory &quot;%1&quot; is already managed by a version control system (%2). Would you like to specify another directory?</source>
<translation>Каталог «%1» уже находится под системой контроля версий (%2). Выбрать другой каталог?</translation>
</message>
@@ -43800,8 +44232,8 @@ should a repository require SSH-authentication (see documentation on SSH and the
<translation>Впервые с Qt?</translation>
</message>
<message>
- <source>Learn how to develop your own applications and explore Qt Creator.</source>
- <translation>Узнайте, как разрабатывать собственные приложения, и освойте Qt Creator.</translation>
+ <source>Learn how to develop your own applications and explore %1.</source>
+ <translation>Узнайте, как разрабатывать собственные приложения, и освойте %1.</translation>
</message>
<message>
<source>Get Started Now</source>
@@ -43853,8 +44285,8 @@ should a repository require SSH-authentication (see documentation on SSH and the
<translation>Недостаточно свободных портов для отладки QML.</translation>
</message>
<message>
- <source>The WinRT debugging helper is missing from your Qt Creator installation. It was assumed to be located at %1</source>
- <translation>Помощник отладчика WinRT отсутствует в составе установки вашего Qt Creator. Предполагается, что он находится в %1</translation>
+ <source>The WinRT debugging helper is missing from your %1 installation. It was assumed to be located at %2</source>
+ <translation>Помощник отладчика WinRT отсутствует в составе установки вашего %1. Предполагается, что он находится в %2</translation>
</message>
<message>
<source>Cannot start the WinRT Runner Tool.</source>
@@ -44080,6 +44512,14 @@ should a repository require SSH-authentication (see documentation on SSH and the
<source>Show Definition</source>
<translation>Показать определение</translation>
</message>
+ <message>
+ <source>Inheritance</source>
+ <translation>Наследование</translation>
+ </message>
+ <message>
+ <source>Association</source>
+ <translation>Ассоциация</translation>
+ </message>
</context>
<context>
<name>qmt::DiagramController</name>
@@ -44123,6 +44563,10 @@ should a repository require SSH-authentication (see documentation on SSH and the
<translation>Создание ассоциации</translation>
</message>
<message>
+ <source>Create Connection</source>
+ <translation>Создание соединения</translation>
+ </message>
+ <message>
<source>New Package</source>
<translation>Новый пакет</translation>
</message>
@@ -44270,6 +44714,10 @@ should a repository require SSH-authentication (see documentation on SSH and the
<context>
<name>qmt::ObjectItem</name>
<message>
+ <source>Dependency</source>
+ <translation>Зависимость</translation>
+ </message>
+ <message>
<source>Open Diagram</source>
<translation>Открыть диаграмму</translation>
</message>
@@ -44516,6 +44964,14 @@ should a repository require SSH-authentication (see documentation on SSH and the
<translation>Связь:</translation>
</message>
<message>
+ <source>Connection</source>
+ <translation>Соединение</translation>
+ </message>
+ <message>
+ <source>Connections</source>
+ <translation>Соединения</translation>
+ </message>
+ <message>
<source>Position and size:</source>
<translation>Положение и размер:</translation>
</message>
@@ -44600,6 +45056,14 @@ should a repository require SSH-authentication (see documentation on SSH and the
<translation>Автоширина</translation>
</message>
<message>
+ <source>Swimlane</source>
+ <translation>Swimlane</translation>
+ </message>
+ <message>
+ <source>Swimlanes</source>
+ <translation>Swimlane'ы</translation>
+ </message>
+ <message>
<source>&lt;font color=red&gt;Invalid syntax.&lt;/font&gt;</source>
<translation>&lt;font color=red&gt;Неверный синтаксис.&lt;/font&gt;</translation>
</message>
diff --git a/src/plugins/baremetal/baremetalcustomrunconfiguration.cpp b/src/plugins/baremetal/baremetalcustomrunconfiguration.cpp
index 9b7b8606be..1e858fd47b 100644
--- a/src/plugins/baremetal/baremetalcustomrunconfiguration.cpp
+++ b/src/plugins/baremetal/baremetalcustomrunconfiguration.cpp
@@ -122,12 +122,6 @@ void BareMetalCustomRunConfiguration::initialize()
BareMetalRunConfiguration::initialize(runConfigId(), QString());
}
-void BareMetalCustomRunConfiguration::copyFrom(const BareMetalCustomRunConfiguration *source)
-{
- BareMetalRunConfiguration::copyFrom(source);
- m_localExecutable = source->m_localExecutable;
-}
-
bool BareMetalCustomRunConfiguration::isConfigured() const
{
return !m_localExecutable.isEmpty();
diff --git a/src/plugins/baremetal/baremetalcustomrunconfiguration.h b/src/plugins/baremetal/baremetalcustomrunconfiguration.h
index 30812fc3cd..9425d30ffb 100644
--- a/src/plugins/baremetal/baremetalcustomrunconfiguration.h
+++ b/src/plugins/baremetal/baremetalcustomrunconfiguration.h
@@ -39,7 +39,6 @@ public:
explicit BareMetalCustomRunConfiguration(ProjectExplorer::Target *parent);
void initialize();
- void copyFrom(const BareMetalCustomRunConfiguration *source);
bool isConfigured() const override;
ConfigurationState ensureConfigured(QString *errorMessage) override;
diff --git a/src/plugins/baremetal/baremetalrunconfiguration.cpp b/src/plugins/baremetal/baremetalrunconfiguration.cpp
index c0155f7bf7..d2a5760d57 100644
--- a/src/plugins/baremetal/baremetalrunconfiguration.cpp
+++ b/src/plugins/baremetal/baremetalrunconfiguration.cpp
@@ -57,15 +57,6 @@ BareMetalRunConfiguration::BareMetalRunConfiguration(Target *target)
this, &BareMetalRunConfiguration::handleBuildSystemDataUpdated); // Handles device changes, etc.
}
-void BareMetalRunConfiguration::copyFrom(const BareMetalRunConfiguration *other)
-{
- RunConfiguration::copyFrom(other);
- m_projectFilePath = other->m_projectFilePath;
- m_workingDirectory = other->m_workingDirectory;
-
- setDefaultDisplayName(defaultDisplayName());
-}
-
void BareMetalRunConfiguration::initialize(const Core::Id id, const QString &projectFilePath)
{
RunConfiguration::initialize(id);
diff --git a/src/plugins/baremetal/baremetalrunconfiguration.h b/src/plugins/baremetal/baremetalrunconfiguration.h
index c5e8e47b00..98d2cb6faa 100644
--- a/src/plugins/baremetal/baremetalrunconfiguration.h
+++ b/src/plugins/baremetal/baremetalrunconfiguration.h
@@ -67,7 +67,6 @@ protected:
bool fromMap(const QVariantMap &map) override;
QString defaultDisplayName();
void initialize(Core::Id id, const QString &projectFilePath);
- void copyFrom(const BareMetalRunConfiguration *source);
private:
void handleBuildSystemDataUpdated();
diff --git a/src/plugins/cmakeprojectmanager/cmakerunconfiguration.cpp b/src/plugins/cmakeprojectmanager/cmakerunconfiguration.cpp
index 435c691dde..67823d4b68 100644
--- a/src/plugins/cmakeprojectmanager/cmakerunconfiguration.cpp
+++ b/src/plugins/cmakeprojectmanager/cmakerunconfiguration.cpp
@@ -83,17 +83,6 @@ void CMakeRunConfiguration::initialize(Core::Id id, const QString &target,
setDefaultDisplayName(defaultDisplayName());
}
-void CMakeRunConfiguration::copyFrom(const CMakeRunConfiguration *source)
-{
- RunConfiguration::copyFrom(source);
-
- m_buildSystemTarget = source->m_buildSystemTarget;
- m_executable = source->m_executable;
- m_title = source->m_title;
-
- setDefaultDisplayName(defaultDisplayName());
-}
-
Runnable CMakeRunConfiguration::runnable() const
{
StandardRunnable r;
diff --git a/src/plugins/cmakeprojectmanager/cmakerunconfiguration.h b/src/plugins/cmakeprojectmanager/cmakerunconfiguration.h
index 1b04ebb531..9c9b6f0475 100644
--- a/src/plugins/cmakeprojectmanager/cmakerunconfiguration.h
+++ b/src/plugins/cmakeprojectmanager/cmakerunconfiguration.h
@@ -59,7 +59,6 @@ public:
private:
void initialize(Core::Id id, const QString &target,
const Utils::FileName &workingDirectory, const QString &title);
- void copyFrom(const CMakeRunConfiguration *source);
bool fromMap(const QVariantMap &map) override;
QString defaultDisplayName() const;
diff --git a/src/plugins/debugger/debuggerrunconfigurationaspect.cpp b/src/plugins/debugger/debuggerrunconfigurationaspect.cpp
index 8eff840de8..58263c97bb 100644
--- a/src/plugins/debugger/debuggerrunconfigurationaspect.cpp
+++ b/src/plugins/debugger/debuggerrunconfigurationaspect.cpp
@@ -330,10 +330,4 @@ void DebuggerRunConfigurationAspect::fromMap(const QVariantMap &map)
d.useMultiProcess = map.value(QLatin1String(USE_MULTIPROCESS_KEY), false).toBool();
}
-DebuggerRunConfigurationAspect *DebuggerRunConfigurationAspect::create
- (RunConfiguration *runConfiguration) const
-{
- return new DebuggerRunConfigurationAspect(runConfiguration);
-}
-
} // namespace Debugger
diff --git a/src/plugins/debugger/debuggerrunconfigurationaspect.h b/src/plugins/debugger/debuggerrunconfigurationaspect.h
index 1a6c67f96e..87b7bde779 100644
--- a/src/plugins/debugger/debuggerrunconfigurationaspect.h
+++ b/src/plugins/debugger/debuggerrunconfigurationaspect.h
@@ -56,10 +56,9 @@ class DEBUGGER_EXPORT DebuggerRunConfigurationAspect
public:
DebuggerRunConfigurationAspect(ProjectExplorer::RunConfiguration *runConfiguration);
- DebuggerRunConfigurationAspect *create(ProjectExplorer::RunConfiguration *runConfiguration) const;
- void fromMap(const QVariantMap &map);
- void toMap(QVariantMap &map) const;
+ void fromMap(const QVariantMap &map) override;
+ void toMap(QVariantMap &map) const override;
bool useCppDebugger() const;
void setUseCppDebugger(bool value);
diff --git a/src/plugins/ios/iosrunconfiguration.cpp b/src/plugins/ios/iosrunconfiguration.cpp
index d1c5cc6984..33b7275be4 100644
--- a/src/plugins/ios/iosrunconfiguration.cpp
+++ b/src/plugins/ios/iosrunconfiguration.cpp
@@ -105,7 +105,6 @@ IosRunConfiguration::IosRunConfiguration(Target *target)
this, &IosRunConfiguration::deviceChanges);
}
-
void IosRunConfiguration::initialize(Core::Id id, const FileName &path)
{
RunConfiguration::initialize(id);
@@ -114,14 +113,6 @@ void IosRunConfiguration::initialize(Core::Id id, const FileName &path)
updateDisplayNames();
}
-void IosRunConfiguration::copyFrom(const IosRunConfiguration *source)
-{
- RunConfiguration::copyFrom(source);
- m_profilePath = source->m_profilePath;
-
- updateDisplayNames();
-}
-
void IosRunConfiguration::deviceChanges() {
updateDisplayNames();
updateEnabledState();
diff --git a/src/plugins/ios/iosrunconfiguration.h b/src/plugins/ios/iosrunconfiguration.h
index 86401ea094..43c429f8c8 100644
--- a/src/plugins/ios/iosrunconfiguration.h
+++ b/src/plugins/ios/iosrunconfiguration.h
@@ -72,7 +72,6 @@ signals:
private:
friend class ProjectExplorer::IRunConfigurationFactory;
void initialize(Core::Id id, const Utils::FileName &path);
- void copyFrom(const IosRunConfiguration *source);
void deviceChanges();
friend class IosRunConfigurationWidget;
diff --git a/src/plugins/projectexplorer/customexecutableconfigurationwidget.cpp b/src/plugins/projectexplorer/customexecutableconfigurationwidget.cpp
index e66190d1c3..e5aef0395f 100644
--- a/src/plugins/projectexplorer/customexecutableconfigurationwidget.cpp
+++ b/src/plugins/projectexplorer/customexecutableconfigurationwidget.cpp
@@ -63,7 +63,8 @@ CustomExecutableConfigurationWidget::CustomExecutableConfigurationWidget(CustomE
if (mode == InstantApply) {
argumentsAspect->addToMainConfigurationWidget(this, layout);
} else {
- m_temporaryArgumentsAspect = argumentsAspect->clone(rc);
+ m_temporaryArgumentsAspect = new ArgumentsAspect(rc, QString());
+ m_temporaryArgumentsAspect->copyFrom(argumentsAspect);
m_temporaryArgumentsAspect->addToMainConfigurationWidget(this, layout);
connect(m_temporaryArgumentsAspect, &ArgumentsAspect::argumentsChanged,
this, &CustomExecutableConfigurationWidget::validChanged);
@@ -80,7 +81,8 @@ CustomExecutableConfigurationWidget::CustomExecutableConfigurationWidget(CustomE
if (mode == InstantApply) {
terminalAspect->addToMainConfigurationWidget(this, layout);
} else {
- m_temporaryTerminalAspect = terminalAspect->clone(rc);
+ m_temporaryTerminalAspect = new TerminalAspect(rc, QString());
+ m_temporaryTerminalAspect->copyFrom(terminalAspect);
m_temporaryTerminalAspect->addToMainConfigurationWidget(this, layout);
connect(m_temporaryTerminalAspect, &TerminalAspect::useTerminalChanged,
this, &CustomExecutableConfigurationWidget::validChanged);
diff --git a/src/plugins/projectexplorer/customexecutablerunconfiguration.cpp b/src/plugins/projectexplorer/customexecutablerunconfiguration.cpp
index 9b570a4165..708ec0d428 100644
--- a/src/plugins/projectexplorer/customexecutablerunconfiguration.cpp
+++ b/src/plugins/projectexplorer/customexecutablerunconfiguration.cpp
@@ -101,15 +101,6 @@ void CustomExecutableRunConfiguration::initialize()
setDefaultDisplayName(defaultDisplayName());
}
-void CustomExecutableRunConfiguration::copyFrom(const CustomExecutableRunConfiguration *source)
-{
- RunConfiguration::copyFrom(source);
- m_executable = source->m_executable;
- m_workingDirectory = source->m_workingDirectory;
-
- setDefaultDisplayName(defaultDisplayName());
-}
-
// Note: Qt4Project deletes all empty customexecrunconfigs for which isConfigured() == false.
CustomExecutableRunConfiguration::~CustomExecutableRunConfiguration()
{
diff --git a/src/plugins/projectexplorer/customexecutablerunconfiguration.h b/src/plugins/projectexplorer/customexecutablerunconfiguration.h
index 65cdec20c4..5922b01b46 100644
--- a/src/plugins/projectexplorer/customexecutablerunconfiguration.h
+++ b/src/plugins/projectexplorer/customexecutablerunconfiguration.h
@@ -67,8 +67,7 @@ signals:
protected:
void initialize();
- void copyFrom(const CustomExecutableRunConfiguration *source);
- virtual bool fromMap(const QVariantMap &map) override;
+ bool fromMap(const QVariantMap &map) override;
QString defaultDisplayName() const;
private:
diff --git a/src/plugins/projectexplorer/foldernavigationwidget.cpp b/src/plugins/projectexplorer/foldernavigationwidget.cpp
index 80e35ecbcd..c30d056c6d 100644
--- a/src/plugins/projectexplorer/foldernavigationwidget.cpp
+++ b/src/plugins/projectexplorer/foldernavigationwidget.cpp
@@ -115,6 +115,8 @@ FolderNavigationWidget::FolderNavigationWidget(QWidget *parent) : QWidget(parent
m_toggleSync(new QToolButton(this)),
m_rootSelector(new QComboBox)
{
+ setBackgroundRole(QPalette::Base);
+ setAutoFillBackground(true);
m_fileSystemModel->setResolveSymlinks(false);
m_fileSystemModel->setIconProvider(Core::FileIconProvider::iconProvider());
QDir::Filters filters = QDir::AllEntries | QDir::NoDotAndDotDot;
@@ -131,8 +133,14 @@ FolderNavigationWidget::FolderNavigationWidget(QWidget *parent) : QWidget(parent
showOnlyFirstColumn(m_listView);
setFocusProxy(m_listView);
+ auto selectorWidget = new QWidget(this);
+ auto selectorLayout = new QVBoxLayout(selectorWidget);
+ selectorWidget->setLayout(selectorLayout);
+ selectorLayout->setContentsMargins(0, 0, 0, 0);
+ selectorLayout->addWidget(m_rootSelector);
+
auto layout = new QVBoxLayout();
- layout->addWidget(m_rootSelector);
+ layout->addWidget(selectorWidget);
layout->addWidget(m_listView);
layout->setSpacing(0);
layout->setContentsMargins(0, 0, 0, 0);
diff --git a/src/plugins/projectexplorer/localenvironmentaspect.cpp b/src/plugins/projectexplorer/localenvironmentaspect.cpp
index 9d7cd8dcdc..e06eeab353 100644
--- a/src/plugins/projectexplorer/localenvironmentaspect.cpp
+++ b/src/plugins/projectexplorer/localenvironmentaspect.cpp
@@ -94,11 +94,4 @@ LocalEnvironmentAspect::LocalEnvironmentAspect(RunConfiguration *parent,
this, &LocalEnvironmentAspect::buildEnvironmentHasChanged);
}
-LocalEnvironmentAspect *LocalEnvironmentAspect::create(RunConfiguration *parent) const
-{
- auto result = new LocalEnvironmentAspect(parent, m_baseEnvironmentModifier);
- result->setUserEnvironmentChanges(userEnvironmentChanges());
- return result;
-}
-
} // namespace ProjectExplorer
diff --git a/src/plugins/projectexplorer/localenvironmentaspect.h b/src/plugins/projectexplorer/localenvironmentaspect.h
index 1d394b12eb..30b4fee3a1 100644
--- a/src/plugins/projectexplorer/localenvironmentaspect.h
+++ b/src/plugins/projectexplorer/localenvironmentaspect.h
@@ -36,7 +36,6 @@ class PROJECTEXPLORER_EXPORT LocalEnvironmentAspect : public EnvironmentAspect
public:
typedef std::function<void(RunConfiguration *, Utils::Environment &)> BaseEnvironmentModifier;
LocalEnvironmentAspect(RunConfiguration *parent, const BaseEnvironmentModifier &modifier);
- LocalEnvironmentAspect *create(RunConfiguration *parent) const override;
QList<int> possibleBaseEnvironments() const override;
QString baseEnvironmentDisplayName(int base) const override;
diff --git a/src/plugins/projectexplorer/runconfiguration.cpp b/src/plugins/projectexplorer/runconfiguration.cpp
index 8c975a7bbd..03843d3a9e 100644
--- a/src/plugins/projectexplorer/runconfiguration.cpp
+++ b/src/plugins/projectexplorer/runconfiguration.cpp
@@ -110,6 +110,14 @@ RunConfigWidget *IRunConfigurationAspect::createConfigurationWidget() const
return m_runConfigWidgetCreator ? m_runConfigWidgetCreator() : nullptr;
}
+void IRunConfigurationAspect::copyFrom(IRunConfigurationAspect *source)
+{
+ QTC_ASSERT(source, return);
+ QVariantMap data;
+ source->toMap(data);
+ fromMap(data);
+}
+
void IRunConfigurationAspect::setProjectSettings(ISettingsAspect *settings)
{
m_projectSettings = settings;
@@ -132,13 +140,15 @@ ISettingsAspect *IRunConfigurationAspect::currentSettings() const
void IRunConfigurationAspect::fromMap(const QVariantMap &map)
{
- m_projectSettings->fromMap(map);
+ if (m_projectSettings)
+ m_projectSettings->fromMap(map);
m_useGlobalSettings = map.value(m_id.toString() + QLatin1String(".UseGlobalSettings"), true).toBool();
}
void IRunConfigurationAspect::toMap(QVariantMap &map) const
{
- m_projectSettings->toMap(map);
+ if (m_projectSettings)
+ m_projectSettings->toMap(map);
map.insert(m_id.toString() + QLatin1String(".UseGlobalSettings"), m_useGlobalSettings);
}
@@ -147,22 +157,13 @@ void IRunConfigurationAspect::setRunConfigWidgetCreator(const RunConfigWidgetCre
m_runConfigWidgetCreator = runConfigWidgetCreator;
}
-IRunConfigurationAspect *IRunConfigurationAspect::clone(RunConfiguration *runConfig) const
-{
- IRunConfigurationAspect *other = create(runConfig);
- if (m_projectSettings)
- other->m_projectSettings = m_projectSettings->clone();
- other->m_globalSettings = m_globalSettings;
- other->m_useGlobalSettings = m_useGlobalSettings;
- return other;
-}
-
void IRunConfigurationAspect::resetProjectToGlobalSettings()
{
QTC_ASSERT(m_globalSettings, return);
QVariantMap map;
m_globalSettings->toMap(map);
- m_projectSettings->fromMap(map);
+ if (m_projectSettings)
+ m_projectSettings->fromMap(map);
}
@@ -223,6 +224,9 @@ RunConfiguration::RunConfiguration(Target *target)
expander->registerVariable(Constants::VAR_CURRENTRUN_NAME,
QCoreApplication::translate("ProjectExplorer", "The currently active run configuration's name."),
[this] { return displayName(); }, false);
+
+ for (const AspectFactory &factory : theAspectFactories)
+ addExtraAspect(factory(this));
}
RunConfiguration::~RunConfiguration()
@@ -233,20 +237,12 @@ RunConfiguration::~RunConfiguration()
void RunConfiguration::initialize(Core::Id id)
{
StatefulProjectConfiguration::initialize(id);
-
- for (const AspectFactory &factory : theAspectFactories)
- addExtraAspect(factory(this));
}
void RunConfiguration::copyFrom(const RunConfiguration *source)
{
- StatefulProjectConfiguration::copyFrom(source);
-
- foreach (IRunConfigurationAspect *aspect, source->m_aspects) {
- IRunConfigurationAspect *clone = aspect->clone(this);
- if (clone)
- m_aspects.append(clone);
- }
+ QVariantMap data = source->toMap();
+ fromMap(data);
}
bool RunConfiguration::isActive() const
@@ -560,6 +556,40 @@ public:
bool canStop() const;
void timerEvent(QTimerEvent *ev) override;
+ void killStartWatchdog()
+ {
+ if (startWatchdogTimerId != -1) {
+ killTimer(startWatchdogTimerId);
+ startWatchdogTimerId = -1;
+ }
+ }
+
+ void killStopWatchdog()
+ {
+ if (stopWatchdogTimerId != -1) {
+ killTimer(stopWatchdogTimerId);
+ stopWatchdogTimerId = -1;
+ }
+ }
+
+ void startStartWatchdog()
+ {
+ killStartWatchdog();
+ killStopWatchdog();
+
+ if (startWatchdogInterval != 0)
+ startWatchdogTimerId = startTimer(startWatchdogInterval);
+ }
+
+ void startStopWatchdog()
+ {
+ killStopWatchdog();
+ killStartWatchdog();
+
+ if (stopWatchdogInterval != 0)
+ stopWatchdogTimerId = startTimer(stopWatchdogInterval);
+ }
+
RunWorker *q;
RunWorkerState state = RunWorkerState::Initialized;
const QPointer<RunControl> runControl;
@@ -1573,17 +1603,21 @@ bool RunWorkerPrivate::canStop() const
void RunWorkerPrivate::timerEvent(QTimerEvent *ev)
{
if (ev->timerId() == startWatchdogTimerId) {
- if (startWatchdogCallback)
+ if (startWatchdogCallback) {
+ killStartWatchdog();
startWatchdogCallback();
- else
+ } else {
q->reportFailure(RunWorker::tr("Worker start timed out."));
+ }
return;
}
if (ev->timerId() == stopWatchdogTimerId) {
- if (stopWatchdogCallback)
+ if (stopWatchdogCallback) {
+ killStopWatchdog();
stopWatchdogCallback();
- else
+ } else {
q->reportFailure(RunWorker::tr("Worker stop timed out."));
+ }
return;
}
}
@@ -1641,9 +1675,8 @@ RunWorker::~RunWorker()
*/
void RunWorker::initiateStart()
{
- if (d->startWatchdogInterval != 0)
- d->startWatchdogTimerId = d->startTimer(d->startWatchdogInterval);
-
+ d->startStartWatchdog();
+ d->runControl->d->debugMessage("Initiate start for " + d->id);
start();
}
@@ -1655,8 +1688,7 @@ void RunWorker::initiateStart()
*/
void RunWorker::reportStarted()
{
- if (d->startWatchdogInterval != 0)
- d->killTimer(d->startWatchdogTimerId);
+ d->killStartWatchdog();
d->runControl->d->onWorkerStarted(this);
emit started();
}
@@ -1669,9 +1701,7 @@ void RunWorker::reportStarted()
*/
void RunWorker::initiateStop()
{
- if (d->stopWatchdogInterval != 0)
- d->stopWatchdogTimerId = d->startTimer(d->stopWatchdogInterval);
-
+ d->startStopWatchdog();
d->runControl->d->debugMessage("Initiate stop for " + d->id);
stop();
}
@@ -1687,8 +1717,7 @@ void RunWorker::initiateStop()
*/
void RunWorker::reportStopped()
{
- if (d->stopWatchdogInterval != 0)
- d->killTimer(d->stopWatchdogTimerId);
+ d->killStopWatchdog();
d->runControl->d->onWorkerStopped(this);
emit stopped();
}
@@ -1702,6 +1731,8 @@ void RunWorker::reportStopped()
*/
void RunWorker::reportDone()
{
+ d->killStartWatchdog();
+ d->killStopWatchdog();
switch (d->state) {
case RunWorkerState::Initialized:
QTC_CHECK(false);
@@ -1727,6 +1758,8 @@ void RunWorker::reportDone()
*/
void RunWorker::reportFailure(const QString &msg)
{
+ d->killStartWatchdog();
+ d->killStopWatchdog();
d->runControl->d->onWorkerFailed(this, msg);
}
diff --git a/src/plugins/projectexplorer/runconfiguration.h b/src/plugins/projectexplorer/runconfiguration.h
index 7e73c5b0c0..44ac9572a4 100644
--- a/src/plugins/projectexplorer/runconfiguration.h
+++ b/src/plugins/projectexplorer/runconfiguration.h
@@ -102,20 +102,20 @@ public:
explicit IRunConfigurationAspect(RunConfiguration *runConfig);
~IRunConfigurationAspect() override;
- virtual IRunConfigurationAspect *create(RunConfiguration *runConfig) const = 0;
- virtual IRunConfigurationAspect *clone(RunConfiguration *runConfig) const;
-
using RunConfigWidgetCreator = std::function<RunConfigWidget *()>;
void setRunConfigWidgetCreator(const RunConfigWidgetCreator &runConfigWidgetCreator);
RunConfigWidget *createConfigurationWidget() const;
+ void copyFrom(IRunConfigurationAspect *other);
void setId(Core::Id id) { m_id = id; }
void setDisplayName(const QString &displayName) { m_displayName = displayName; }
+ void setSettingsKey(const QString &settingsKey) { m_settingsKey = settingsKey; }
void setProjectSettings(ISettingsAspect *settings);
void setGlobalSettings(ISettingsAspect *settings);
- QString displayName() const { return m_displayName; }
Core::Id id() const { return m_id; }
+ QString displayName() const { return m_displayName; }
+ QString settingsKey() const { return m_settingsKey; }
bool isUsingGlobalSettings() const { return m_useGlobalSettings; }
void setUsingGlobalSettings(bool value);
void resetProjectToGlobalSettings();
@@ -133,6 +133,7 @@ protected:
private:
Core::Id m_id;
QString m_displayName;
+ QString m_settingsKey; // Name of data in settings.
bool m_useGlobalSettings = false;
RunConfiguration *m_runConfiguration = nullptr;
ISettingsAspect *m_projectSettings = nullptr; // Owned if present.
@@ -308,7 +309,7 @@ public:
template <class RunConfig>
static RunConfig *cloneHelper(Target *target, const RunConfiguration *source) {
auto runConfig = new RunConfig(target);
- runConfig->copyFrom(static_cast<const RunConfig *>(source));
+ runConfig->copyFrom(source);
return runConfig;
}
diff --git a/src/plugins/projectexplorer/runconfigurationaspects.cpp b/src/plugins/projectexplorer/runconfigurationaspects.cpp
index 270e600c1d..6b5b204af7 100644
--- a/src/plugins/projectexplorer/runconfigurationaspects.cpp
+++ b/src/plugins/projectexplorer/runconfigurationaspects.cpp
@@ -46,23 +46,12 @@ namespace ProjectExplorer {
\class ProjectExplorer::TerminalAspect
*/
-TerminalAspect::TerminalAspect(RunConfiguration *runConfig, const QString &key,
- bool useTerminal, bool userSet) :
- IRunConfigurationAspect(runConfig),
- m_useTerminal(useTerminal), m_userSet(userSet), m_checkBox(nullptr), m_key(key)
+TerminalAspect::TerminalAspect(RunConfiguration *runConfig, const QString &key, bool useTerminal) :
+ IRunConfigurationAspect(runConfig), m_useTerminal(useTerminal)
{
setDisplayName(tr("Terminal"));
setId("TerminalAspect");
-}
-
-TerminalAspect *TerminalAspect::create(RunConfiguration *runConfig) const
-{
- return new TerminalAspect(runConfig, m_key, false, false);
-}
-
-TerminalAspect *TerminalAspect::clone(RunConfiguration *runConfig) const
-{
- return new TerminalAspect(runConfig, m_key, m_useTerminal, m_userSet);
+ setSettingsKey(key);
}
void TerminalAspect::addToMainConfigurationWidget(QWidget *parent, QFormLayout *layout)
@@ -80,8 +69,8 @@ void TerminalAspect::addToMainConfigurationWidget(QWidget *parent, QFormLayout *
void TerminalAspect::fromMap(const QVariantMap &map)
{
- if (map.contains(m_key)) {
- m_useTerminal = map.value(m_key).toBool();
+ if (map.contains(settingsKey())) {
+ m_useTerminal = map.value(settingsKey()).toBool();
m_userSet = true;
} else {
m_userSet = false;
@@ -91,7 +80,7 @@ void TerminalAspect::fromMap(const QVariantMap &map)
void TerminalAspect::toMap(QVariantMap &data) const
{
if (m_userSet)
- data.insert(m_key, m_useTerminal);
+ data.insert(settingsKey(), m_useTerminal);
}
bool TerminalAspect::useTerminal() const
@@ -129,23 +118,11 @@ void TerminalAspect::setRunMode(ApplicationLauncher::Mode runMode)
*/
WorkingDirectoryAspect::WorkingDirectoryAspect(RunConfiguration *runConfig, const QString &key)
- : IRunConfigurationAspect(runConfig), m_key(key)
+ : IRunConfigurationAspect(runConfig)
{
setDisplayName(tr("Working Directory"));
setId("WorkingDirectoryAspect");
-}
-
-WorkingDirectoryAspect *WorkingDirectoryAspect::create(RunConfiguration *runConfig) const
-{
- return new WorkingDirectoryAspect(runConfig, m_key);
-}
-
-WorkingDirectoryAspect *WorkingDirectoryAspect::clone(RunConfiguration *runConfig) const
-{
- auto * const aspect = new WorkingDirectoryAspect(runConfig, m_key);
- aspect->m_defaultWorkingDirectory = m_defaultWorkingDirectory;
- aspect->m_workingDirectory = m_workingDirectory;
- return aspect;
+ setSettingsKey(key);
}
void WorkingDirectoryAspect::addToMainConfigurationWidget(QWidget *parent, QFormLayout *layout)
@@ -157,7 +134,7 @@ void WorkingDirectoryAspect::addToMainConfigurationWidget(QWidget *parent, QForm
connect(m_resetButton.data(), &QAbstractButton::clicked, this, &WorkingDirectoryAspect::resetPath);
m_chooser = new PathChooser(parent);
- m_chooser->setHistoryCompleter(m_key);
+ m_chooser->setHistoryCompleter(settingsKey());
m_chooser->setExpectedKind(Utils::PathChooser::Directory);
m_chooser->setPromptDialogTitle(tr("Select Working Directory"));
m_chooser->setBaseFileName(m_defaultWorkingDirectory);
@@ -185,7 +162,7 @@ void WorkingDirectoryAspect::addToMainConfigurationWidget(QWidget *parent, QForm
QString WorkingDirectoryAspect::keyForDefaultWd() const
{
- return m_key + QLatin1String(".default");
+ return settingsKey() + ".default";
}
void WorkingDirectoryAspect::resetPath()
@@ -195,7 +172,7 @@ void WorkingDirectoryAspect::resetPath()
void WorkingDirectoryAspect::fromMap(const QVariantMap &map)
{
- m_workingDirectory = FileName::fromString(map.value(m_key).toString());
+ m_workingDirectory = FileName::fromString(map.value(settingsKey()).toString());
m_defaultWorkingDirectory = FileName::fromString(map.value(keyForDefaultWd()).toString());
if (m_workingDirectory.isEmpty())
@@ -204,9 +181,9 @@ void WorkingDirectoryAspect::fromMap(const QVariantMap &map)
void WorkingDirectoryAspect::toMap(QVariantMap &data) const
{
- const QString wd
- = (m_workingDirectory == m_defaultWorkingDirectory) ? QString() : m_workingDirectory.toString();
- data.insert(m_key, wd);
+ const QString wd = m_workingDirectory == m_defaultWorkingDirectory
+ ? QString() : m_workingDirectory.toString();
+ data.insert(settingsKey(), wd);
data.insert(keyForDefaultWd(), m_defaultWorkingDirectory.toString());
}
@@ -257,11 +234,12 @@ PathChooser *WorkingDirectoryAspect::pathChooser() const
\class ProjectExplorer::ArgumentsAspect
*/
-ArgumentsAspect::ArgumentsAspect(RunConfiguration *runConfig, const QString &key, const QString &arguments)
- : IRunConfigurationAspect(runConfig), m_arguments(arguments), m_key(key)
+ArgumentsAspect::ArgumentsAspect(RunConfiguration *runConfig, const QString &key)
+ : IRunConfigurationAspect(runConfig)
{
setDisplayName(tr("Arguments"));
setId("ArgumentsAspect");
+ setSettingsKey(key);
}
QString ArgumentsAspect::arguments() const
@@ -286,29 +264,19 @@ void ArgumentsAspect::setArguments(const QString &arguments)
void ArgumentsAspect::fromMap(const QVariantMap &map)
{
- m_arguments = map.value(m_key).toString();
+ m_arguments = map.value(settingsKey()).toString();
}
void ArgumentsAspect::toMap(QVariantMap &map) const
{
- map.insert(m_key, m_arguments);
-}
-
-ArgumentsAspect *ArgumentsAspect::create(RunConfiguration *runConfig) const
-{
- return new ArgumentsAspect(runConfig, m_key);
-}
-
-ArgumentsAspect *ArgumentsAspect::clone(RunConfiguration *runConfig) const
-{
- return new ArgumentsAspect(runConfig, m_key, m_arguments);
+ map.insert(settingsKey(), m_arguments);
}
void ArgumentsAspect::addToMainConfigurationWidget(QWidget *parent, QFormLayout *layout)
{
QTC_CHECK(!m_chooser);
m_chooser = new FancyLineEdit(parent);
- m_chooser->setHistoryCompleter(m_key);
+ m_chooser->setHistoryCompleter(settingsKey());
m_chooser->setText(m_arguments);
connect(m_chooser.data(), &QLineEdit::textChanged, this, &ArgumentsAspect::setArguments);
diff --git a/src/plugins/projectexplorer/runconfigurationaspects.h b/src/plugins/projectexplorer/runconfigurationaspects.h
index d20fd15526..4d94396ba5 100644
--- a/src/plugins/projectexplorer/runconfigurationaspects.h
+++ b/src/plugins/projectexplorer/runconfigurationaspects.h
@@ -33,7 +33,6 @@
QT_BEGIN_NAMESPACE
class QCheckBox;
class QFormLayout;
-class QLineEdit;
class QToolButton;
QT_END_NAMESPACE
@@ -49,11 +48,8 @@ class PROJECTEXPLORER_EXPORT TerminalAspect : public IRunConfigurationAspect
Q_OBJECT
public:
- explicit TerminalAspect(RunConfiguration *rc, const QString &key,
- bool useTerminal = false, bool userSet = false);
-
- TerminalAspect *create(RunConfiguration *runConfig) const override;
- TerminalAspect *clone(RunConfiguration *runConfig) const override;
+ TerminalAspect(RunConfiguration *rc, const QString &settingsKey,
+ bool useTerminal = false);
void addToMainConfigurationWidget(QWidget *parent, QFormLayout *layout);
@@ -75,7 +71,6 @@ private:
bool m_useTerminal = false;
bool m_userSet = false;
QPointer<QCheckBox> m_checkBox; // Owned by RunConfigWidget
- QString m_key;
};
class PROJECTEXPLORER_EXPORT WorkingDirectoryAspect : public IRunConfigurationAspect
@@ -83,10 +78,7 @@ class PROJECTEXPLORER_EXPORT WorkingDirectoryAspect : public IRunConfigurationAs
Q_OBJECT
public:
- explicit WorkingDirectoryAspect(RunConfiguration *runConfig, const QString &key);
-
- WorkingDirectoryAspect *create(RunConfiguration *runConfig) const override;
- WorkingDirectoryAspect *clone(RunConfiguration *runConfig) const override;
+ explicit WorkingDirectoryAspect(RunConfiguration *runConfig, const QString &settingsKey);
void addToMainConfigurationWidget(QWidget *parent, QFormLayout *layout);
@@ -107,7 +99,6 @@ private:
Utils::FileName m_defaultWorkingDirectory;
QPointer<Utils::PathChooser> m_chooser;
QPointer<QToolButton> m_resetButton;
- QString m_key;
};
class PROJECTEXPLORER_EXPORT ArgumentsAspect : public IRunConfigurationAspect
@@ -115,10 +106,7 @@ class PROJECTEXPLORER_EXPORT ArgumentsAspect : public IRunConfigurationAspect
Q_OBJECT
public:
- explicit ArgumentsAspect(RunConfiguration *runConfig, const QString &key, const QString &arguments = QString());
-
- ArgumentsAspect *create(RunConfiguration *runConfig) const override;
- ArgumentsAspect *clone(RunConfiguration *runConfig) const override;
+ explicit ArgumentsAspect(RunConfiguration *runConfig, const QString &settingsKey);
void addToMainConfigurationWidget(QWidget *parent, QFormLayout *layout);
@@ -136,7 +124,6 @@ private:
QString m_arguments;
QPointer<Utils::FancyLineEdit> m_chooser;
- QString m_key;
};
} // namespace ProjectExplorer
diff --git a/src/plugins/pythoneditor/pythoneditorplugin.cpp b/src/plugins/pythoneditor/pythoneditorplugin.cpp
index 9290a2cd98..b81f02eca5 100644
--- a/src/plugins/pythoneditor/pythoneditorplugin.cpp
+++ b/src/plugins/pythoneditor/pythoneditorplugin.cpp
@@ -167,7 +167,6 @@ public:
private:
friend class ProjectExplorer::IRunConfigurationFactory;
void initialize(Core::Id id);
- void copyFrom(const PythonRunConfiguration *source);
QString defaultDisplayName() const;
@@ -198,13 +197,6 @@ void PythonRunConfiguration::initialize(Core::Id id)
m_interpreter = exec.isEmpty() ? "python" : exec;
}
-void PythonRunConfiguration::copyFrom(const PythonRunConfiguration *source)
-{
- RunConfiguration::copyFrom(source);
- m_interpreter = source->interpreter();
- m_mainScript = source->m_mainScript;
-}
-
QVariantMap PythonRunConfiguration::toMap() const
{
QVariantMap map(RunConfiguration::toMap());
diff --git a/src/plugins/qbsprojectmanager/qbsrunconfiguration.cpp b/src/plugins/qbsprojectmanager/qbsrunconfiguration.cpp
index 7f551609cb..fd0c183535 100644
--- a/src/plugins/qbsprojectmanager/qbsrunconfiguration.cpp
+++ b/src/plugins/qbsprojectmanager/qbsrunconfiguration.cpp
@@ -144,21 +144,7 @@ void QbsRunConfiguration::initialize(Core::Id id)
{
RunConfiguration::initialize(id);
m_uniqueProductName = uniqueProductNameFromId(id);
- ctor();
-}
-
-void QbsRunConfiguration::copyFrom(const QbsRunConfiguration *source)
-{
- RunConfiguration::copyFrom(source);
- m_uniqueProductName = source->m_uniqueProductName;
- m_currentInstallStep = nullptr; // no need to copy this, we will get if from the DC anyway.
- m_currentBuildStepList = nullptr; // ditto
- ctor();
-}
-
-void QbsRunConfiguration::ctor()
-{
setDefaultDisplayName(defaultDisplayName());
installStepChanged();
}
diff --git a/src/plugins/qbsprojectmanager/qbsrunconfiguration.h b/src/plugins/qbsprojectmanager/qbsrunconfiguration.h
index 5367cd2d90..11541491f3 100644
--- a/src/plugins/qbsprojectmanager/qbsrunconfiguration.h
+++ b/src/plugins/qbsprojectmanager/qbsrunconfiguration.h
@@ -71,15 +71,12 @@ signals:
private:
void initialize(Core::Id id);
- void copyFrom(const QbsRunConfiguration *source);
void installStepChanged();
void installStepToBeRemoved(int pos);
QString baseWorkingDirectory() const;
QString defaultDisplayName();
- void ctor();
-
void updateTarget();
QString m_uniqueProductName;
diff --git a/src/plugins/qmakeandroidsupport/qmakeandroidrunconfiguration.cpp b/src/plugins/qmakeandroidsupport/qmakeandroidrunconfiguration.cpp
index deb380e49c..5d957b8597 100644
--- a/src/plugins/qmakeandroidsupport/qmakeandroidrunconfiguration.cpp
+++ b/src/plugins/qmakeandroidsupport/qmakeandroidrunconfiguration.cpp
@@ -63,19 +63,6 @@ void QmakeAndroidRunConfiguration::initialize(Core::Id id)
AndroidRunConfiguration::initialize(id);
m_proFilePath = pathFromId(id);
- ctor();
-}
-
-void QmakeAndroidRunConfiguration::copyFrom(const QmakeAndroidRunConfiguration *source)
-{
- AndroidRunConfiguration::copyFrom(source);
- m_proFilePath = source->m_proFilePath;
-
- ctor();
-}
-
-void QmakeAndroidRunConfiguration::ctor()
-{
setDefaultDisplayName(defaultDisplayName());
QTC_CHECK(!m_proFilePath.isEmpty());
}
diff --git a/src/plugins/qmakeandroidsupport/qmakeandroidrunconfiguration.h b/src/plugins/qmakeandroidsupport/qmakeandroidrunconfiguration.h
index c0265b9abb..0f1796ddec 100644
--- a/src/plugins/qmakeandroidsupport/qmakeandroidrunconfiguration.h
+++ b/src/plugins/qmakeandroidsupport/qmakeandroidrunconfiguration.h
@@ -55,14 +55,12 @@ public:
private:
friend class ProjectExplorer::IRunConfigurationFactory;
void initialize(Core::Id id);
- void copyFrom(const QmakeAndroidRunConfiguration *source);
bool fromMap(const QVariantMap &map) override;
QVariantMap toMap() const override;
QString defaultDisplayName();
QmakeProjectManager::QmakeProject *qmakeProject() const;
- void ctor();
mutable Utils::FileName m_proFilePath;
};
diff --git a/src/plugins/qmakeprojectmanager/desktopqmakerunconfiguration.cpp b/src/plugins/qmakeprojectmanager/desktopqmakerunconfiguration.cpp
index 60ba152359..c5330b749c 100644
--- a/src/plugins/qmakeprojectmanager/desktopqmakerunconfiguration.cpp
+++ b/src/plugins/qmakeprojectmanager/desktopqmakerunconfiguration.cpp
@@ -85,6 +85,12 @@ DesktopQmakeRunConfiguration::DesktopQmakeRunConfiguration(Target *target)
addExtraAspect(new ArgumentsAspect(this, "Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"));
addExtraAspect(new TerminalAspect(this, "Qt4ProjectManager.Qt4RunConfiguration.UseTerminal"));
addExtraAspect(new WorkingDirectoryAspect(this, "Qt4ProjectManager.Qt4RunConfiguration.UserWorkingDirectory"));
+
+ QmakeProject *project = qmakeProject();
+ connect(project, &Project::parsingFinished,
+ this, &DesktopQmakeRunConfiguration::updateTargetInformation);
+ connect(project, &QmakeProject::proFilesEvaluated,
+ this, &DesktopQmakeRunConfiguration::proFileEvaluated);
}
void DesktopQmakeRunConfiguration::initialize(Core::Id id)
@@ -92,17 +98,7 @@ void DesktopQmakeRunConfiguration::initialize(Core::Id id)
RunConfiguration::initialize(id);
m_proFilePath = pathFromId(id);
- ctor();
-}
-
-void DesktopQmakeRunConfiguration::copyFrom(const DesktopQmakeRunConfiguration *source)
-{
- RunConfiguration::copyFrom(source);
- m_proFilePath = source->m_proFilePath;
- m_isUsingDyldImageSuffix = source->m_isUsingDyldImageSuffix;
- m_isUsingLibrarySearchPath = source->m_isUsingLibrarySearchPath;
-
- ctor();
+ updateTargetInformation();
}
void DesktopQmakeRunConfiguration::proFileEvaluated()
@@ -129,19 +125,6 @@ void DesktopQmakeRunConfiguration::updateTargetInformation()
emit effectiveTargetInformationChanged();
}
-void DesktopQmakeRunConfiguration::ctor()
-{
- setDefaultDisplayName(defaultDisplayName());
-
- QmakeProject *project = qmakeProject();
- connect(project, &Project::parsingFinished,
- this, &DesktopQmakeRunConfiguration::updateTargetInformation);
- connect(project, &QmakeProject::proFilesEvaluated,
- this, &DesktopQmakeRunConfiguration::proFileEvaluated);
-
- updateTargetInformation();
-}
-
//////
/// DesktopQmakeRunConfigurationWidget
/////
diff --git a/src/plugins/qmakeprojectmanager/desktopqmakerunconfiguration.h b/src/plugins/qmakeprojectmanager/desktopqmakerunconfiguration.h
index 5dde3c3534..283cf2d21a 100644
--- a/src/plugins/qmakeprojectmanager/desktopqmakerunconfiguration.h
+++ b/src/plugins/qmakeprojectmanager/desktopqmakerunconfiguration.h
@@ -88,8 +88,6 @@ signals:
protected:
void initialize(Core::Id id);
- void copyFrom(const DesktopQmakeRunConfiguration *source);
-
bool fromMap(const QVariantMap &map) override;
private:
@@ -103,8 +101,6 @@ private:
QmakeProject *qmakeProject() const;
QmakeProFile *proFile() const;
- void ctor();
-
void updateTarget();
Utils::FileName m_proFilePath; // Full path to the Application Pro File
diff --git a/src/plugins/qmlprofiler/qmlprofilerrunconfigurationaspect.cpp b/src/plugins/qmlprofiler/qmlprofilerrunconfigurationaspect.cpp
index fdee60783d..098b53bc97 100644
--- a/src/plugins/qmlprofiler/qmlprofilerrunconfigurationaspect.cpp
+++ b/src/plugins/qmlprofiler/qmlprofilerrunconfigurationaspect.cpp
@@ -46,11 +46,5 @@ QmlProfilerRunConfigurationAspect::QmlProfilerRunConfigurationAspect(
setRunConfigWidgetCreator([this] { return new Debugger::AnalyzerRunConfigWidget(this); });
}
-ProjectExplorer::IRunConfigurationAspect *QmlProfilerRunConfigurationAspect::create(
- ProjectExplorer::RunConfiguration *runConfig) const
-{
- return new QmlProfilerRunConfigurationAspect(runConfig);
-}
-
} // Internal
} // QmlProfiler
diff --git a/src/plugins/qmlprofiler/qmlprofilerrunconfigurationaspect.h b/src/plugins/qmlprofiler/qmlprofilerrunconfigurationaspect.h
index aff08f0a0d..efdf4a7a41 100644
--- a/src/plugins/qmlprofiler/qmlprofilerrunconfigurationaspect.h
+++ b/src/plugins/qmlprofiler/qmlprofilerrunconfigurationaspect.h
@@ -34,9 +34,6 @@ class QmlProfilerRunConfigurationAspect : public ProjectExplorer::IRunConfigurat
{
public:
QmlProfilerRunConfigurationAspect(ProjectExplorer::RunConfiguration *parent);
-
- ProjectExplorer::IRunConfigurationAspect *create(
- ProjectExplorer::RunConfiguration *runConfig) const;
};
} // Internal
diff --git a/src/plugins/qmlprojectmanager/qmlprojectenvironmentaspect.cpp b/src/plugins/qmlprojectmanager/qmlprojectenvironmentaspect.cpp
index 1771e3dbc8..626c889551 100644
--- a/src/plugins/qmlprojectmanager/qmlprojectenvironmentaspect.cpp
+++ b/src/plugins/qmlprojectmanager/qmlprojectenvironmentaspect.cpp
@@ -64,9 +64,4 @@ QmlProjectEnvironmentAspect::QmlProjectEnvironmentAspect(ProjectExplorer::RunCon
ProjectExplorer::EnvironmentAspect(rc)
{ }
-QmlProjectEnvironmentAspect *QmlProjectEnvironmentAspect::create(ProjectExplorer::RunConfiguration *parent) const
-{
- return new QmlProjectEnvironmentAspect(parent);
-}
-
} // namespace QmlProjectManager
diff --git a/src/plugins/qmlprojectmanager/qmlprojectenvironmentaspect.h b/src/plugins/qmlprojectmanager/qmlprojectenvironmentaspect.h
index 177d2d89cd..14c460085f 100644
--- a/src/plugins/qmlprojectmanager/qmlprojectenvironmentaspect.h
+++ b/src/plugins/qmlprojectmanager/qmlprojectenvironmentaspect.h
@@ -35,11 +35,10 @@ class QmlProjectEnvironmentAspect : public ProjectExplorer::EnvironmentAspect
public:
QmlProjectEnvironmentAspect(ProjectExplorer::RunConfiguration *rc);
- QmlProjectEnvironmentAspect *create(ProjectExplorer::RunConfiguration *parent) const;
- QList<int> possibleBaseEnvironments() const;
- QString baseEnvironmentDisplayName(int base) const;
- Utils::Environment baseEnvironment() const;
+ QList<int> possibleBaseEnvironments() const override;
+ QString baseEnvironmentDisplayName(int base) const override;
+ Utils::Environment baseEnvironment() const override;
private:
enum BaseEnvironmentBase {
diff --git a/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp b/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp
index 9b98d2f13c..52b27991cb 100644
--- a/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp
+++ b/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp
@@ -79,17 +79,6 @@ void QmlProjectRunConfiguration::initialize(Id id)
updateEnabledState();
}
-void QmlProjectRunConfiguration::copyFrom(const QmlProjectRunConfiguration *source)
-{
- RunConfiguration::copyFrom(source);
- m_currentFileFilename = source->m_currentFileFilename;
- m_mainScriptFilename = source->m_mainScriptFilename;
- m_scriptFile = source->m_scriptFile;
- m_qmlViewerArgs = source->m_qmlViewerArgs;
-
- updateEnabledState();
-}
-
Runnable QmlProjectRunConfiguration::runnable() const
{
StandardRunnable r;
diff --git a/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.h b/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.h
index 0dcdf19a59..20b63b4f72 100644
--- a/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.h
+++ b/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.h
@@ -78,8 +78,7 @@ signals:
private:
void initialize(Core::Id id);
- void copyFrom(const QmlProjectRunConfiguration *source);
- virtual bool fromMap(const QVariantMap &map) override;
+ bool fromMap(const QVariantMap &map) override;
void changeCurrentFile(Core::IEditor* = 0);
void updateEnabledState() final;
diff --git a/src/plugins/qnx/qnxrunconfiguration.cpp b/src/plugins/qnx/qnxrunconfiguration.cpp
index c7b4b80559..d4145b233f 100644
--- a/src/plugins/qnx/qnxrunconfiguration.cpp
+++ b/src/plugins/qnx/qnxrunconfiguration.cpp
@@ -45,17 +45,6 @@ QnxRunConfiguration::QnxRunConfiguration(Target *target)
: RemoteLinuxRunConfiguration(target)
{}
-void QnxRunConfiguration::initialize(Core::Id id, const QString &targetName)
-{
- RemoteLinuxRunConfiguration::initialize(id, targetName);
-}
-
-void QnxRunConfiguration::copyFrom(const QnxRunConfiguration *source)
-{
- RemoteLinuxRunConfiguration::copyFrom(source);
- m_qtLibPath = source->m_qtLibPath;
-}
-
Runnable QnxRunConfiguration::runnable() const
{
auto r = RemoteLinuxRunConfiguration::runnable().as<StandardRunnable>();
diff --git a/src/plugins/qnx/qnxrunconfiguration.h b/src/plugins/qnx/qnxrunconfiguration.h
index 7ce0ec9114..639badc999 100644
--- a/src/plugins/qnx/qnxrunconfiguration.h
+++ b/src/plugins/qnx/qnxrunconfiguration.h
@@ -37,17 +37,11 @@ class QnxRunConfiguration : public RemoteLinux::RemoteLinuxRunConfiguration
public:
explicit QnxRunConfiguration(ProjectExplorer::Target *target);
+private:
ProjectExplorer::Runnable runnable() const override;
-
QWidget *createConfigurationWidget() override;
- QVariantMap toMap() const override;
-
-private:
- friend class ProjectExplorer::IRunConfigurationFactory;
-
- void copyFrom(const QnxRunConfiguration *source);
- void initialize(Core::Id id, const QString &targetName);
+ QVariantMap toMap() const override;
bool fromMap(const QVariantMap &map) override;
QString m_qtLibPath;
diff --git a/src/plugins/remotelinux/linuxdevicetester.cpp b/src/plugins/remotelinux/linuxdevicetester.cpp
index cbb84a442b..c27bafb6a7 100644
--- a/src/plugins/remotelinux/linuxdevicetester.cpp
+++ b/src/plugins/remotelinux/linuxdevicetester.cpp
@@ -45,13 +45,11 @@ enum State { Inactive, Connecting, RunningUname, TestingPorts };
class GenericLinuxDeviceTesterPrivate
{
public:
- GenericLinuxDeviceTesterPrivate() : connection(0), state(Inactive) {}
-
IDevice::ConstPtr deviceConfiguration;
- SshConnection *connection;
+ SshConnection *connection = nullptr;
SshRemoteProcess::Ptr process;
DeviceUsedPortsGatherer portsGatherer;
- State state;
+ State state = Inactive;
};
} // namespace Internal
@@ -105,11 +103,6 @@ void GenericLinuxDeviceTester::stopTest()
setFinished(TestFailure);
}
-DeviceUsedPortsGatherer *GenericLinuxDeviceTester::usedPortsGatherer() const
-{
- return &d->portsGatherer;
-}
-
void GenericLinuxDeviceTester::handleConnected()
{
QTC_ASSERT(d->state == Connecting, return);
diff --git a/src/plugins/remotelinux/linuxdevicetester.h b/src/plugins/remotelinux/linuxdevicetester.h
index 8c658bf150..8a20edde03 100644
--- a/src/plugins/remotelinux/linuxdevicetester.h
+++ b/src/plugins/remotelinux/linuxdevicetester.h
@@ -29,10 +29,6 @@
#include <projectexplorer/devicesupport/idevice.h>
-namespace ProjectExplorer { class DeviceUsedPortsGatherer; }
-namespace QSsh { class SshConnection; }
-namespace ProjectExplorer { class DeviceUsedPortsGatherer; }
-
namespace RemoteLinux {
namespace Internal { class GenericLinuxDeviceTesterPrivate; }
@@ -48,8 +44,6 @@ public:
void testDevice(const ProjectExplorer::IDevice::ConstPtr &deviceConfiguration);
void stopTest();
- ProjectExplorer::DeviceUsedPortsGatherer *usedPortsGatherer() const;
-
private:
void handleConnected();
void handleConnectionFailure();
diff --git a/src/plugins/remotelinux/remotelinuxcustomrunconfiguration.cpp b/src/plugins/remotelinux/remotelinuxcustomrunconfiguration.cpp
index 7ae8d9b9fa..9aed504bbe 100644
--- a/src/plugins/remotelinux/remotelinuxcustomrunconfiguration.cpp
+++ b/src/plugins/remotelinux/remotelinuxcustomrunconfiguration.cpp
@@ -109,18 +109,6 @@ void RemoteLinuxCustomRunConfiguration::initialize()
setDefaultDisplayName(runConfigDefaultDisplayName());
}
-void RemoteLinuxCustomRunConfiguration::copyFrom(const RemoteLinuxCustomRunConfiguration *source)
-{
- RunConfiguration::copyFrom(source);
-
- m_localExecutable = source->m_localExecutable;
- m_remoteExecutable = source->m_remoteExecutable;
- m_arguments = source->m_arguments;
- m_workingDirectory = source->m_workingDirectory;
-
- setDefaultDisplayName(runConfigDefaultDisplayName());
-}
-
bool RemoteLinuxCustomRunConfiguration::isConfigured() const
{
return !m_remoteExecutable.isEmpty();
diff --git a/src/plugins/remotelinux/remotelinuxcustomrunconfiguration.h b/src/plugins/remotelinux/remotelinuxcustomrunconfiguration.h
index 06d29cf48c..848e1a2801 100644
--- a/src/plugins/remotelinux/remotelinuxcustomrunconfiguration.h
+++ b/src/plugins/remotelinux/remotelinuxcustomrunconfiguration.h
@@ -37,7 +37,6 @@ public:
explicit RemoteLinuxCustomRunConfiguration(ProjectExplorer::Target *target);
void initialize();
- void copyFrom(const RemoteLinuxCustomRunConfiguration *source);
bool fromMap(const QVariantMap &map) override;
QVariantMap toMap() const override;
diff --git a/src/plugins/remotelinux/remotelinuxenvironmentaspect.cpp b/src/plugins/remotelinux/remotelinuxenvironmentaspect.cpp
index c9910d5d09..7a2bc8c1ba 100644
--- a/src/plugins/remotelinux/remotelinuxenvironmentaspect.cpp
+++ b/src/plugins/remotelinux/remotelinuxenvironmentaspect.cpp
@@ -55,11 +55,6 @@ RemoteLinuxEnvironmentAspect::RemoteLinuxEnvironmentAspect(ProjectExplorer::RunC
setRunConfigWidgetCreator([this] { return new RemoteLinuxEnvironmentAspectWidget(this); });
}
-RemoteLinuxEnvironmentAspect *RemoteLinuxEnvironmentAspect::create(ProjectExplorer::RunConfiguration *parent) const
-{
- return new RemoteLinuxEnvironmentAspect(parent);
-}
-
QList<int> RemoteLinuxEnvironmentAspect::possibleBaseEnvironments() const
{
return QList<int>() << static_cast<int>(RemoteBaseEnvironment)
diff --git a/src/plugins/remotelinux/remotelinuxenvironmentaspect.h b/src/plugins/remotelinux/remotelinuxenvironmentaspect.h
index 227d751906..4a3126340e 100644
--- a/src/plugins/remotelinux/remotelinuxenvironmentaspect.h
+++ b/src/plugins/remotelinux/remotelinuxenvironmentaspect.h
@@ -37,7 +37,6 @@ class REMOTELINUX_EXPORT RemoteLinuxEnvironmentAspect : public ProjectExplorer::
public:
RemoteLinuxEnvironmentAspect(ProjectExplorer::RunConfiguration *rc);
- RemoteLinuxEnvironmentAspect *create(ProjectExplorer::RunConfiguration *parent) const override;
QList<int> possibleBaseEnvironments() const override;
QString baseEnvironmentDisplayName(int base) const override;
diff --git a/src/plugins/remotelinux/remotelinuxrunconfiguration.cpp b/src/plugins/remotelinux/remotelinuxrunconfiguration.cpp
index ea8b4f6505..3195634c7a 100644
--- a/src/plugins/remotelinux/remotelinuxrunconfiguration.cpp
+++ b/src/plugins/remotelinux/remotelinuxrunconfiguration.cpp
@@ -88,14 +88,6 @@ void RemoteLinuxRunConfiguration::initialize(Core::Id id, const QString &targetN
setDefaultDisplayName(defaultDisplayName());
}
-void RemoteLinuxRunConfiguration::copyFrom(const RemoteLinuxRunConfiguration *source)
-{
- RunConfiguration::copyFrom(source);
- *d = *source->d;
-
- setDefaultDisplayName(defaultDisplayName());
-}
-
RemoteLinuxRunConfiguration::~RemoteLinuxRunConfiguration()
{
delete d;
diff --git a/src/plugins/remotelinux/remotelinuxrunconfiguration.h b/src/plugins/remotelinux/remotelinuxrunconfiguration.h
index b4ef39a737..9371eba983 100644
--- a/src/plugins/remotelinux/remotelinuxrunconfiguration.h
+++ b/src/plugins/remotelinux/remotelinuxrunconfiguration.h
@@ -75,7 +75,6 @@ signals:
protected:
void initialize(Core::Id id, const QString &targetName);
- void copyFrom(const RemoteLinuxRunConfiguration *source);
bool fromMap(const QVariantMap &map) override;
QString defaultDisplayName();
diff --git a/src/plugins/valgrind/valgrindplugin.cpp b/src/plugins/valgrind/valgrindplugin.cpp
index 4e250b8b19..bc1b9d1827 100644
--- a/src/plugins/valgrind/valgrindplugin.cpp
+++ b/src/plugins/valgrind/valgrindplugin.cpp
@@ -103,11 +103,6 @@ public:
resetProjectToGlobalSettings();
setRunConfigWidgetCreator([this] { return new Debugger::AnalyzerRunConfigWidget(this); });
}
-
- ValgrindRunConfigurationAspect *create(RunConfiguration *parent) const override
- {
- return new ValgrindRunConfigurationAspect(parent);
- }
};
ValgrindPlugin::~ValgrindPlugin()
diff --git a/tests/auto/debugger/tst_dumpers.cpp b/tests/auto/debugger/tst_dumpers.cpp
index f0031dc22f..aa1d1aaee6 100644
--- a/tests/auto/debugger/tst_dumpers.cpp
+++ b/tests/auto/debugger/tst_dumpers.cpp
@@ -959,9 +959,10 @@ public:
struct TempStuff
{
- TempStuff(const char *tag) : buildTemp(QString("qt_tst_dumpers_") + tag + '_')
+ TempStuff(const char *tag)
+ : buildTemp(QDir::currentPath() + "/qt_tst_dumpers_" + tag + "_XXXXXX")
{
- buildPath = QDir::currentPath() + '/' + buildTemp.path();
+ buildPath = buildTemp.path();
buildTemp.setAutoRemove(false);
QVERIFY(!buildPath.isEmpty());
}
@@ -5335,6 +5336,22 @@ void tst_Dumpers::dumper_data()
+ Check("fbad", "(unknown:24) (24)", "Flags");
+ QTest::newRow("EnumInClass")
+ << Data("struct E {\n"
+ " enum Enum1 { a1, b1, c1 };\n"
+ " typedef enum Enum2 { a2, b2, c2 } Enum2;\n"
+ " typedef enum { a3, b3, c3 } Enum3;\n"
+ " Enum1 e1 = Enum1(c1 | b1);\n"
+ " Enum2 e2 = Enum2(c2 | b2);\n"
+ " Enum3 e3 = Enum3(c3 | b3);\n"
+ "};\n",
+ "E e;\n")
+ + GdbEngine
+ + Check("e.e1", "E::b1 | E::c1 (0x0003)", "E::Enum1")
+ + Check("e.e2", "E::b2 | E::c2 (0x0003)", "E::Enum2")
+ + Check("e.e3", "E::b3 | E::c3 (0x0003)", "E::Enum3");
+
+
QTest::newRow("Array")
<< Data("",
"double a1[3][3];\n"
diff --git a/tests/system/suite_tools/suite.conf b/tests/system/suite_tools/suite.conf
index f49b0691df..09ee59125a 100644
--- a/tests/system/suite_tools/suite.conf
+++ b/tests/system/suite_tools/suite.conf
@@ -7,6 +7,6 @@ HOOK_SUB_PROCESSES=false
IMPLICITAUTSTART=0
LANGUAGE=Python
OBJECTMAP=../objects.map
-TEST_CASES=tst_codepasting tst_designer_autocomplete tst_designer_edit tst_designer_goto_slot tst_external_sort tst_git_clone tst_git_first_commit tst_git_local
+TEST_CASES=tst_codepasting tst_designer_autocomplete tst_designer_edit tst_designer_goto_slot tst_git_clone tst_git_first_commit tst_git_local tst_sort
VERSION=2
WRAPPERS=Qt
diff --git a/tests/system/suite_tools/tst_external_sort/test.py b/tests/system/suite_tools/tst_sort/test.py
index 95d8d93126..302815947b 100644
--- a/tests/system/suite_tools/tst_external_sort/test.py
+++ b/tests/system/suite_tools/tst_sort/test.py
@@ -31,16 +31,13 @@ def main():
return
invokeMenuItem("File", "Open File or Project...")
unsortedFile = os.path.join(os.getcwd(), "testdata", "unsorted.txt")
- locale = None
- if not platform.system() in ('Windows', 'Microsoft'):
- locale = {"LC_ALL":"C"}
- sorted = getOutputFromCmdline(["sort", unsortedFile], locale).replace("\r", "")
+ sorted = readFile(os.path.join(os.getcwd(), "testdata", "sorted.txt"))
selectFromFileDialog(unsortedFile)
editor = waitForObject("{type='TextEditor::TextEditorWidget' unnamed='1' "
"visible='1' window=':Qt Creator_Core::Internal::MainWindow'}", 3000)
placeCursorToLine(editor, "bbb")
invokeMenuItem("Edit", "Select All")
- invokeMenuItem("Tools", "External", "Text", "Sort Selection")
+ invokeMenuItem("Edit", "Advanced", "Sort Selected Lines")
test.verify(waitFor("str(editor.plainText) == sorted", 2000),
"Verify that sorted text\n%s\nmatches the expected text\n%s" % (editor.plainText, sorted))
invokeMenuItem('File', 'Revert "unsorted.txt" to Saved')
diff --git a/tests/system/suite_tools/tst_sort/testdata/sorted.txt b/tests/system/suite_tools/tst_sort/testdata/sorted.txt
new file mode 100644
index 0000000000..4747920a08
--- /dev/null
+++ b/tests/system/suite_tools/tst_sort/testdata/sorted.txt
@@ -0,0 +1,25 @@
+
+ aa
+!
+*
+-
+12,345
+12.345
+1A
+1a
+1a
+?
+AAA
+_
+a
+a | ls
+aa
+aa a
+aaa
+aaa1
+aaa2
+ab
+aba
+b > nul
+bbb
+c >> dir
diff --git a/tests/system/suite_tools/tst_external_sort/testdata/unsorted.txt b/tests/system/suite_tools/tst_sort/testdata/unsorted.txt
index e695a1e9e1..e695a1e9e1 100644
--- a/tests/system/suite_tools/tst_external_sort/testdata/unsorted.txt
+++ b/tests/system/suite_tools/tst_sort/testdata/unsorted.txt