Перейти к основному содержимому Главная страница каталога дополнений для NVDA от русскоязычного сообщества NVDA.RU.

Официальный русскоязычный каталог дополнений NVDA

Крупнейший каталог дополнений для программы экранного доступа NVDA, доступный в Интернете

Каталог дополнений от «🇷🇺 Русскоязычного сообщества NVDA.RU.»

18 ноября 2024 года русскоязычному каталогу дополнений NVDA-ADDONS.RU исполнилось два года.

ObjEnhancer (Усиление объектов)

Краткое описание

Дополнение Object Enhancer позволяет изменять способ отображения объектов NVDA на экране с помощью интуитивно понятного интерфейса.
Его можно использовать для изменения метки объекта, но в зависимости от того, как вы его используете, он обладает функциональностью для изменения практически любого свойства объекта.
Сочетание клавиш:
Скопировать хэш SHA1 в кодировке base64 растрового изображения объекта навигатора в буфер обмена - NVDA+control+alt+h.
Настройка свойств объекта навигатора - NVDA+control+shift+tab.
Открыть диалоговое окно Определения усилителя объектов - NVDA+control+shift+tab.
Изменить сочетание клавиш можно в жестах ввода, в подразделе Усилитель объектов.

⬇ Перейти к подробной справке 🔝 Назад к оглавлению

Основная информация

Название Версия Совместимость с API NVDA Последняя протестированная версия NVDA Минимальная версия NVDA Дата загрузки в каталог Размер Лицензия
objEnhancer 2024.1 2024.1 2024.1 2021.1 06-10-2024 22:15:50 40 Кб. GPL v2
🔝 Назад к оглавлению

Информация о локализации на русский язык

🔝 Назад к оглавлению

Скачать

ObjEnhancer-V.2024.1.nvda-addon

⬇ Перейти к истории версий 🔝 Назад к оглавлению

Разделы

🔝 Назад к оглавлению

Справка

Подробнее

ObjEnhancer (Усилитель объектов)

Дополнение Object Enhancer позволяет вам изменить то, как NVDA отображает объекты на экране, используя интуитивно понятный интерфейс. Он может быть использован для изменения метки объекта, но в зависимости от того, как вы его используете, имеет функциональность для изменения практически любого свойства объекта.

Изменения объекта сохраняются в определении. Определение содержит:

Создание собственных определений

Object Enhancer имеет графический интерфейс для создания новых и редактирования существующих определений.

Чтобы создать новое определение для текущего объекта навигатора, нажмите NVDA+control+tab. Это откроет диалог нового определения, если для текущего объекта не было найдено определения, и отредактирует существующее определение, если есть определение для редактирования.

NVDA+control+shift+tab открывает основной диалог дополнения, который позволяет искать существующие определения и редактировать существующие.

Обратите внимание, что если вы хотите быстро создать определение, настоятельно рекомендуется создать новое определение с помощью NVDA+control+tab, так как это позволит вам использовать некоторые атрибуты объекта автоматически. Например, при нажатии этой комбинации, когда текущим объектом навигатора является элемент списка, вы можете автоматически добавить в определение текущее имя, роль или местоположение.

Создание или редактирование определения

Диалог создания/редактирования определения состоит из следующих элементов:

Имя определения

Уникальное имя для вашего определения, которое используется для его последующего распознавания, а также для связи с другими определениями при необходимости.

Критерии фильтрации:

Это критерии, которые необходимо использовать для применения определения. Вы можете фильтровать по атрибутам/свойствам объекта.

Чтобы добавить новый критерий, нажмите кнопку "Добавить". Вы можете выбрать из списка соответствующих атрибутов объекта или создать его самостоятельно. Например, вы можете выбрать windowControlID из списка соответствующих атрибутов, что приведет к предварительному заполнению элементов управления редактирования атрибутов и значений. В качестве альтернативы, если вы хотите найти объект с IAccessibleRole = 10 (ROLE_SYSTEM_CLIENT), вы можете сделать это вручную.

Вы также можете изменить текущие критерии фильтрации или добавить дополнительное значение для фильтрации, если, например, вы хотите найти объект с windowControlID, равным 15 или 16.

Изменения атрибутов

В списке с изменениями атрибутов вы можете указать, какие атрибуты объекта должны быть изменены. В большинстве случаев вы, вероятно, захотите изменить атрибуты name или description.

Настройки из определения / Определение абстрактно

Это комбинированное поле и флажок позволяют установить связь между несколькими определениями.

Представьте себе случай, когда вам нужно обозначить несколько кнопок в одном приложении. Все кнопки имеют windowClassName, равное magicButton. Вы можете создать определение, у которого windowClass=magicButton, и установить флажок "Определение является абстрактным, не используйте его напрямую". В последующих определениях вы можете ингерировать параметры из определения magicButton, что позволит новому определению вести себя так, как если бы windowClassName=magicButton было указано в качестве критерия фильтрации.

Обрабатывать критерии расположения объекта как абсолютные координаты экрана.

Когда эта опция включена, критерии местоположения из раздела критериев анализируются как все остальные свойства. Это означает, что если вы определите location = (1, 2, 3, 4), каждый объект, не имеющий такого абсолютного местоположения, не будет соответствовать.

Однако, когда эта опция отключена, она будет иметь большое влияние на определения объектов с более чем одним совпадением свойств местоположения. Предоставленные свойства местоположения, обычно местоположение самого объекта и местоположение одного из его предков или братьев и сестер, будут сравниваться, и будет предполагаться, что расстояние между предоставленными левыми верхними углами будет одинаковым при изменении размеров экрана. Рассмотрим следующий фрагмент определения:

[Пример1]
    [[вход]]
        location = [(248, 611, 869, 82)]
        parent.parent.location = [(245, 399, 875, 297)]

Это определение входа основано на не максимизированном состоянии приложения. Как только приложение будет максимизировано, определение должно быть другим, поэтому оно больше не будет соответствовать объекту:

[Пример2]
    [[вход]]
        location = [(11, 582, 1344, 101)]
        parent.parent.location = [(8, 370, 1350, 316)]

Когда опция абсолютного расположения отключена, первое определение выше все равно будет соответствовать в случае, если свойства объекта равны второму определению, что позволяет опустить второе определение. При этом используется следующая логика:

Итак, это звучит чрезмерно сложно. Давайте воспользуемся примерами, приведенными выше, чтобы прояснить ситуацию.

Если вы все еще не поняли, пожалуйста, обратитесь к исходному коду этого дополнения. Обратите внимание, что отключение этой опции может создавать ложные срабатывания при неправильном использовании. Вы всегда должны отдавать предпочтение другим уникальным свойствам объекта, если таковые имеются. Эта логика используется только для объектов, для которых сопоставление по местоположению является единственным способом.

Обработка ошибок определения

Это комбинированное поле позволяет вам решить, что делать, если возникла ошибка при оценке данного определения:

Пожалуйста, не трогайте эту опцию, если вы не разработчик.

Технические детали

Файлы определения объектов разбираются с помощью модуля configobj в режиме unrepr.

Перевод

Примечание:

После версии 2021.2beta1 это всё не официальные версии. Они всё ещё совместимы с последующими версиями NVDA включая API NVDA 2024.1. В них только изменялся манифест и версия во избежания путаницы с со старыми версиями. Репозиторий разработчика

🔝 Назад к оглавлению

История версий

Список версий
🔝 Назад к оглавлению