20 #ifndef LIBREPCB_EDITOR_UNPLACEDCOMPONENTSDOCK_H 21 #define LIBREPCB_EDITOR_UNPLACEDCOMPONENTSDOCK_H 38 class ComponentInstance;
46 class DefaultGraphicsLayerProvider;
47 class FootprintGraphicsItem;
52 class UnplacedComponentsDock;
87 QWidget* parent =
nullptr) noexcept;
92 int getUnplacedComponentsCount() const noexcept;
95 void setBoard(
Board* board);
101 void unplacedComponentsCountChanged(
int count);
106 void updateComponentsList() noexcept;
107 void currentComponentListItemChanged(QListWidgetItem* current,
108 QListWidgetItem* previous) noexcept;
109 void currentDeviceIndexChanged(
int index) noexcept;
110 void currentFootprintIndexChanged(
int index) noexcept;
112 void setSelectedDeviceAndPackage(const
tl::optional<
Uuid>& deviceUuid,
114 bool packageOwned) noexcept;
115 void setSelectedFootprintUuid(const
tl::optional<
Uuid>& uuid) noexcept;
116 void addSelectedDeviceToBoard() noexcept;
117 void addSimilarDevicesToBoard() noexcept;
118 void addAllDevicesToBoard() noexcept;
119 void autoAddDevicesToBoard(
120 const
tl::optional<
Uuid>& libCmpUuidFilter) noexcept;
132 tl::optional<
Uuid> getSuggestedFootprint(
133 const
Uuid& libPkgUuid) const noexcept;
142 bool mDisableListUpdate;
144 QHash<
Uuid, Uuid> mLastDeviceOfComponent;
145 QHash<Uuid, Uuid> mLastFootprintOfPackage;
146 QList<DeviceMetadata> mCurrentDevices;
150 tl::optional<Uuid> mSelectedDeviceUuid;
152 bool mSelectedPackageOwned;
153 tl::optional<Uuid> mSelectedFootprintUuid;
The ProjectEditor class.
Definition: projecteditor.h:62
Definition: occmodel.cpp:77
The Package class represents a package of a component (including footprint and 3D model) ...
Definition: package.h:59
The UnplacedComponentsDock class.
Definition: unplacedcomponentsdock.h:62
The Point class is used to represent a point/coordinate/vector, for example (1.2mm; 5...
Definition: point.h:79
The Board class represents a PCB of a project and is always part of a circuit.
Definition: board.h:73
The GraphicsScene class.
Definition: graphicsscene.h:45
The Project class represents a whole (opened) project with all its content.
Definition: project.h:71
The ComponentInstance class.
Definition: componentinstance.h:54
The DefaultGraphicsLayerProvider class.
Definition: defaultgraphicslayerprovider.h:46
The Uuid class is a replacement for QUuid to get UUID strings without {} braces.
Definition: uuid.h:58