Spec-Zone.ru › Hammerspoon

hs.chooser

Графический, интерактивный инструмент для выбора/поиска данных

Примечания:

  • Этот модуль сильно вдохновлён модулем Choose, разработанным Стивеном Дегутисом (https://github.com/sdegutis/choose)

Обзор API

  • Переменные - Настраиваемые значения
    • globalCallback
  • Конструкторы - Вызовы API, возвращающие объект, как правило, с методами API
    • new
  • Методы - Вызовы API, которые могут быть выполнены только с объектом, возвращённым конструктором
    • attachedToolbar
    • bgDark
    • отмена
    • choices
    • удалить
    • включить стандартное значение для запроса
    • fgColor
    • скрыть
    • hideCallback
    • invalidCallback
    • isVisible
    • текстЗаполнителя
    • запрос
    • queryChangedCallback
    • refreshChoicesCallback
    • rightClickCallback
    • строки
    • поисковыйПодТекст
    • выбрать
    • выбраннаяСтрока
    • содержимоеВыбраннойСтроки
    • показать
    • showCallback
    • цветПодстроки
    • ширина

Документация API

Раздел переменных

globalCallback
Подпись hs.chooser.globalCallback
Тип Переменная
Описание

Глобальная функция обратного вызова, используемая для различных событий hs.chooser

Примечания
  • Эта функция обратного вызова должна принимать два параметра:
  • Объект hs.chooser
  • Строка, содержащая имя события для обработки. Возможные значения:
  • willOpen - hs.chooser собирается отобразиться на экране
  • didClose - hs.chooser только что был удалён с экрана
  • Существует стандартная функция обратного вызова, которая использует событие willOpen, чтобы запомнить, какое окно имеет фокус, и событие didClose, чтобы восстановить фокус в исходном окне. Если вы хотите использовать это дополнительно к своему обработающему событию, вы можете вызвать его так: hs.chooser._defaultGlobalCallback(event)
Исходный код extensions/chooser/chooser.lua строка 29

Раздел конструкторов

new
Подпись hs.chooser.new(completionFn) -> hs.chooser object
Тип Конструктор
Описание

Создаёт новый объект chooser

Параметры
  • completionFn - Функция, которая будет вызвана, когда окно chooser будет закрыто. Она должна принимать один параметр, который будет nil, если пользователь закрыл окно chooser, иначе это будет таблица, содержащая информацию, которую вы предоставили для выбранного элемента.
Возвращаемое значение
  • Объект hs.chooser
Примечания
  • Начиная с macOS Sierra и более поздних версий, если вы хотите, чтобы объект hs.chooser отображался поверх полноэкранных окон, вы должны сначала скрыть значок Hammerspoon Dock, используя: hs.dockicon.hide()
Исходный код extensions/chooser/libchooser.m строка 14

Методы

attachedToolbar
Подпись hs.chooser:attachedToolbar([toolbar]) -> hs.chooser object | currentValue
Тип Метод
Описание

Получение или прикрепление/открепление панели инструментов к/от выбора.

Параметры
  • toolbar - Объект hs.webview.toolbar, который нужно прикрепить к выбору. Если nil указан, текущая панель инструментов будет удалена
Возвращаемое значение
  • если указан объект toolbarObject или явное nil, возвращается объект hs.chooser; в противном случае возвращается текущий объект toolbarObject или nil, если к выбору ничего не прикреплено.
Примечания
  • Этот метод — это удобная обертка для функции hs.webview.toolbar.attachToolbar.

  • Если объект toolbarObject в данный момент прикреплен к другому окну при вызове этого метода, он будет откреплен от исходного окна и прикреплен к выбору. Если вы хотите прикрепить одну и ту же панель инструментов к нескольким объектам выбора, см. hs.webview.toolbar:copy.

Источник extensions/chooser/chooser.lua строка 13
bgDark
Подпись hs.chooser:bgDark([beDark]) -> hs.chooser object or boolean
Тип Метод
Описание

Устанавливает фон выбора между светлым и тёмным.

Параметры
  • beDark - Необязательный булевый параметр, true — для тёмного фона, false — для светлого. Если этот параметр опущен, будет возвращено текущее значение.
Возвращаемое значение
  • Объект hs.chooser или булево значение: true, если окно тёмное, false — если светлое.
Примечания
  • Цвета текста не будут автоматически изменены при переключении тёмного режима окна выбора. Вы также должны установить соответствующие цвета с помощью hs.chooser:fgColor() и hs.chooser:subTextColor()
Источник extensions/chooser/libchooser.m строка 539
cancel
Подпись hs.chooser:cancel() -> hs.chooser object
Тип Метод
Описание

Отменяет выбор.

Параметры
  • Нет
Возвращаемое значение
  • Объект hs.chooser
Источник extensions/chooser/libchooser.m строка 805
choices
Подпись hs.chooser:choices(choices) -> hs.chooser object
Тип Метод
Описание

Устанавливает варианты выбора.

Параметры
  • choices - Либо функция, вызываемая при необходимости списка вариантов, либо nil для удаления существующих вариантов/обратного вызова, либо таблица со статическими вариантами.
Возвращаемое значение
  • Объект hs.chooser
Примечания
  • Таблица вариантов (статистически заданная или возвращаемая обратным вызовом) должна содержать как минимум следующие ключи для каждого варианта:
  • text - Строка или объект hs.styledtext, который будет отображен как основной текст варианта
  • Каждый вариант также может необязательно содержать следующие ключи:
  • subText - Строка или объект hs.styledtext, который будет отображен под основным текстом варианта
  • image - Объект изображения hs.image , который будет отображен рядом с вариантом
  • valid - Булево значение, по умолчанию true, если установлено значение false, выбор варианта вызовет метод invalidCallback вместо закрытия выбора
  • Любые другие ключи/значения в каждой таблице вариантов сохранятся выбором и будут возвращены обратно в обратный вызов при выборе. Это полезно для хранения UUID или другой информации, не связанной с пользователем, однако важно отметить, что вы не должны хранить объекты userdata в таблице — они проходят через внутренние функции преобразования, поэтому должны храниться только базовые типы Lua.
  • Если указана функция, она будет вызвана один раз, когда окно выбора отображается. Результаты кэшируются, пока не будет вызван этот метод снова или не будет вызван hs.chooser:refreshChoicesCallback().
  • Если вы используете объект hs.styledtext для выбора текста или subText, убедитесь, что вы задали цвет, в противном случае текст может отображаться как прозрачный в зависимости от настройки bgDark.

Пример:

local choices = {
{
 ["text"] = "First Choice",
 ["subText"] = "This is the subtext of the first choice",
 ["uuid"] = "0001"
},
{ ["text"] = "Second Option",
  ["subText"] = "I wonder what I should type here?",
  ["uuid"] = "Bbbb"
},
{ ["text"] = hs.styledtext.new("Third Possibility", {font={size=18}, color=hs.drawing.color.definedCollections.hammerspoon.green}),
  ["subText"] = "What a lot of choosing there is going on here!",
  ["uuid"] = "III3"
},
}```
Источник extensions/chooser/libchooser.m строка 110
delete
Подпись hs.chooser:delete()
Тип Метод
Описание

Удаляет выбор.

Параметры
  • Нет
Возвращаемое значение
  • Нет
Источник extensions/chooser/libchooser.m строка 444
enableDefaultForQuery
Подпись hs.chooser:enableDefaultForQuery([]) -> hs.chooser object or boolean
Тип Метод
Описание

Получение/установка того, должен ли выбор вызывать обратный вызов при запросе, не совпадающем с никаким в списке.

Параметры
  • enableDefaultForQuery - Необязательный булевый параметр, true — возвращает строку запроса, false — не возвращает. Если этот параметр опущен, будет возвращено текущее значение конфигурации.
Возвращаемое значение
  • объект hs.chooser если значение было установлено, или булево значение, если параметр не передавался.
Примечания
  • Это нужно использовать до отображения выбора.
Источник extensions/chooser/libchooser.m строка 584
fgColor
Подпись hs.chooser:fgColor(color) -> hs.chooser object
Тип Метод
Описание

Устанавливает цвет переднего плана выбора

Параметры
  • цвет - необязательная таблица, содержащая описание цвета (см. hs.drawing.color), или nil для восстановления значения по умолчанию. Если этот параметр опущен, будет возвращен текущий цвет
Возвращаемое значение
  • Объект hs.chooser или таблица цветов
Источник extensions/chooser/libchooser.m строка 461
hide
Подпись hs.chooser:hide() -> hs.chooser object
Тип Метод
Описание

Скрывает выбор

Параметры
  • Нет
Возвращаемое значение
  • Объект hs.chooser
Источник extensions/chooser/libchooser.m строка 70
hideCallback
Подпись hs.chooser:hideCallback([fn]) -> hs.chooser object
Тип Метод
Описание

Устанавливает/очищает обратный вызов при скрытии окна выбора

Параметры
  • fn - необязательная функция, которая будет вызвана при скрытии окна выбора. Если этот параметр опущен, существующий обратный вызов будет удален.
Возвращаемое значение
  • Объект hs.chooser
Примечания
  • Этот обратный вызов вызывается после скрытия выбора.
  • Этот обратный вызов вызывается после hs.chooser.globalCallback.
Источник extensions/chooser/libchooser.m строка 199
invalidCallback
Подпись hs.chooser:invalidCallback([fn]) -> hs.chooser object
Тип Метод
Описание

Устанавливает/очищает обратный вызов для невалидных выборов

Параметры
  • fn - необязательная функция, которая будет вызвана всякий раз, когда пользователь выбирает элемент, помеченный как невалидный. Если этот параметр опущен, существующий обратный вызов будет удален.
Возвращаемое значение
  • Объект hs.chooser
Примечания
  • Обратный вызов может принимать один аргумент, это будет таблица, содержащая информацию, которую вы предоставили для выбранного пользователем элемента.
  • Для отображения контекстного меню, см. hs.menubar, в частности метод :popupMenu()
Источник extensions/chooser/libchooser.m строка 415
isVisible
Подпись hs.chooser:isVisible() -> boolean
Тип Метод
Описание

Проверяет, отображается ли выбор в данный момент

Параметры
  • Нет
Возвращаемое значение
  • Булево значение, true, если выбор отображается на экране, false — если нет
Источник extensions/chooser/libchooser.m строка 91
placeholderText
Подпись hs.chooser:placeholderText([placeholderText]) -> hs.chooser object or string
Тип Метод
Описание

Устанавливает/получает текст метки, отображаемый в поле ввода запроса, когда нет другого текста

Параметры
  • placeholderText - необязательная строка для текста метки. Если этот параметр опущен, будет возвращен существующий текст метки.
Возвращаемое значение
  • Объект hs.chooser или существующий текст метки
Источник extensions/chooser/libchooser.m строка 331
query
Подпись hs.chooser:query([queryString]) -> hs.chooser object or string
Тип Метод
Описание

Устанавливает/получает строку поиска

Параметры
  • queryString - необязательная строка для поиска или явное nil для очистки запроса. Если опущено, возвращаются текущие содержимое поля поиска.
Возвращаемое значение
  • Объект hs.chooser или строка
Примечания
  • Вы можете явно указать nil или пустую строку для очистки текущей строки запроса.
Источник extensions/chooser/libchooser.m строка 290
queryChangedCallback
Подпись hs.chooser:queryChangedCallback([fn]) -> hs.chooser object
Тип Метод
Описание

Устанавливает/очищает обратный вызов при изменении строки поиска

Параметры
  • fn - необязательная функция, которая будет вызываться всякий раз, когда меняется строка поиска. Если этот параметр опущен, существующий обратный вызов будет удален.
Возвращаемое значение
  • Объект hs.chooser
Примечания
  • По мере ввода пользователем текста функция обратного вызова будет вызываться при каждом нажатии клавиши. Вы можете выполнить фильтрацию при каждом вызове или использовать объект hs.timer с задержкой, чтобы реагировать только после завершения ввода.
  • Функция обратного вызова должна принимать один аргумент:
  • Строка, содержащая новую строку поиска
Источник extensions/chooser/libchooser.m строка 356
refreshChoicesCallback
Подпись hs.chooser:refreshChoicesCallback([reload]) -> hs.chooser object
Тип Метод
Описание

Обновляет данные выбора из обратного вызова

Параметры
  • reload - необязательный параметр, перезагружающий результаты выбора, учитывая текущую строку запроса (по умолчанию false)
Возвращаемое значение
  • Объект hs.chooser
Примечания
  • Этот метод не будет выполняться, если вы не задали функцию с помощью hs.chooser:choices()
Источник extensions/chooser/libchooser.m строка 256
rightClickCallback
Подпись hs.chooser:rightClickCallback([fn]) -> hs.chooser object
Тип Метод
Описание

Устанавливает/очищает обратный вызов при нажатии правой кнопки мыши на выборе

Параметры
  • fn - необязательная функция, которая будет вызываться всякий раз, когда пользователь щелкает правой кнопкой мыши на выборе. Если этот параметр опущен, существующий обратный вызов будет удален.
Возвращаемое значение
  • Объект hs.chooser
Примечания
  • Обратный вызов может принимать один аргумент, номер строки, где произошел щелчок правой кнопкой мыши, или 0, если в данный момент нет строки, на которой произошел щелчок. Для определения местоположения указателя мыши при щелчке правой кнопкой см. hs.mouse.
  • Для отображения контекстного меню, см. hs.menubar, в частности, метод :popupMenu()
Источник extensions/chooser/libchooser.m строка 386
rows
Подпись hs.chooser:rows([numRows]) -> hs.chooser object or number
Тип Метод
Описание

Получение/установка количества отображаемых строк

Параметры
  • numRows - необязательное число отображаемых элементов (т.е. вертикальная высота окна выбора). Если этот параметр опущен, возвращается текущее значение.
Возвращаемое значение
  • Объект hs.chooser или число
Источник extensions/chooser/libchooser.m строка 695
searchSubText
Подпись hs.chooser:searchSubText([searchSubText]) -> hs.chooser object or boolean
Тип Метод
Описание

Устанавливает/получает, должен ли выбор искать в подстроках каждого элемента

Параметры
  • searchSubText - необязательный булевый параметр, true для поиска в подстроках, false — для отказа от поиска в подстроках. Если этот параметр опущен, возвращается текущее значение конфигурации.
Возвращаемое значение
  • Объект hs.chooser если значение было установлено, или булево значение, если параметр не был передан.
Примечания
  • Это следует использовать до отображения выбора.
Источник extensions/chooser/libchooser.m строка 621
select
Подпись hs.chooser:select([row]) -> hs.chooser object
Тип Метод
Описание

Закрывает выборщик, выбрав указанную строку или текущую выбранную строку, если она не указана.

Параметры
  • row - необязательное целое число, определяющее строку для выбора.
Возвращает
  • Объект hs.chooser
Исходный код extensions/chooser/libchooser.m строка 781
selectedRow
Подпись hs.chooser:selectedRow([row]) -> number
Тип Метод
Описание

Получение или установка текущей выбранной строки

Параметры
  • row - необязательное целое число, определяющее строку для выбора.
Возвращает
  • Если аргумент предоставлен, возвращает объект hs.chooser; в противном случае возвращает число, содержащее текущую выбранную строку (т.е. ту, которая выделена в пользовательском интерфейсе)
Исходный код extensions/chooser/libchooser.m строка 729
selectedRowContents
Подпись hs.chooser:selectedRowContents([row]) -> table
Тип Метод
Описание

Возвращает содержимое текущей или указанной строки

Параметры
  • row - необязательное целое число, определяющее конкретную строку, содержимое которой нужно вернуть
Возвращает
  • таблицу, содержащую любую информацию, предоставленную для текущей выбранной строки, или пустую таблицу, если ни одна строка не выбрана или указанная строка не существует.
Исходный код extensions/chooser/libchooser.m строка 758
show
Подпись hs.chooser:show([topLeftPoint]) -> hs.chooser object
Тип Метод
Описание

Отображает выборщик

Параметры
  • Необязательный объект точки hs.geometry, описывающий абсолютные координаты экрана для левой верхней точки окна выборщика. По умолчанию окно центрируется на основном экране.
Возвращает
  • Объект hs.chooser
Исходный код extensions/chooser/libchooser.m строка 43
showCallback
Подпись hs.chooser:showCallback([fn]) -> hs.chooser object
Тип Метод
Описание

Устанавливает/очищает обратный вызов для показа окна выборщика

Параметры
  • fn - Необязательная функция, которая будет вызвана при отображении окна выборщика. Если этот параметр опущен, существующий обратный вызов будет удален.
Возвращает
  • Объект hs.chooser
Примечания
  • Этот обратный вызов вызывается после отображения выборщика. Чтобы выполнить код непосредственно перед его отображением (и/или после его удаления), см. hs.chooser.globalCallback.
Исходный код extensions/chooser/libchooser.m строка 228
subTextColor
Подпись hs.chooser:subTextColor(color) -> hs.chooser object or hs.color object
Тип Метод
Описание

Устанавливает цвет подстрочного текста выборщика

Параметры
  • color - Необязательная таблица, содержащая описание цвета (см. hs.drawing.color), или nil для восстановления значения по умолчанию. Если этот параметр опущен, будет возвращён существующий цвет.
Возвращает
  • Объект hs.chooser или таблицу цветов
Исходный код extensions/chooser/libchooser.m строка 500
width
Подпись hs.chooser:width([percent]) -> hs.chooser object or number
Тип Метод
Описание

Получение/Установка ширины выборщика

Параметры
  • percent - Необязательное число, указывающее процент ширины экрана, который должен занимать выборщик. Если этот параметр опущен, будет возвращена текущая ширина.
Возвращает
  • Объект hs.chooser или число
Примечания
  • Это следует использовать до отображения выборщика
Исходный код extensions/chooser/libchooser.m строка 658

© 2014–2017 Hammerspoon contributors
Licensed under the MIT License.
https://www.hammerspoon.org/docs/hs.chooser.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API