20 #ifndef LIBREPCB_CORE_SI_SYMBOL_H 21 #define LIBREPCB_CORE_SI_SYMBOL_H 26 #include "../../../geometry/text.h" 27 #include "../../../types/angle.h" 28 #include "../../../types/point.h" 29 #include "../../../types/uuid.h" 30 #include "../../../utils/signalslot.h" 40 class ComponentInstance;
41 class ComponentSymbolVariantItem;
72 const Point& position,
const Angle& rotation,
bool mirrored,
73 bool loadInitialTexts);
81 QString
getName()
const noexcept;
83 return mPins.value(pinUuid);
85 const QHash<Uuid, SI_SymbolPin*>&
getPins() const noexcept {
return mPins; }
SI_SymbolPin * getPin(const Uuid &pinUuid) const noexcept
Definition: si_symbol.h:82
void removeFromSchematic() override
Definition: si_symbol.cpp:222
const QMap< Uuid, SI_Text * > & getTexts() const noexcept
Definition: si_symbol.h:101
The SI_Text class represents a text label in a schematic.
Definition: si_text.h:48
The Symbol class represents the part of a component which is added to schematics. ...
Definition: symbol.h:55
const Symbol * mSymbol
Definition: si_symbol.h:130
QHash< Uuid, SI_SymbolPin * > mPins
key: symbol pin UUID
Definition: si_symbol.h:131
Definition: occmodel.cpp:76
void textRemoved(SI_Text &text)
const Angle & getRotation() const noexcept
Definition: si_symbol.h:79
The Schematic Item Base (SI_Base) class.
Definition: si_base.h:45
ComponentInstance & getComponentInstance() const noexcept
Definition: si_symbol.h:86
const Symbol & getLibSymbol() const noexcept
Definition: si_symbol.h:89
const Point & getPosition() const noexcept
Definition: si_symbol.h:78
The Angle class is used to represent an angle (for example 12.75 degrees)
Definition: angle.h:76
const QHash< Uuid, SI_SymbolPin * > & getPins() const noexcept
Definition: si_symbol.h:85
const ComponentSymbolVariantItem * mSymbVarItem
Definition: si_symbol.h:129
QMap< Uuid, SI_Text * > mTexts
key: text UUID
Definition: si_symbol.h:132
void setMirrored(bool newMirrored) noexcept
Definition: si_symbol.cpp:143
The ComponentSymbolVariantItem class represents one symbol of a component symbol variant.
Definition: componentsymbolvariantitem.h:54
Angle mRotation
Definition: si_symbol.h:137
The Schematic class represents one schematic page of a project and is always part of a circuit...
Definition: schematic.h:74
bool getMirrored() const noexcept
Definition: si_symbol.h:80
ComponentInstance & mComponentInstance
Definition: si_symbol.h:128
The Point class is used to represent a point/coordinate/vector, for example (1.2mm; 5...
Definition: point.h:78
void addText(SI_Text &text)
Definition: si_symbol.cpp:170
Event
Definition: si_symbol.h:59
~SI_Symbol() noexcept
Definition: si_symbol.cpp:106
Signal< SI_Symbol, Event > onEdited
Definition: si_symbol.h:64
void removeText(SI_Text &text)
Definition: si_symbol.cpp:188
Slot< SI_Symbol, Event > OnEditedSlot
Definition: si_symbol.h:65
SI_Symbol & operator=(const SI_Symbol &rhs)=delete
The SI_SymbolPin class.
Definition: si_symbolpin.h:52
The Signal class is used to emit signals on non-QObject derived classes.
Definition: signalslot.h:65
The ComponentInstance class.
Definition: componentinstance.h:54
void textAdded(SI_Text &text)
void setRotation(const Angle &newRotation) noexcept
Definition: si_symbol.cpp:136
const Uuid & getUuid() const noexcept
Definition: si_symbol.h:77
The SI_Symbol class.
Definition: si_symbol.h:54
bool checkAttributesValidity() const noexcept
Definition: si_symbol.cpp:265
void setPosition(const Point &newPos) noexcept
Definition: si_symbol.cpp:129
QString getName() const noexcept
Definition: si_symbol.cpp:117
The Uuid class is a replacement for QUuid to get UUID strings without {} braces.
Definition: uuid.h:56
void serialize(SExpression &root) const
Serialize into librepcb::SExpression node.
Definition: si_symbol.cpp:241
Uuid mUuid
Definition: si_symbol.h:135
Point mPosition
Definition: si_symbol.h:136
void addToSchematic() override
Definition: si_symbol.cpp:203
bool mMirrored
Definition: si_symbol.h:138
The SExpression class.
Definition: sexpression.h:66
const ComponentSymbolVariantItem & getCompSymbVarItem() const noexcept
Definition: si_symbol.h:90
TextList getDefaultTexts() const noexcept
Definition: si_symbol.cpp:154