RibbonExtension

class axioma.gui.extension.RibbonExtension

Класс для добавления элементов в ленточный интерфейс. Идентификаторы ленточного интерфейса для стандартных элементов можно получить из класса RibbonId

Методы:

addTab(id, text)

Добавление вкладки.

Параметры:
  • id (str) – Идентификатор вкладки
  • text (str) – Название вкладки
addGroup(tabId, id, text)

Добавление группы внутри вкладки.

Параметры:
  • idTab (str) – Идентификатор вкладки
  • id (str) – Идентификатор группы
  • text (str) – Название группы
addCategory(id, text)

Добавление категории команд.

Параметры:
  • id (str) – Идентификатор категории
  • text (str) – Название категории
addAction(id, tabId, groupId[, rowSpan = 1, columnSpan = 1, row = -1, column = -1])

Добавление кнопки действия или инструмента в ленточный интерфейс. Размер и положение кнопки измеряется ячейками 16x16 пикселей.

Параметры:
  • id (str) – Идентификатор кнопки действия или инструмента
  • tabId (str) – Идентификатор вкладки
  • groupId (str) – Идентификатор группы
  • rowSpan (int) – вертикальный размер кнопки в группе
  • columnSpan (int) – горизонтальный размер кнопки в группе
  • row (int) – вертикальная позиция кнопки в группе
  • column (int) – горизонтальная позиция кнопки в группе

Идентификаторы ленточного интерфейса для стандартных категорий можно получить из класса RibbonId

Пример использования:

# Получаем ссылку на существующий интерфейс приложения
ribbonExt = axioma.gui.extension.RibbonExtension()
# Добавляем новую группу во каладку с инструментами для карты
ribbonExt.addGroup("map","MyGroupId", "Описание")
# Добавляем действие  в созданную группу
ribbonExt.addAction("MyActionId", "map", "MyGroupId")
# Расширение, добавляющее QAction, создаваемый функцией createAction
actionExt = axioma.gui.extension.ActionExtension(createAction, "ExampleActionId")

# Пример функции createAction
def createAction(parent):
    action = PyQt5.QtWidgets.QAction(parent)
    action.setText("Действие")
    action.triggered.connect(lambda: QMessageBox.information(axioma.app.mainWindow, "Заголовок", "Сообщение") )
    return action