diff --git a/bin/app/data/ProjectSettings_template.xml b/bin/app/data/ProjectSettings_template.xml
index 52e4036c..000c7c5d 100644
--- a/bin/app/data/ProjectSettings_template.xml
+++ b/bin/app/data/ProjectSettings_template.xml
@@ -7,6 +7,11 @@
+
+
+
+
+
diff --git a/bin/app/data/projects/tictactoe/tictactoe.coatiproject b/bin/app/data/projects/tictactoe/tictactoe.coatiproject
index ff5af2b5..2dc7a2d3 100644
--- a/bin/app/data/projects/tictactoe/tictactoe.coatiproject
+++ b/bin/app/data/projects/tictactoe/tictactoe.coatiproject
@@ -1,12 +1,12 @@
+
+ C++
+ 11
+
-
- .h
- .cpp
-
- ./src
+ C:/Users/Manuel/FH/MSc/Masterproject/Project/bin/app/data/projects/tictactoe/src
-
\ No newline at end of file
+
diff --git a/bin/test/data/log/test_log.txt b/bin/test/data/log/test_log.txt
index ef77bdfd..7e93c935 100644
--- a/bin/test/data/log/test_log.txt
+++ b/bin/test/data/log/test_log.txt
@@ -1,4 +1,348 @@
ConfigManager.cpp WARNING: value path/to/nowhere is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
+Settings.cpp WARNING: File for Settings not found: data/TestSettings.xml
+ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
Token.cpp ERROR: Location Id was not referenced by this Token.
Edge.cpp ERROR: Edge type_of can't go from Node undefined to Node undefined
Node.cpp WARNING: Cannot change NodeType after it was already set from namespace to class
diff --git a/src/lib/Project.cpp b/src/lib/Project.cpp
index 5283a58e..e01a722c 100644
--- a/src/lib/Project.cpp
+++ b/src/lib/Project.cpp
@@ -199,6 +199,9 @@ Parser::Arguments Project::getParserArguments() const
utility::append(args.frameworkSearchPaths, projSettings->getFrameworkSearchPaths());
utility::append(args.frameworkSearchPaths, appSettings->getFrameworkSearchPaths());
+ args.language = projSettings->getLanguage();
+ args.languageStandard = projSettings->getStandard();
+
return args;
}
diff --git a/src/lib/data/parser/Parser.h b/src/lib/data/parser/Parser.h
index 0b845e6d..73f67a3f 100644
--- a/src/lib/data/parser/Parser.h
+++ b/src/lib/data/parser/Parser.h
@@ -22,6 +22,8 @@ public:
std::vector frameworkSearchPaths;
std::vector compilerFlags;
bool logErrors;
+ std::string language;
+ std::string languageStandard;
};
Parser(ParserClient* client);
diff --git a/src/lib/settings/ProjectSettings.cpp b/src/lib/settings/ProjectSettings.cpp
index 3fb21b23..1b02120f 100644
--- a/src/lib/settings/ProjectSettings.cpp
+++ b/src/lib/settings/ProjectSettings.cpp
@@ -46,6 +46,26 @@ void ProjectSettings::save(const FilePath& filePath)
Settings::save(filePath);
}
+std::string ProjectSettings::getLanguage() const
+{
+ return getValue("language_settings/language", "C++");
+}
+
+bool ProjectSettings::setLanguage(const std::string& language)
+{
+ return setValue("language_settings/language", language);
+}
+
+std::string ProjectSettings::getStandard() const
+{
+ return getValue("language_settings/standard", "11");
+}
+
+bool ProjectSettings::setStandard(const std::string& standard)
+{
+ return setValue("language_settings/standard", standard);
+}
+
std::vector ProjectSettings::getSourcePaths() const
{
return getRelativePathValues("source/source_paths/source_path");
diff --git a/src/lib/settings/ProjectSettings.h b/src/lib/settings/ProjectSettings.h
index 5773d75e..4af52e79 100644
--- a/src/lib/settings/ProjectSettings.h
+++ b/src/lib/settings/ProjectSettings.h
@@ -18,6 +18,13 @@ public:
virtual void save(const FilePath& filePath);
+ // language settings
+ std::string getLanguage() const;
+ bool setLanguage(const std::string& language);
+
+ std::string getStandard() const;
+ bool setStandard(const std::string& standard);
+
// source
std::vector getSourcePaths() const;
bool setSourcePaths(const std::vector& sourcePaths);
diff --git a/src/lib_gui/platform_includes/includesWindows.h b/src/lib_gui/platform_includes/includesWindows.h
index 2d1c99be..2772acd7 100644
--- a/src/lib_gui/platform_includes/includesWindows.h
+++ b/src/lib_gui/platform_includes/includesWindows.h
@@ -5,7 +5,7 @@
#include "vld.h"
-//#define DEPLOY
+// #define DEPLOY
#ifdef DEPLOY
static std::string appSettingsPath = std::string(std::getenv("APPDATA")) + "/../local/Coati Software/Coati/ApplicationSettings.xml";
diff --git a/src/lib_gui/qt/window/QtProjectSetupScreen.cpp b/src/lib_gui/qt/window/QtProjectSetupScreen.cpp
index 4b216215..e7bf9369 100644
--- a/src/lib_gui/qt/window/QtProjectSetupScreen.cpp
+++ b/src/lib_gui/qt/window/QtProjectSetupScreen.cpp
@@ -1,6 +1,5 @@
#include "qt/window/QtProjectSetupScreen.h"
-#include
#include
#include
#include
@@ -53,7 +52,6 @@ void QtTextLine::handleButtonPress()
}
}
-
QtProjectSetupScreen::QtProjectSetupScreen(QWidget *parent)
: QtSettingsWindow(parent)
, m_frameworkPaths(nullptr)
@@ -108,6 +106,15 @@ void QtProjectSetupScreen::loadProjectSettings()
m_projectName->setText(QString::fromStdString(projSettings->getFilePath().withoutExtension().fileName()));
m_projectFileLocation->setText(QString::fromStdString(projSettings->getFilePath().parentDirectory().str()));
+ if (projSettings->getLanguage().length() > 0)
+ {
+ m_language->setCurrentText(QString::fromStdString(projSettings->getLanguage()));
+ }
+ if (projSettings->getStandard().length() > 0)
+ {
+ m_cppStandard->setCurrentText(QString::fromStdString(projSettings->getStandard()));
+ }
+
m_sourcePaths->setList(projSettings->getSourcePaths());
m_includePaths->setList(projSettings->getHeaderSearchPaths());
@@ -134,9 +141,16 @@ void QtProjectSetupScreen::populateForm(QFormLayout* layout)
layout->addRow(locationLabel, m_projectFileLocation);
QLabel* languageLabel = new QLabel("Language");
- QComboBox* language = new QComboBox();
- language->insertItem(0, "C++");
- layout->addRow(languageLabel, language);
+ m_language = new QComboBox();
+ m_language->insertItem(0, "C++");
+ m_language->insertItem(1, "C");
+ connect(m_language, SIGNAL(currentIndexChanged(int)), this, SLOT(handleSelectionChanged(int)));
+ layout->addRow(languageLabel, m_language);
+
+ m_standardLabel = new QLabel("Standard");
+ m_cppStandard = new QComboBox();
+ m_cppStandard->insertItem(0, "11");
+ layout->addRow(m_standardLabel, m_cppStandard);
QPushButton* helpButton;
@@ -197,6 +211,11 @@ void QtProjectSetupScreen::handleUpdateButtonPress()
projSettings->clear();
+ projSettings->setLanguage(m_language->currentText().toStdString());
+ if (m_cppStandard->isVisible())
+ {
+ projSettings->setStandard(m_cppStandard->currentText().toStdString());
+ }
projSettings->setSourcePaths(m_sourcePaths->getList());
projSettings->setHeaderSearchPaths(m_includePaths->getList());
@@ -209,6 +228,13 @@ void QtProjectSetupScreen::handleUpdateButtonPress()
m_projectFileLocation->getText().toStdString() + "/" + m_projectName->text().toStdString() + ".coatiproject";
projSettings->save(projectFile);
+ projSettings->setLanguage(m_language->currentText().toStdString());
+
+ if (m_cppStandard->isVisible())
+ {
+ projSettings->setStandard(m_cppStandard->currentText().toStdString());
+ }
+
MessageLoadProject(projectFile).dispatch();
clear();
@@ -245,3 +271,17 @@ void QtProjectSetupScreen::handlePreferencesButtonPress()
{
emit showPreferences();
}
+
+void QtProjectSetupScreen::handleSelectionChanged(int index)
+{
+ if (index != 0)
+ {
+ m_standardLabel->hide();
+ m_cppStandard->hide();
+ }
+ else
+ {
+ m_standardLabel->show();
+ m_cppStandard->show();
+ }
+}
diff --git a/src/lib_gui/qt/window/QtProjectSetupScreen.h b/src/lib_gui/qt/window/QtProjectSetupScreen.h
index e731be6a..90c54f89 100644
--- a/src/lib_gui/qt/window/QtProjectSetupScreen.h
+++ b/src/lib_gui/qt/window/QtProjectSetupScreen.h
@@ -1,6 +1,7 @@
#ifndef QT_PROJECT_SETUP_SCREEN_H
#define QT_PROJECT_SETUP_SCREEN_H
+#include
#include
#include
@@ -56,6 +57,7 @@ protected:
private slots:
void handleCancelButtonPress();
void handleUpdateButtonPress();
+ void handleSelectionChanged(int index);
void handleSourcePathHelpPress();
void handleIncludePathHelpPress();
@@ -72,6 +74,11 @@ private:
QtDirectoryListBox* m_frameworkPaths;
QPushButton* m_preferencesButton;
+
+ QComboBox* m_language;
+ QComboBox* m_cppStandard;
+
+ QLabel* m_standardLabel;
};
#endif //QT_PROJECT_SETUP_SCREEN_H
diff --git a/src/lib_parser/data/parser/cxx/CxxParser.cpp b/src/lib_parser/data/parser/cxx/CxxParser.cpp
index 6bb6678a..e30fad38 100644
--- a/src/lib_parser/data/parser/cxx/CxxParser.cpp
+++ b/src/lib_parser/data/parser/cxx/CxxParser.cpp
@@ -110,9 +110,15 @@ std::vector CxxParser::getCommandlineArguments(const Arguments& arg
// The option '-x c++' treats subsequent input files as C++.
args.push_back("-x");
- args.push_back("c++");
+ std::string language = getLanguageArgument(arguments.language);
+ args.push_back(language);
+ // args.push_back("c++");
- args.push_back("-std=c++11");
+ // TODO: handle other standards...
+ if (language == "c++")
+ {
+ args.push_back("-std=c++11");
+ }
args.insert(args.begin(), arguments.compilerFlags.begin(), arguments.compilerFlags.end());
@@ -196,3 +202,17 @@ ParserClient* CxxParser::getParserClient()
{
return m_client;
}
+
+std::string CxxParser::getLanguageArgument(const std::string& language) const
+{
+ std::string result = language;
+
+ boost::algorithm::to_lower(result);
+
+ if (result != "c++" && result != "c")
+ {
+ result = "c++";
+ }
+
+ return result;
+}
diff --git a/src/lib_parser/data/parser/cxx/CxxParser.h b/src/lib_parser/data/parser/cxx/CxxParser.h
index da789bf2..8c5fbc79 100644
--- a/src/lib_parser/data/parser/cxx/CxxParser.h
+++ b/src/lib_parser/data/parser/cxx/CxxParser.h
@@ -39,6 +39,8 @@ private:
FileRegister* getFileRegister();
ParserClient* getParserClient();
+ std::string getLanguageArgument(const std::string& language) const;
+
friend class TaskParseCxx;
std::shared_ptr m_fileRegister;