20#ifndef LIBREPCB_EDITOR_BGI_VIA_H
21#define LIBREPCB_EDITOR_BGI_VIA_H
26#include "../../../graphics/graphicslayer.h"
44class PrimitivePathGraphicsItem;
53class BGI_Via final :
public QGraphicsItem {
61 std::shared_ptr<
const QSet<const NetSignal*>>
62 highlightedNetSignals)
noexcept;
70 QPainterPath
shape() const noexcept override;
71 void paint(QPainter* painter, const QStyleOptionGraphicsItem* option,
72 QWidget* widget) noexcept override;
81 virtual QVariant
itemChange(GraphicsItemChange change,
82 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:53
void updateShapes() noexcept
Definition bgi_via.cpp:222
virtual ~BGI_Via() noexcept
Definition bgi_via.cpp:92
std::shared_ptr< const QSet< const NetSignal * > > mHighlightedNetSignals
Definition bgi_via.h:95
QRectF boundingRect() const noexcept override
Definition bgi_via.h:69
void updateText() noexcept
Definition bgi_via.cpp:262
void updatePosition() noexcept
Definition bgi_via.cpp:218
void updateTextHeight() noexcept
Definition bgi_via.cpp:275
virtual QVariant itemChange(GraphicsItemChange change, const QVariant &value) noexcept override
Definition bgi_via.cpp:155
void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) noexcept override
Definition bgi_via.cpp:103
QScopedPointer< PrimitivePathGraphicsItem > mTextGraphicsItem
Definition bgi_via.h:99
void attachToCopperLayers() noexcept
Definition bgi_via.cpp:304
BI_Via::OnEditedSlot mOnEditedSlot
Definition bgi_via.h:113
QPainterPath mShape
Definition bgi_via.h:105
BI_Via & getVia() noexcept
Definition bgi_via.h:66
void updateToolTip() noexcept
Definition bgi_via.cpp:243
std::shared_ptr< GraphicsLayer > mViaLayer
Definition bgi_via.h:96
void viaEdited(const BI_Via &obj, BI_Via::Event event) noexcept
Definition bgi_via.cpp:167
QPainterPath shape() const noexcept override
Definition bgi_via.cpp:99
QString mText
Definition bgi_via.h:110
GraphicsLayer::OnEditedSlot mOnLayerEditedSlot
Definition bgi_via.h:114
QPainterPath mStopMaskBottom
Definition bgi_via.h:108
std::shared_ptr< GraphicsLayer > mTopStopMaskLayer
Definition bgi_via.h:97
const IF_GraphicsLayerProvider & mLayerProvider
Definition bgi_via.h:94
QPainterPath mStopMaskTop
Definition bgi_via.h:107
QRectF mBoundingRect
Definition bgi_via.h:109
void layerEdited(const GraphicsLayer &layer, GraphicsLayer::Event event) noexcept
Definition bgi_via.cpp:197
QPainterPath mCopper
Definition bgi_via.h:106
QVector< std::shared_ptr< GraphicsLayer > > mBlindBuriedCopperLayers
Copper layers for blind- and buried vias (empty for through-hole vias)
Definition bgi_via.h:102
void updateVisibility() noexcept
Definition bgi_via.cpp:284
BGI_Via(const BGI_Via &other)=delete
BI_Via & mVia
Definition bgi_via.h:93
std::shared_ptr< GraphicsLayer > mBottomStopMaskLayer
Definition bgi_via.h:98
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 PrimitivePathGraphicsItem class.
Definition primitivepathgraphicsitem.h:50
Definition occmodel.cpp:76