MCPcopy Create free account
hub / github.com/KDE/labplot / rootObjectSelectionChanged

Method rootObjectSelectionChanged

src/frontend/datasources/ROOTOptionsWidget.cpp:67–157  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

65}
66
67void ROOTOptionsWidget::rootObjectSelectionChanged() {
68 DEBUG("rootObjectSelectionChanged()");
69 auto items = ui.twContent->selectedItems();
70 QDEBUG("SELECTED ITEMS =" << items);
71
72 ui.twColumns->clear();
73
74 if (items.isEmpty()) {
75 ui.twColumns->setHeaderHidden(true);
76 return;
77 }
78
79 QTreeWidgetItem* p = items.first();
80 QStringList path;
81 while (p && p != histItem && p != treeItem) {
82 path.prepend(p->text(0));
83 p = p->parent();
84 }
85
86 if (p == histItem) {
87 ui.twColumns->setColumnCount(1);
88 ui.twColumns->setHeaderHidden(false);
89 ui.twColumns->setHeaderLabels(QStringList(i18n("Histogram Data")));
90
91 auto center = new QTreeWidgetItem(ui.twColumns, QStringList(i18n("Bin Center")));
92 center->setData(0, Qt::UserRole, QStringList(QStringLiteral("center")));
93 center->setSelected(true);
94 center->setFirstColumnSpanned(true);
95 auto low = new QTreeWidgetItem(ui.twColumns, QStringList(i18n("Low Edge")));
96 low->setData(0, Qt::UserRole, QStringList(QStringLiteral("low")));
97 low->setFirstColumnSpanned(true);
98 auto content = new QTreeWidgetItem(ui.twColumns, QStringList(i18n("Content")));
99 content->setData(0, Qt::UserRole, QStringList(QStringLiteral("content")));
100 content->setSelected(true);
101 content->setFirstColumnSpanned(true);
102 auto error = new QTreeWidgetItem(ui.twColumns, QStringList(i18n("Error")));
103 error->setData(0, Qt::UserRole, QStringList(QStringLiteral("error")));
104 error->setSelected(true);
105 error->setFirstColumnSpanned(true);
106
107 if (!histselected) {
108 histselected = true;
109 ui.sbFirst->setMaximum(0);
110 ui.sbLast->setMaximum(0);
111 }
112 } else if (p == treeItem) {
113 ui.twColumns->setColumnCount(2);
114 ui.twColumns->setHeaderHidden(false);
115 ui.twColumns->setHeaderLabels(QStringList({i18n("Branch/Leaf"), i18n("Array Size")}));
116
117 auto it = leaves.find(path);
118 if (it != leaves.end()) {
119 for (const auto& l : it.value()) {
120 auto leaf = new QTreeWidgetItem(ui.twColumns, l);
121 bool ok = false;
122 if (l.count() > 1) {
123 QString index(l.back());
124 if (index.at(0) == QLatin1Char('[') && index.at(index.size() - 1) == QLatin1Char(']')) {

Callers

nothing calls this directly

Calls 15

selectedItemsMethod · 0.80
setMaximumMethod · 0.80
lengthMethod · 0.80
argMethod · 0.80
QStringClass · 0.50
clearMethod · 0.45
isEmptyMethod · 0.45
textMethod · 0.45
parentMethod · 0.45
setColumnCountMethod · 0.45
setDataMethod · 0.45
setSelectedMethod · 0.45

Tested by

no test coverage detected