LibrePCB Developers Documentation
PrimitiveFootprintPadGraphicsItem Class Referencefinal

The PrimitiveFootprintPadGraphicsItem class. More...

#include <primitivefootprintpadgraphicsitem.h>

Inherits QGraphicsItemGroup.

+ Collaboration diagram for PrimitiveFootprintPadGraphicsItem:

Classes

struct  PathItem
 

Public Member Functions

 PrimitiveFootprintPadGraphicsItem ()=delete
 
 PrimitiveFootprintPadGraphicsItem (const PrimitiveFootprintPadGraphicsItem &other)=delete
 
 PrimitiveFootprintPadGraphicsItem (const IF_GraphicsLayerProvider &lp, bool originCrossVisible, QGraphicsItem *parent=nullptr) noexcept
 
 ~PrimitiveFootprintPadGraphicsItem () noexcept
 
void setPosition (const Point &position) noexcept
 
void setRotation (const Angle &rotation) noexcept
 
void setMirrored (bool mirrored) noexcept
 
void setText (const QString &text) noexcept
 
void setLayer (const QString &layerName) noexcept
 
void setGeometries (const QHash< const Layer *, QList< PadGeometry > > &geometries, const Length &clearance) noexcept
 
QPainterPath shape () const noexcept override
 
PrimitiveFootprintPadGraphicsItemoperator= (const PrimitiveFootprintPadGraphicsItem &rhs)=delete
 

Private Member Functions

void layerEdited (const GraphicsLayer &layer, GraphicsLayer::Event event) noexcept
 
virtual QVariant itemChange (GraphicsItemChange change, const QVariant &value) noexcept override
 
void updatePathLayers () noexcept
 
void updateTextHeight () noexcept
 
void updateRegisteredLayers () noexcept
 

Private Attributes

const IF_GraphicsLayerProvidermLayerProvider
 
bool mMirror
 
std::shared_ptr< GraphicsLayermCopperLayer
 
QScopedPointer< OriginCrossGraphicsItemmOriginCrossGraphicsItem
 
QScopedPointer< PrimitivePathGraphicsItemmTextGraphicsItem
 
QVector< PathItemmPathGraphicsItems
 
QMap< std::shared_ptr< GraphicsLayer >, QPainterPath > mShapes
 
QRectF mShapesBoundingRect
 
GraphicsLayer::OnEditedSlot mOnLayerEditedSlot
 

Detailed Description

Constructor & Destructor Documentation

◆ PrimitiveFootprintPadGraphicsItem() [1/3]

◆ PrimitiveFootprintPadGraphicsItem() [2/3]

◆ PrimitiveFootprintPadGraphicsItem() [3/3]

PrimitiveFootprintPadGraphicsItem ( const IF_GraphicsLayerProvider lp,
bool  originCrossVisible,
QGraphicsItem *  parent = nullptr 
)
noexcept

◆ ~PrimitiveFootprintPadGraphicsItem()

Member Function Documentation

◆ setPosition()

void setPosition ( const Point position)
noexcept

◆ setRotation()

void setRotation ( const Angle rotation)
noexcept

◆ setMirrored()

void setMirrored ( bool  mirrored)
noexcept

◆ setText()

void setText ( const QString &  text)
noexcept
+ Here is the call graph for this function:

◆ setLayer()

void setLayer ( const QString &  layerName)
noexcept

◆ setGeometries()

void setGeometries ( const QHash< const Layer *, QList< PadGeometry > > &  geometries,
const Length clearance 
)
noexcept
+ Here is the call graph for this function:

◆ shape()

QPainterPath shape ( ) const
overridenoexcept

◆ operator=()

◆ layerEdited()

void layerEdited ( const GraphicsLayer layer,
GraphicsLayer::Event  event 
)
privatenoexcept

◆ itemChange()

QVariant itemChange ( GraphicsItemChange  change,
const QVariant &  value 
)
overrideprivatevirtualnoexcept

◆ updatePathLayers()

void updatePathLayers ( )
privatenoexcept

◆ updateTextHeight()

void updateTextHeight ( )
privatenoexcept

◆ updateRegisteredLayers()

void updateRegisteredLayers ( )
privatenoexcept
+ Here is the call graph for this function:

Member Data Documentation

◆ mLayerProvider

const IF_GraphicsLayerProvider& mLayerProvider
private

◆ mMirror

bool mMirror
private

◆ mCopperLayer

std::shared_ptr<GraphicsLayer> mCopperLayer
private

◆ mOriginCrossGraphicsItem

QScopedPointer<OriginCrossGraphicsItem> mOriginCrossGraphicsItem
private

◆ mTextGraphicsItem

QScopedPointer<PrimitivePathGraphicsItem> mTextGraphicsItem
private

◆ mPathGraphicsItems

QVector<PathItem> mPathGraphicsItems
private

◆ mShapes

QMap<std::shared_ptr<GraphicsLayer>, QPainterPath> mShapes
private

◆ mShapesBoundingRect

QRectF mShapesBoundingRect
private

◆ mOnLayerEditedSlot

GraphicsLayer::OnEditedSlot mOnLayerEditedSlot
private

The documentation for this class was generated from the following files: