AlignedItemView
=================

.. currentmodule:: axioma.gui

.. class:: AlignedItemView

	Поддержка направляющих для выравнивания элементов и сетки

	Унаследован от: :class:`ScrollItemView`

	От него наследуются: :class:`ReportView`, :class:`LegendView`

		.. py:method:: AlignedItemView(parent=None)

			Конструктор

			:param parent: Родительский объект
			:type parent: :class:`~PyQt5.QtCore.QObject` или :any:`None`

		.. csv-table:: Тип линии выравнивания :data:`TypeGuideline`:
				:header: "Наименование величины", "Значение", "Описание"

				vertical, 0, "Вертикальная"
				horisontal, 1, "Горизонтальная"

		.. py:method:: addGuideline(tp, v)

			Добавление новой направляющей

			:param  tp: Тип направляющей
			:type tp: :class:`TypeGuideline`
			:param v: Отступ от левого верхнего угла
			:type v: :class:`float`

		.. py:method:: addGuidelines(tp, values)

			Добавление новых направляющих

			:param  tp: Тип направляющей
			:type tp: :class:`TypeGuideline`
			:param v: массив с отступами от левого верхнего угла
			:type v: :class:`list` [ :class:`float` ]

		.. py:method:: clearGuidelines()

			Очистка всех направляющих

		.. py:method:: removeSelectedGuideline()

			Удаление выделенных направляющих

			:return: True, если успешно. В противном случае False
			:rtype: :class:`bool`

		.. py:method:: hasGuidelines()

			Имеются ли направляющие

			:return: True, если да. В противном случае False
			:rtype: :class:`bool`

		.. py:method:: xGuidelines()

			Список вертикальных направляющих

			:return: Список
			:rtype: :class:`list` [ :class:`float` ]

		.. py:method:: yGuidelines()

			Список горизонтальных направляющих

			:return: Список
			:rtype: :class:`list` [ :class:`float` ]

		.. py:method:: replaceGuideline(tp, ind, v)

			Обновление значения направляющей

			:param  tp: Тип направляющей
			:type tp: :class:`TypeGuideline`
			:param ind: Индекс
			:type ind: :class:`int`
			:param v: Новое значение
			:type v: :class:`float`

		.. py:method:: showMesh()

			Будет ли показываться сетка привязки

			:return: True, если да. В противном случае False
			:rtype: :class:`bool`

		.. py:method:: setShowMesh(showLayoutMesh)

			[slot] Включение или отключение режима показа сетки

			:param showLayoutMesh: True, если необходимо включить
			:type showLayoutMesh: :class:`bool`

		.. py:method:: meshSize()

			Размер сетки привязки

			:return: Размер
			:rtype: :class:`float`

		.. py:method:: setMeshSize(meshSize)

			[slot] Установка размера сетки привязки

			:param meshSize: Размер
			:type meshSize: :class:`float`

		.. py:method:: snapToMesh()

			Установлен ли режим привязки редактируемых элементов к сетке

			:return: True, если да. В противном случае False
			:rtype: :class:`bool`

		.. py:method:: viewport()

			Текущая область видимости

			:return: Значение Viewport
			:rtype: :class:`~axioma.render.Viewport`

		.. py:method:: setViewport(viewport)

			Установка нового значения области видимости

			:param viewport: Новое значение Viewport
			:type viewport: :class:`~axioma.render.Viewport`

		.. py:method:: setSnapToMesh(snapToMesh)

			[slot] Включение или отключение режима привязки к сетке

			:param snapToMesh: True, если необходимо включить
			:type snapToMesh: :class:`bool`

		.. py:method::hidden: std::shared_ptr<GuidelineSelection> guidelineSelection() const;

		.. method:: guidelinesChanged()

			[signal] Сигнал испускается при изменении в направляющих
			
		.. method:: showMeshEvent(showMesh)

			[signal] Сигнал испускается при изменении видимости сетки

			:param showMesh: Показ сетки
			:type showMesh: :class:`bool`
	
		.. method:: snapToMeshEvent(snap)

			[signal] Сигнал испускается при изменении режима привязки к сетке

			:param snap: Привязка к сетке
			:type snap: :class:`bool`
