hs.webview.toolbar
Создавайте и управляйте панелями инструментов, которые могут быть присоединены к консоли Hammerspoon или объектам hs.webview.
Панели инструментов прикрепляются к окнам с заголовком и предоставляют кнопки, которые могут быть использованы для выполнения различных действий в приложении. Hammerspoon может использовать этот модуль для добавления панелей инструментов в консоль или hs.webview объекты, имеющие строку заголовка (см. hs.webview.windowMasks и hs.webview:windowStyle). Панели инструментов идентифицируются уникальным идентификатором, который используется macOS для идентификации информации, которая может быть автоматически сохранена в пользовательских настройках приложения, чтобы отразить изменения, внесённые пользователем в порядок кнопок панели инструментов или список активных кнопок (для этого необходимо установить hs.webview.toolbar:autosaves и hs.webview.toolbar:canCustomize в значение true).
Можно создать несколько копий одной и той же панели инструментов с помощью метода hs.webview.toolbar:copy, например, чтобы несколько окон webview использовали одну и ту же панель инструментов. Если пользователь настраивает скопированную панель инструментов, изменения активных кнопок или их порядка будут отражены во всех копиях панели инструментов.
Пример:
t = require("hs.webview.toolbar")
a = t.new("myConsole", {
{ id = "select1", selectable = true, image = hs.image.imageFromName("NSStatusAvailable") },
{ id = "NSToolbarSpaceItem" },
{ id = "select2", selectable = true, image = hs.image.imageFromName("NSStatusUnavailable") },
{ id = "notShown", default = false, image = hs.image.imageFromName("NSBonjour") },
{ id = "NSToolbarFlexibleSpaceItem" },
{ id = "navGroup", label = "Navigation", groupMembers = { "navLeft", "navRight" }},
{ id = "navLeft", image = hs.image.imageFromName("NSGoLeftTemplate"), allowedAlone = false },
{ id = "navRight", image = hs.image.imageFromName("NSGoRightTemplate"), allowedAlone = false },
{ id = "NSToolbarFlexibleSpaceItem" },
{ id = "cust", label = "customize", fn = function(t, w, i) t:customizePanel() end, image = hs.image.imageFromName("NSAdvanced") }
}):canCustomize(true)
:autosaves(true)
:selectedItem("select2")
:setCallback(function(...)
print("a", inspect(table.pack(...)))
end)
t.attachToolbar(a)
Примечания:
- Этот модуль поддерживается в версиях macOS до 10.10 (только для консоли Hammerspoon), даже если его родительский
hs.webviewнет. Чтобы загрузить этот модуль напрямую, используйтеrequire("hs.webview.toolbar")вместо полагания на автоматическую загрузку модулей. - Элементы панели инструментов отображаются в порядке их предоставления, хотя если панель инструментов помечена как настраиваемая, пользователь может изменить порядок.
Обзор API
- Константы - полезные значения, которые нельзя изменить
- Функции - вызовы API, предлагаемые непосредственно расширением
- Конструкторы - вызовы API, которые возвращают объект, обычно объект, предлагающий методы API
- Методы - вызовы API, которые могут быть выполнены только на объекте, возвращённом конструктором
- addItems
- allowedItems
- autosaves
- canCustomize
- copy
- customizePanel
- delete
- deleteItem
- displayMode
- identifier
- insertItem
- isAttached
- isCustomizing
- itemDetails
- items
- modifyItem
- notifyOnChange
- removeItem
- savedSettings
- selectedItem
- selectSearchField
- separator
- setCallback
- sizeMode
- toolbarStyle
- visible
- visibleItems
Документация API
Константы
itemPriorities
| Подпись | hs.webview.toolbar.itemPriorities |
|---|---|
| Тип | Константа |
| Описание |
Таблица, содержащая некоторые предопределённые значения приоритетов элементов панели инструментов для использования при определении порядка элементов на панели инструментов. |
| Источник | extensions/webview/libwebview_toolbar.m строка 1938 |
systemToolbarItems
| Подпись | hs.webview.toolbar.systemToolbarItems |
|---|---|
| Тип | Константа |
| Описание |
Массив, содержащий строковые идентификаторы поддерживаемых системных элементов панели инструментов. |
| Источник | extensions/webview/libwebview_toolbar.m строка 1926 |
Функции
attachToolbar
| Подпись | hs.webview.toolbar.attachToolbar([obj1], [obj2]) -> obj1 |
|---|---|
| Тип | Функция |
| Описание |
Получить или прикрепить/открепить панель инструментов к webview, выбору или консоли. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/webview/libwebview_toolbar.m строка 863 |
inTitleBar
| Подпись | hs.webview.toolbar:inTitleBar([state]) -> toolbarObject | boolean |
|---|---|
| Тип | Функция |
| Описание |
Получить или установить, отображается ли панель инструментов в строке заголовка содержащего окна, подобно Safari. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/webview/libwebview_toolbar.m строка 986 |
uniqueName
| Подпись | hs.webview.toolbar.uniqueName(toolbarName) -> boolean |
|---|---|
| Тип | Функция |
| Описание |
Проверяет, используется ли имя панели инструментов уже. |
| Параметры |
|
| Возвращаемое значение |
|
| Источник | extensions/webview/libwebview_toolbar.m строка 846 |
Конструкторы
new
| Подпись | hs.webview.toolbar.new(toolbarName, [toolbarTable]) -> toolbarObject |
|---|---|
| Тип | Конструктор |
| Описание |
Создаёт новую панель инструментов для webview, выбора или консоли. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/webview/libwebview_toolbar.m строка 809 |
Методы
addItems
| Signature | hs.webview.toolbar:addItems(toolbarTable) -> toolbarObject |
|---|---|
| Type | Method |
| Description |
Добавить один или несколько элементов панели инструментов на панель инструментов |
| Parameters |
|
| Returns |
|
| Notes |
|
| Source | extensions/webview/webview_toolbar.lua строка 53 |
allowedItems
| Signature | hs.webview.toolbar:allowedItems() -> array |
|---|---|
| Type | Method |
| Description |
Возвращает массив всех идентификаторов элементов панели инструментов, определённых для этой панели инструментов. |
| Parameters |
|
| Returns |
|
| Source | extensions/webview/libwebview_toolbar.m строка 1657 |
autosaves
| Signature | hs.webview.toolbar:autosaves([bool]) -> toolbarObject | bool |
|---|---|
| Type | Method |
| Description |
Получить или установить, сохраняются ли автоматически изменения, внесённые в панель инструментов. |
| Parameters |
|
| Returns |
|
| Notes |
|
| Source | extensions/webview/libwebview_toolbar.m строка 1853 |
canCustomize
| Signature | hs.webview.toolbar:canCustomize([bool]) -> toolbarObject | bool |
|---|---|
| Type | Method |
| Description |
Получить или установить, разрешено ли пользователю настраивать панель инструментов с помощью панели настроек. |
| Parameters |
|
| Returns |
|
| Notes |
|
| Source | extensions/webview/libwebview_toolbar.m строка 1827 |
копия
| Подпись | hs.webview.toolbar:copy() -> toolbarObject |
|---|---|
| Тип | Метод |
| Описание |
Возвращает копию объекта панели инструментов. |
| Параметры |
|
| Возвращаемое значение |
|
| Источник | extensions/webview/libwebview_toolbar.m строка 1040 |
панель настройки
| Подпись | hs.webview.toolbar:customizePanel() -> toolbarObject |
|---|---|
| Тип | Метод |
| Описание |
Открывает панель настройки панели инструментов. |
| Параметры |
|
| Возвращаемое значение |
|
| Источник | extensions/webview/libwebview_toolbar.m строка 1792 |
удалить
| Подпись | hs.webview.toolbar:delete() -> none |
|---|---|
| Тип | Метод |
| Описание |
Удаляет панель инструментов, удаляя ее из окна, если она подключена. |
| Параметры |
|
| Возвращаемое значение |
|
| Источник | extensions/webview/libwebview_toolbar.m строка 2066 |
удалитьЭлемент
| Подпись | hs.webview.toolbar:deleteItem(identifier) -> toolbarObject |
|---|---|
| Тип | Метод |
| Описание |
Полностью удаляет указанный элемент панели инструментов из панели инструментов, предварительно удаляя его, если элемент панели инструментов активен. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/webview/libwebview_toolbar.m строка 1557 |
режимОтображения
| Подпись | hs.webview.toolbar:displayMode([mode]) -> toolbarObject |
|---|---|
| Тип | Метод |
| Описание |
Получение или установка режима отображения панели инструментов. |
| Параметры |
|
| Возвращаемое значение |
|
| Источник | extensions/webview/libwebview_toolbar.m строка 1281 |
идентификатор
| Подпись | hs.webview.toolbar:identifier() -> identifier |
|---|---|
| Тип | Метод |
| Описание |
Идентификатор этой панели инструментов. |
| Параметры |
|
| Возвращаемое значение |
|
| Источник | extensions/webview/libwebview_toolbar.m строка 1775 |
вставитьЭлемент
| Подпись | hs.webview.toolbar:insertItem(id, index) -> toolbarObject |
|---|---|
| Тип | Метод |
| Описание |
Вставка или перемещение элемента панели инструментов в указанную позицию индекса |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/webview/libwebview_toolbar.m строка 1177 |
прикреплено
| Подпись | hs.webview.toolbar:isAttached() -> boolean |
|---|---|
| Тип | Метод |
| Описание |
Возвращает булево значение, указывающее, подключена ли панель инструментов к окну. |
| Параметры |
|
| Возвращаемое значение |
|
| Источник | extensions/webview/libwebview_toolbar.m строка 1023 |
настройка
| Подпись | hs.webview.toolbar:isCustomizing() -> bool |
|---|---|
| Тип | Метод |
| Описание |
Указывает, открыта ли панель настройки для панели инструментов. |
| Параметры |
|
| Возвращаемое значение |
|
| Источник | extensions/webview/libwebview_toolbar.m строка 1810 |
деталиЭлемента
| Подпись | hs.webview.toolbar:itemDetails(id) -> table |
|---|---|
| Тип | Метод |
| Описание |
Возвращает таблицу, содержащую подробности о заданном элементе панели инструментов |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/webview/libwebview_toolbar.m строка 1593 |
элементы
| Подпись | hs.webview.toolbar:items() -> array |
|---|---|
| Тип | Метод |
| Описание |
Возвращает массив идентификаторов элементов панели инструментов, назначенных панели инструментов. |
| Параметры |
|
| Возвращаемое значение |
|
| Источник | extensions/webview/libwebview_toolbar.m строка 1674 |
изменитьЭлемент
| Подпись | hs.webview.toolbar:modifyItem(table) -> toolbarObject |
|---|---|
| Тип | Метод |
| Описание |
Изменяет элемент панели инструментов, заданный ключом "id" в аргументе таблицы. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/webview/libwebview_toolbar.m строка 1414 |
уведомитьОбИзменении
| Подпись | hs.webview.toolbar:notifyOnChange([bool]) -> toolbarObject | bool |
|---|---|
| Тип | Метод |
| Описание |
Получение или установка значения, указывающего, вызывается ли функция глобального обратного вызова при добавлении или удалении элемента панели инструментов из панели инструментов. |
| Параметры |
|
| Возвращаемое значение |
|
| Источник | extensions/webview/libwebview_toolbar.m строка 1155 |
removeItem
| Подпись | hs.webview.toolbar:removeItem(index | identifier) -> toolbarObject |
|---|---|
| Тип | Метод |
| Описание |
Удаляет элемент панели инструментов по указанному индексу или по указанному идентификатору, если он присутствует в панели инструментов. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/webview/webview_toolbar.lua строка 97 |
savedSettings
| Подпись | hs.webview.toolbar:savedSettings() -> table |
|---|---|
| Тип | Метод |
| Описание |
Возвращает таблицу, содержащую настройки, которые будут сохранены для панели инструментов, если hs.webview.toolbar:autosaves имеет значение true. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/webview/libwebview_toolbar.m строка 1090 |
selectedItem
| Подпись | hs.webview.toolbar:selectedItem([item]) -> toolbarObject | item |
|---|---|
| Тип | Метод |
| Описание |
Получить или установить выбранный элемент панели инструментов. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/webview/libwebview_toolbar.m строка 1708 |
selectSearchField
| Подпись | hs.webview.toolbar:selectSearchField([identifier]) -> toolbarObject | false |
|---|---|
| Тип | Метод |
| Описание |
Программно фокусировать поле поиска для ввода с клавиатуры. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/webview/libwebview_toolbar.m строка 1741 |
separator
| Подпись | hs.webview.toolbar:separator([bool]) -> toolbarObject | bool |
|---|---|
| Тип | Метод |
| Описание |
Получить или установить, отображает ли панель инструментов разделитель между панелью инструментов и содержимым основного окна. |
| Параметры |
|
| Возвращаемое значение |
|
| Источник | extensions/webview/libwebview_toolbar.m строка 1111 |
setCallback
| Подпись | hs.webview.toolbar:setCallback(fn) -> toolbarObject |
|---|---|
| Тип | Метод |
| Описание |
Устанавливает или удаляет глобальную функцию обратного вызова для панели инструментов. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/webview/libwebview_toolbar.m строка 1062 |
sizeMode
| Подпись | hs.webview.toolbar:sizeMode([size]) -> toolbarObject |
|---|---|
| Тип | Метод |
| Описание |
Получить или установить размер панели инструментов. |
| Параметры |
|
| Возвращаемое значение |
|
| Источник | extensions/webview/libwebview_toolbar.m строка 1234 |
toolbarStyle
| Подпись | hs.webview.toolbar:toolbarStyle([style]) -> toolbarObject |
|---|---|
| Тип | Метод |
| Описание |
Получить или установить стиль панели инструментов. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/webview/libwebview_toolbar.m строка 1333 |
visible
| Подпись | hs.webview.toolbar:visible([bool]) -> toolbarObject | bool |
|---|---|
| Тип | Метод |
| Описание |
Получить или установить, отображается ли панель инструментов в окне, к которому она прикреплена. |
| Параметры |
|
| Возвращаемое значение |
|
| Источник | extensions/webview/libwebview_toolbar.m строка 1133 |
visibleItems
| Подпись | hs.webview.toolbar:visibleItems() -> array |
|---|---|
| Тип | Метод |
| Описание |
Возвращает массив текущих видимых идентификаторов элементов панели инструментов. |
| Параметры |
|
| Возвращаемое значение |
|
| Источник | extensions/webview/libwebview_toolbar.m строка 1691 |
© 2014–2017 Hammerspoon contributors
Licensed under the MIT License.
https://www.hammerspoon.org/docs/hs.webview.toolbar.html