diff --git a/bin/app/data/color_schemes/bad_rainbow.xml b/bin/app/data/color_schemes/bad_rainbow.xml
index f782c5b7..740ac1c1 100644
--- a/bin/app/data/color_schemes/bad_rainbow.xml
+++ b/bin/app/data/color_schemes/bad_rainbow.xml
@@ -294,9 +294,9 @@
global_variable
-
+
type
-
+
#873E3E
diff --git a/bin/app/data/color_schemes/dark.xml b/bin/app/data/color_schemes/dark.xml
index c51ca5ed..c5053034 100644
--- a/bin/app/data/color_schemes/dark.xml
+++ b/bin/app/data/color_schemes/dark.xml
@@ -283,9 +283,9 @@
global_variable>
-
+
type
-
+
#78282D
diff --git a/bin/app/user/projects/tutorial/src/graph_tutorial_3.h b/bin/app/user/projects/tutorial/src/graph_tutorial_3.h
index a3159bc4..d25ac0cf 100644
--- a/bin/app/user/projects/tutorial/src/graph_tutorial_3.h
+++ b/bin/app/user/projects/tutorial/src/graph_tutorial_3.h
@@ -8,28 +8,37 @@
class ProducerOfTheLastMember
{
public:
- void go()
- {
- ClassWithHiddenMembers::this_last_member = 42;
- }
-
- void on()
+ void in()
{
ClassWithHiddenMembers::this_last_member++;
}
+
//------------------------------------------------------------------------------
//
-// 6 - FOCUSING EDGES
-// Even though Coati doesn't allow to activate an edge, you can still focus on
-// edges. This doesn't change the currently active symbol (which would cause
-// Coati to hide everything but the edge). Instead Coati just highlights the
-// relation's location in the code and scrolls you there, so you don't lose
-// context.
-// Try to activate an edge that comes from the "ConsumerOfTheLastMember" class.
-// Which one you pick doesn't really matter for this tutorial.
+// 7 - THAT'S IT
+// You completed the tutorial on the graph view. There is still more to learn
+// but I guess you will figure it out on your own. One last thing: If you see
+// an element with a hatched background please call us. It's a runaway!
+// Just kidding. Those are elements that are used within your code, but have no
+// definition anywhere in your source folder (like the "int" symbol on the
+// right hand side of the graph). So if you click them, Coati will display
+// all the relations for the element, but the code view won't show a
+// definition. If you want to learn more about Coati, go back to the central
+// hub. It is called in the function below but you can also try to get there
+// using only the graph.
//
//------------------------------------------------------------------------------
- void reading()
+
+private:
+ void the()
+ {
+ if (ClassWithHiddenMembers::this_last_member <= 0);
+ {
+ the_central_hub();
+ }
+ }
+
+ void codeview()
{
ClassWithHiddenMembers::this_last_member *= 2;
}
diff --git a/bin/app/user/projects/tutorial/src/graph_tutorial_4.h b/bin/app/user/projects/tutorial/src/graph_tutorial_4.h
index 9d3f880b..284a2d22 100644
--- a/bin/app/user/projects/tutorial/src/graph_tutorial_4.h
+++ b/bin/app/user/projects/tutorial/src/graph_tutorial_4.h
@@ -9,37 +9,28 @@
class ConsumerOfTheLastMember
{
public:
- void in()
+ void go()
+ {
+ ClassWithHiddenMembers::this_last_member = 42;
+ }
+
+ void on()
{
ClassWithHiddenMembers::this_last_member--;
}
-
//------------------------------------------------------------------------------
//
-// 7 - THAT'S IT
-// You completed the tutorial on the graph view. There is still more to learn
-// but I guess you will figure it out on your own. One last thing: If you see
-// an element with a hatched background please call us. It's a runaway!
-// Just kidding. Those are elements that are used within your code, but have no
-// definition anywhere in your source folder (like the "int" symbol on the
-// right hand side of the graph). So if you click them, Coati will display
-// all the relations for the element, but the code view won't show a
-// definition. If you want to learn more about Coati, go back to the central
-// hub. It is called in the function below but you can also try to get there
-// using only the graph.
+// 6 - FOCUSING EDGES
+// Even though Coati doesn't allow to activate an edge, you can still focus on
+// edges. This doesn't change the currently active symbol (which would cause
+// Coati to hide everything but the edge). Instead Coati just highlights the
+// relation's location in the code and scrolls you there, so you don't lose
+// context.
+// Try to activate an edge that comes from the "ProducerOfTheLastMember" class.
+// Which one you pick doesn't really matter for this tutorial.
//
//------------------------------------------------------------------------------
-
-private:
- void the()
- {
- if (ClassWithHiddenMembers::this_last_member <= 0);
- {
- the_central_hub();
- }
- }
-
- void codeview()
+ void reading()
{
ClassWithHiddenMembers::this_last_member /= 2;
}
diff --git a/src/lib/component/controller/GraphController.cpp b/src/lib/component/controller/GraphController.cpp
index 9eb166e2..1dfc3c98 100644
--- a/src/lib/component/controller/GraphController.cpp
+++ b/src/lib/component/controller/GraphController.cpp
@@ -1332,6 +1332,7 @@ void GraphController::addExpandToggleNode(DummyNode* node) const
expandNode->visible = true;
expandNode->expanded = node->expanded;
+ bool hasVisibleSubNode = false;
for (size_t i = 0; i < node->subNodes.size(); i++)
{
DummyNode* subNode = node->subNodes[i].get();
@@ -1343,16 +1344,25 @@ void GraphController::addExpandToggleNode(DummyNode* node) const
continue;
}
+ if (subNode->isQualifierNode())
+ {
+ continue;
+ }
+
for (std::shared_ptr subSubNode : subNode->subNodes)
{
if (!subSubNode->visible)
{
expandNode->invisibleSubNodeCount++;
}
+ else
+ {
+ hasVisibleSubNode = true;
+ }
}
}
- if (expandNode->isExpanded() || expandNode->invisibleSubNodeCount)
+ if ((expandNode->isExpanded() && hasVisibleSubNode) || expandNode->invisibleSubNodeCount)
{
node->subNodes.push_back(expandNode);
}
diff --git a/src/lib/project/Project.cpp b/src/lib/project/Project.cpp
index 55635fc6..b401d0d5 100644
--- a/src/lib/project/Project.cpp
+++ b/src/lib/project/Project.cpp
@@ -225,16 +225,16 @@ void Project::load()
if (canLoad)
{
- m_storage->setMode(SqliteStorage::STORAGE_MODE_READ);
- m_storage->buildCaches();
- m_storageAccessProxy->setSubject(m_storage.get());
-
m_sourceGroups = SourceGroupFactory::getInstance()->createSourceGroups(m_settings->getAllSourceGroupSettings());
if (!m_sourceGroups.empty())
{
NameHierarchy::setDelimiter(getSymbolNameDelimiterForLanguage(m_sourceGroups.front()->getLanguage()));
}
+ m_storage->setMode(SqliteStorage::STORAGE_MODE_READ);
+ m_storage->buildCaches();
+ m_storageAccessProxy->setSubject(m_storage.get());
+
MessageFinishedParsing().dispatch();
MessageStatus("Finished Loading", false, false).dispatch();
}
diff --git a/src/lib_gui/qt/window/project_wizzard/QtProjectWizzardContentPreferences.cpp b/src/lib_gui/qt/window/project_wizzard/QtProjectWizzardContentPreferences.cpp
index fad20217..dced3b0d 100644
--- a/src/lib_gui/qt/window/project_wizzard/QtProjectWizzardContentPreferences.cpp
+++ b/src/lib_gui/qt/window/project_wizzard/QtProjectWizzardContentPreferences.cpp
@@ -172,11 +172,6 @@ void QtProjectWizzardContentPreferences::populate(QGridLayout* layout, int& row)
m_mavenPath->setFileFilter("Maven command (mvn.cmd)");
m_mavenPath->setPlaceholderText("/bin/mvn.cmd");
}
- else if (QSysInfo::macVersion() != QSysInfo::MV_None)
- {
- // todo: add filter here
- // todo: add placeholder here
- }
else
{
m_mavenPath->setFileFilter("Maven command (mvn)");