20#ifndef LIBREPCB_EDITOR_BGI_VIA_H
21#define LIBREPCB_EDITOR_BGI_VIA_H
26#include "../../../graphics/graphicslayer.h"
44class GraphicsLayerList;
45class PrimitivePathGraphicsItem;
54class BGI_Via final :
public QGraphicsItem {
62 std::shared_ptr<
const QSet<const NetSignal*>>
63 highlightedNetSignals)
noexcept;
71 QPainterPath
shape() const noexcept override;
72 void paint(QPainter* painter, const QStyleOptionGraphicsItem* option,
73 QWidget* widget) noexcept override;
82 virtual QVariant
itemChange(GraphicsItemChange change,
83 const QVariant& value) noexcept override;
The BI_Via class.
Definition bi_via.h:44
The NetSignal class.
Definition netsignal.h:50
The BGI_Via class.
Definition bgi_via.h:54
void updateShapes() noexcept
Definition bgi_via.cpp:223
virtual ~BGI_Via() noexcept
Definition bgi_via.cpp:93
std::shared_ptr< const QSet< const NetSignal * > > mHighlightedNetSignals
Definition bgi_via.h:96
QRectF boundingRect() const noexcept override
Definition bgi_via.h:70
void updateText() noexcept
Definition bgi_via.cpp:263
std::shared_ptr< const GraphicsLayer > mViaLayer
Definition bgi_via.h:97
void updatePosition() noexcept
Definition bgi_via.cpp:219
void updateTextHeight() noexcept
Definition bgi_via.cpp:276
virtual QVariant itemChange(GraphicsItemChange change, const QVariant &value) noexcept override
Definition bgi_via.cpp:156
void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) noexcept override
Definition bgi_via.cpp:104
QScopedPointer< PrimitivePathGraphicsItem > mTextGraphicsItem
Definition bgi_via.h:100
void attachToCopperLayers() noexcept
Definition bgi_via.cpp:305
BI_Via::OnEditedSlot mOnEditedSlot
Definition bgi_via.h:114
QPainterPath mShape
Definition bgi_via.h:106
BI_Via & getVia() noexcept
Definition bgi_via.h:67
void updateToolTip() noexcept
Definition bgi_via.cpp:244
std::shared_ptr< const GraphicsLayer > mBottomStopMaskLayer
Definition bgi_via.h:99
std::shared_ptr< const GraphicsLayer > mTopStopMaskLayer
Definition bgi_via.h:98
void viaEdited(const BI_Via &obj, BI_Via::Event event) noexcept
Definition bgi_via.cpp:168
const GraphicsLayerList & mLayers
Definition bgi_via.h:95
QPainterPath shape() const noexcept override
Definition bgi_via.cpp:100
QString mText
Definition bgi_via.h:111
GraphicsLayer::OnEditedSlot mOnLayerEditedSlot
Definition bgi_via.h:115
QPainterPath mStopMaskBottom
Definition bgi_via.h:109
QPainterPath mStopMaskTop
Definition bgi_via.h:108
QRectF mBoundingRect
Definition bgi_via.h:110
void layerEdited(const GraphicsLayer &layer, GraphicsLayer::Event event) noexcept
Definition bgi_via.cpp:198
QVector< std::shared_ptr< const GraphicsLayer > > mBlindBuriedCopperLayers
Copper layers for blind- and buried vias (empty for through-hole vias)
Definition bgi_via.h:103
QPainterPath mCopper
Definition bgi_via.h:107
void updateVisibility() noexcept
Definition bgi_via.cpp:285
BGI_Via(const BGI_Via &other)=delete
BI_Via & mVia
Definition bgi_via.h:94
The GraphicsLayer class represents a graphical layer used in schematics and boards.
Definition graphicslayer.h:53
The GraphicsLayerList class.
Definition graphicslayerlist.h:48
The PrimitivePathGraphicsItem class.
Definition primitivepathgraphicsitem.h:50
Definition occmodel.cpp:77