MCPcopy Create free account
hub / github.com/XRay3D/GERBER_X3 / setFile

Method setFile

file_plugins/gerber/compview.cpp:38–65  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

36}
37
38void ComponentsView::setFile(int fileId)
39{
40 setModel(new ComponentsModel(fileId, this));
41 expandAll();
42
43 connect(selectionModel(), &QItemSelectionModel::selectionChanged, [this](const QItemSelection& selected, const QItemSelection& deselected) {
44 qDebug() << selected.size() << deselected.size();
45 static QColor color;
46 if (!selected.indexes().empty()) {
47 auto node = reinterpret_cast<ComponentsNode*>(selected.indexes().front().internalPointer());
48 if (node->item) {
49 color = node->item->brush().color();
50 node->item->setBrush(Qt::white);
51 item = node->component.componentitem();
52 item->setSelected(true);
53 App::graphicsView()->fitInView(node->item->boundingRect());
54 }
55 }
56
57 if (!deselected.indexes().empty()) {
58 auto node = reinterpret_cast<ComponentsNode*>(deselected.indexes().front().internalPointer());
59 if (node->item) {
60 node->item->setBrush(color);
61 node->component.componentitem()->setSelected(false);
62 }
63 }
64 });
65}
66
67void ComponentsView::selectionChanged(const QItemSelection& selected, const QItemSelection& deselected)
68{

Callers 1

menuMethod · 0.45

Calls 6

sizeMethod · 0.80
componentitemMethod · 0.80
fitInViewMethod · 0.80
colorMethod · 0.45
setSelectedMethod · 0.45
boundingRectMethod · 0.45

Tested by

no test coverage detected