ActiveToolPanel - Панель активного инструмента¶
-
class
axipy.gui.
ActiveToolPanel
¶ Сервис предоставляющий доступ к панели активного инструмента.
service = ActiveToolPanel() # Любой пользовательский графический элемент widget = QWidget() # Создаём обработчик для панели активного инструмента через который # будем управлять панелью. tool_panel = service.make_acceptable( title="Мой инструмент", observer_id=DefaultKeys.SelectionEditable, widget=widget) # Подписываемся на сигнал отправляемый после нажатия на кнопку "Применить" в панели tool_panel.accepted.connect(lambda: print("Применяем изменения"))
Чтобы отобразить переданный ранее графический элемент нужно вызвать
activate()
. Например при нажатии на пользовательскую кнопку.Панель активного инструмента созданная через
make_acceptable()
по умолчанию содержит кнопки «Применить» и «Отмена». По нажатию кнопки «Отмена» посылается сигналrejected()
и очищается содержимое панели активного инструмента. По нажатию «Применить» отсылается сигналaccepted()
.Панель активного инструмента созданная через
make_custom()
представляет из себя пустой контейнер в который можно поместить пользовательский графический элемент. Это дает больше свободы для реализации управления панелью активного инструмента.Переданный идентификатор наблюдателя используется для управления видимостью и доступностью панели. Панель активного инструмента сразу закроется как только наблюдатель вернет False.
-
make_acceptable
(title, observer_id, widget=None)¶ Создает экземпляр обработчика через который можно взаимодействовать с панелью активного инструмента. По умолчанию добавляются кнопки «Применить/Отменить».
- Параметры
- Тип результата
-
make_custom
(title, observer_id, widget=None)¶ Создает экземпляр обработчика панели активного инструмента. В который можно установить любой пользовательский графический элемент. Используется когда пользователю не нужны предустановленные элементы управления.
- Параметры
- Тип результата
-