MCPcopy Create free account
hub / github.com/MITK/MITK / QmitkNodeSelectionDialog

Method QmitkNodeSelectionDialog

Modules/QtWidgets/src/QmitkNodeSelectionDialog.cpp:27–113  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

25#include <map>
26
27QmitkNodeSelectionDialog::QmitkNodeSelectionDialog(QWidget* parent, QString title, QString hint)
28 : QDialog(parent)
29 , m_NodePredicate(nullptr)
30 , m_SelectOnlyVisibleNodes(false)
31 , m_SelectedNodes(NodeList())
32 , m_SelectionMode(QAbstractItemView::SingleSelection)
33{
34 m_Controls = std::make_unique<Ui::QmitkNodeSelectionDialog>();
35 m_Controls->setupUi(this);
36
37 m_CheckFunction = [](const NodeList &) { return ""; };
38
39 auto providers = mitk::DataStorageInspectorGenerator::GetProviders();
40 auto visibleProviders = mitk::GetVisibleDataStorageInspectors();
41 auto preferredID = mitk::GetPreferredDataStorageInspector();
42
43 if (visibleProviders.empty())
44 {
45 MITK_DEBUG << "No presets for visible node selection inspectors available. Use fallback (show all available inspectors)";
46 unsigned int order = 0;
47 for (const auto &proIter : providers)
48 {
49 visibleProviders.insert(std::make_pair(order, proIter.first));
50 ++order;
51 }
52 }
53
54 int preferredIndex = 0;
55 bool preferredFound = false;
56 for (const auto &proIter : visibleProviders)
57 {
58 auto finding = providers.find(proIter.second);
59 if (finding != providers.end())
60 {
61 if (finding->second->GetInspectorID() != QmitkDataStorageFavoriteNodesInspector::INSPECTOR_ID() && finding->second->GetInspectorID() != QmitkDataStorageSelectionHistoryInspector::INSPECTOR_ID())
62 {
63 auto provider = finding->second;
64 this->AddPanel(provider, preferredID, preferredFound, preferredIndex);
65 }
66 }
67 else
68 {
69 MITK_DEBUG << "No provider registered for inspector that is defined as visible in the preferences. Illegal inspector ID: " << proIter.second;
70 }
71 }
72
73 if (mitk::GetShowFavoritesInspector())
74 {
75 auto favoritesPorvider = mitk::DataStorageInspectorGenerator::GetProvider(QmitkDataStorageFavoriteNodesInspector::INSPECTOR_ID());
76 if (favoritesPorvider != nullptr)
77 {
78 this->AddPanel(favoritesPorvider, preferredID, preferredFound, preferredIndex);
79 }
80 }
81
82 if (mitk::GetShowHistoryInspector())
83 {
84 auto historyPorvider = mitk::DataStorageInspectorGenerator::GetProvider(QmitkDataStorageSelectionHistoryInspector::INSPECTOR_ID());

Callers

nothing calls this directly

Calls 8

AddPanelMethod · 0.95
SetErrorTextMethod · 0.95
setIconMethod · 0.80
INSPECTOR_IDFunction · 0.50
emptyMethod · 0.45
findMethod · 0.45
endMethod · 0.45
setTextMethod · 0.45

Tested by

no test coverage detected