20#ifndef LIBREPCB_EDITOR_BGI_DEVICE_H
21#define LIBREPCB_EDITOR_BGI_DEVICE_H
26#include "../../../graphics/graphicslayer.h"
44class OriginCrossGraphicsItem;
45class PrimitiveCircleGraphicsItem;
46class PrimitiveHoleGraphicsItem;
47class PrimitivePathGraphicsItem;
48class PrimitiveZoneGraphicsItem;
77 QPainterPath
shape() const noexcept override;
86 virtual QVariant
itemChange(GraphicsItemChange change,
87 const QVariant& value) noexcept override;
The BI_Device class.
Definition bi_device.h:57
The Layer class provides all supported geometry layers.
Definition layer.h:42
The Signal class is used to emit signals on non-QObject derived classes.
Definition signalslot.h:65
The Slot class is used to receive signals from non-QObject derived classes.
Definition signalslot.h:170
The BGI_Device class.
Definition bgi_device.h:57
void updateBoardSide() noexcept
Definition bgi_device.cpp:216
BI_Device & mDevice
Definition bgi_device.h:96
std::shared_ptr< OriginCrossGraphicsItem > mOriginCrossGraphicsItem
Definition bgi_device.h:99
QVector< std::shared_ptr< PrimitiveHoleGraphicsItem > > mHoleGraphicsItems
Definition bgi_device.h:103
void updatePosition() noexcept
Definition bgi_device.cpp:204
QVector< std::shared_ptr< PrimitivePathGraphicsItem > > mPolygonGraphicsItems
Definition bgi_device.h:101
std::shared_ptr< GraphicsLayer > mGrabAreaLayer
Definition bgi_device.h:98
virtual QVariant itemChange(GraphicsItemChange change, const QVariant &value) noexcept override
Definition bgi_device.cpp:183
QVector< std::shared_ptr< PrimitiveZoneGraphicsItem > > mZoneGraphicsItems
Definition bgi_device.h:102
QPainterPath mShape
Definition bgi_device.h:104
void updateHoleStopMaskOffsets() noexcept
Definition bgi_device.cpp:279
virtual ~BGI_Device() noexcept
Definition bgi_device.cpp:119
Event
Definition bgi_device.h:60
QPainterPath shape() const noexcept override
Definition bgi_device.cpp:126
GraphicsLayer::OnEditedSlot mOnLayerEditedSlot
Definition bgi_device.h:108
const IF_GraphicsLayerProvider & mLayerProvider
Definition bgi_device.h:97
BGI_Device(const BGI_Device &other)=delete
void updateRotationAndMirrored() noexcept
Definition bgi_device.cpp:209
BI_Device::OnEditedSlot mOnEditedSlot
Definition bgi_device.h:107
Signal< BGI_Device, Event > onEdited
Definition bgi_device.h:64
void layerEdited(const GraphicsLayer &layer, GraphicsLayer::Event event) noexcept
Definition bgi_device.cpp:165
QVector< std::shared_ptr< PrimitiveCircleGraphicsItem > > mCircleGraphicsItems
Definition bgi_device.h:100
void deviceEdited(const BI_Device &obj, BI_Device::Event event) noexcept
Definition bgi_device.cpp:138
Slot< BGI_Device, Event > OnEditedSlot
Definition bgi_device.h:65
BI_Device & getDevice() noexcept
Definition bgi_device.h:74
std::shared_ptr< GraphicsLayer > getLayer(const Layer &layer) const noexcept
Definition bgi_device.cpp:317
void updateZoneLayers() noexcept
Definition bgi_device.cpp:292
The GraphicsLayer class represents a graphical layer used in schematics and boards.
Definition graphicslayer.h:53
The IF_GraphicsLayerProvider class defines an interface for classes which provide layers.
Definition graphicslayer.h:111
The OriginCrossGraphicsItem class.
Definition origincrossgraphicsitem.h:50
The PrimitiveCircleGraphicsItem class.
Definition primitivecirclegraphicsitem.h:49
Independent graphical representation of a librepcb::Hole.
Definition primitiveholegraphicsitem.h:53
The PrimitivePathGraphicsItem class.
Definition primitivepathgraphicsitem.h:50
The PrimitiveZoneGraphicsItem class.
Definition primitivezonegraphicsitem.h:51
Definition occmodel.cpp:76