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)¶ Создает экземпляр обработчика панели активного инструмента. В который можно установить любой пользовательский графический элемент. Используется когда пользователю не нужны предустановленные элементы управления.
- Параметры
- Тип результата
-