# LayerControlWidget - Виджет управления слоями карты

class axipy.LayerControlWidget

  Виджет управления слоями карты. Список доступных виджетов можно получить посредством `axipy.ViewManager.layer_controls`

  Пример добавления в главное окно приложения (полный пример см. Пример приложения из готовых компонентов):

      from PySide2.QtWidgets import QDockWidget
      from PySide2.QtCore import Qt

      layer_control = LayerControlWidget()
      dock_layer_control = QDockWidget('Управление слоями', app.mainwindow.widget)
      dock_layer_control.setWidget(layer_control.widget)
      app.mainwindow.widget.addDockWidget(Qt.LeftDockWidgetArea, dock_layer_control)

  Пример запроса выделенных слоев:

      for lc in axipy.view_manager.layer_controls:
          print(f'Карта: {lc.active_map_view.title}')
          if lc.selected_layers:
              for l in lc.selected_layers:
                  print('Слой или группа:' , l.title)

  См.также

  Пример приложения из готовых компонентов

  Свойства:

  `active_map_view` | Возвращает активную карту.
  `selected_layers` | Возвращает список выбранных слоев или групп.
  `widget` | Виджет, соответствующий содержимому окна.r.

  Сигналы:

  `mapview_activated` | Сигнал об изменении активной карты.
  `selection_changed` | Сигнал об изменении выбранных слоев или групп.

  property active_map_view: Optional[MapView]

    Возвращает активную карту.

  property mapview_activated: Signal

    Сигнал об изменении активной карты.

    Тип результата:

      Signal[MapView]

  property selected_layers: Optional[ListLayers]

    Возвращает список выбранных слоев или групп.

  property selection_changed: Signal

    Сигнал об изменении выбранных слоев или групп.

    Пример:

        for lc in axipy.view_manager.layer_controls:
            lc.selection_changed.connect(lambda: print('Выбор изменен'))

    Тип результата:

      Signal[]

  property widget: QWidget

    Виджет, соответствующий содержимому окна.r.

    Результат:

      Qt5 виджет содержимого.