diff --git a/bin/app/data/gui/icon/coati.ico b/bin/app/data/gui/icon/coati.ico index 90ce2937..afd304d8 100644 Binary files a/bin/app/data/gui/icon/coati.ico and b/bin/app/data/gui/icon/coati.ico differ diff --git a/bin/test/data/log/test_log.txt b/bin/test/data/log/test_log.txt index 5d8deac4..6fa47543 100644 --- a/bin/test/data/log/test_log.txt +++ b/bin/test/data/log/test_log.txt @@ -1,177 +1,350 @@ +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. 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 @@ -183,7 +356,20 @@ Edge.cpp ERROR: Edge type_of can't go from Node undefined to Node undefined Edge.cpp ERROR: Edge use can't go from Node undefined to Node undefined Edge.cpp ERROR: Edge use can't go from Node undefined to Node undefined Settings.cpp WARNING: File for Settings not found: data/SettingsTestSuite/wrong_settings.xml +ConfigManager.cpp WARNING: value Bool is not present in config. +ConfigManager.cpp WARNING: value Int is not present in config. +ConfigManager.cpp WARNING: value Float is not present in config. +ConfigManager.cpp WARNING: value String is not present in config. Settings.cpp WARNING: File for Settings not found: data/SettingsTestSuite/wrong_settings.xml +ConfigManager.cpp WARNING: value Bool is not present in config. +ConfigManager.cpp WARNING: value Int is not present in config. +ConfigManager.cpp WARNING: value Float is not present in config. +ConfigManager.cpp WARNING: value String is not present in config. +ConfigManager.cpp WARNING: value Bool is not present in config. +ConfigManager.cpp WARNING: value Int is not present in config. +ConfigManager.cpp WARNING: value Float is not present in config. +ConfigManager.cpp WARNING: value String is not present in config. +ConfigManager.cpp WARNING: value NewBool is not present in config. Storage.cpp INFO: file: file.cpp < 0:0 0:0> TextAccess.cpp ERROR: Could not open file file.cpp Storage.cpp INFO: typedef: type -> int diff --git a/deployment/windows/CoatiSetup/CoatiSetup/CoatiSetup.vdproj b/deployment/windows/CoatiSetup/CoatiSetup/CoatiSetup.vdproj index ec229aa2..7a8d795d 100644 --- a/deployment/windows/CoatiSetup/CoatiSetup/CoatiSetup.vdproj +++ b/deployment/windows/CoatiSetup/CoatiSetup/CoatiSetup.vdproj @@ -39,6 +39,12 @@ } "Entry" { + "MsmKey" = "8:_0BD1A36560F540F2AFAC7B3A755E3124" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { "MsmKey" = "8:_0C6F8E3E9815483DB9B9525A5CB12BC7" "OwnerKey" = "8:_UNDEFINED" "MsmSig" = "8:_UNDEFINED" @@ -135,12 +141,6 @@ } "Entry" { - "MsmKey" = "8:_351F2705D87E4A5AB62BC138ECC736E7" - "OwnerKey" = "8:_UNDEFINED" - "MsmSig" = "8:_UNDEFINED" - } - "Entry" - { "MsmKey" = "8:_357C43F6138D4C2D89C5305E7A239970" "OwnerKey" = "8:_UNDEFINED" "MsmSig" = "8:_UNDEFINED" @@ -231,6 +231,12 @@ } "Entry" { + "MsmKey" = "8:_555B5450A99E4439956DCFD12930DFBF" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { "MsmKey" = "8:_5789409592134E888A27F1B86B9E4232" "OwnerKey" = "8:_UNDEFINED" "MsmSig" = "8:_UNDEFINED" @@ -333,12 +339,6 @@ } "Entry" { - "MsmKey" = "8:_7564D8D0A4CC4B378B49F1DCBF78ACFB" - "OwnerKey" = "8:_UNDEFINED" - "MsmSig" = "8:_UNDEFINED" - } - "Entry" - { "MsmKey" = "8:_75DEFB04EB20414488CA26910F7B814D" "OwnerKey" = "8:_UNDEFINED" "MsmSig" = "8:_UNDEFINED" @@ -513,12 +513,6 @@ } "Entry" { - "MsmKey" = "8:_C12AAE9E2B354DCD87180B81C0515512" - "OwnerKey" = "8:_UNDEFINED" - "MsmSig" = "8:_UNDEFINED" - } - "Entry" - { "MsmKey" = "8:_C16E8A2CCAC741908C60E95C5D0E4866" "OwnerKey" = "8:_UNDEFINED" "MsmSig" = "8:_UNDEFINED" @@ -646,12 +640,6 @@ "Entry" { "MsmKey" = "8:_UNDEFINED" - "OwnerKey" = "8:_7564D8D0A4CC4B378B49F1DCBF78ACFB" - "MsmSig" = "8:_UNDEFINED" - } - "Entry" - { - "MsmKey" = "8:_UNDEFINED" "OwnerKey" = "8:_FB29EAD658C3497D9AC46ADE92D33C83" "MsmSig" = "8:_UNDEFINED" } @@ -753,20 +741,6 @@ { "CustomAction" { - "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_0B7392AFE5E4499F88AAA0B860A56C0A" - { - "Name" = "8:Primary output from SetupCreateStartMenuShortcutLib (Active)" - "Condition" = "8:" - "Object" = "8:_7564D8D0A4CC4B378B49F1DCBF78ACFB" - "FileType" = "3:1" - "InstallAction" = "3:1" - "Arguments" = "8:" - "EntryPoint" = "8:" - "Sequence" = "3:3" - "Identifier" = "8:_4122E44E_006C_4364_83D1_B71E2CE35502" - "InstallerClass" = "11:TRUE" - "CustomActionData" = "8:" - } "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_1C7BFD7F75904F828709F1BD762F4C7B" { "Name" = "8:Primary output from SetupRemoveCacheFiles (Active)" @@ -809,20 +783,6 @@ "InstallerClass" = "11:TRUE" "CustomActionData" = "8:" } - "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_400E522BB88046CDBAD0E16CCA411908" - { - "Name" = "8:Primary output from SetupCreateStartMenuShortcutLib (Active)" - "Condition" = "8:" - "Object" = "8:_7564D8D0A4CC4B378B49F1DCBF78ACFB" - "FileType" = "3:1" - "InstallAction" = "3:2" - "Arguments" = "8:" - "EntryPoint" = "8:" - "Sequence" = "3:3" - "Identifier" = "8:_D66DBD31_D6EF_42EA_8EF8_7E54FA970E9C" - "InstallerClass" = "11:TRUE" - "CustomActionData" = "8:" - } "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_463FBB946E6F4CF290A4B7E51ED398E5" { "Name" = "8:Primary output from SetupCreateDesktopShortcutLib (Active)" @@ -865,20 +825,6 @@ "InstallerClass" = "11:TRUE" "CustomActionData" = "8:" } - "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_941C3D250E4842B5AAE31BB5DCFC62A5" - { - "Name" = "8:Primary output from SetupCreateStartMenuShortcutLib (Active)" - "Condition" = "8:" - "Object" = "8:_7564D8D0A4CC4B378B49F1DCBF78ACFB" - "FileType" = "3:1" - "InstallAction" = "3:3" - "Arguments" = "8:" - "EntryPoint" = "8:" - "Sequence" = "3:4" - "Identifier" = "8:_E705159B_3909_494B_8A0D_CB88823DB4D6" - "InstallerClass" = "11:TRUE" - "CustomActionData" = "8:" - } "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_B1A592F73CCB404297211C5D3D86AB5F" { "Name" = "8:Primary output from SetupApplicationSettingsLib (Active)" @@ -907,20 +853,6 @@ "InstallerClass" = "11:TRUE" "CustomActionData" = "8:" } - "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_C5C129627560407AA9B5F55EB20F5621" - { - "Name" = "8:Primary output from SetupCreateStartMenuShortcutLib (Active)" - "Condition" = "8:" - "Object" = "8:_7564D8D0A4CC4B378B49F1DCBF78ACFB" - "FileType" = "3:1" - "InstallAction" = "3:4" - "Arguments" = "8:" - "EntryPoint" = "8:" - "Sequence" = "3:4" - "Identifier" = "8:_EEEA428E_A836_4773_8F9E_419A17879D01" - "InstallerClass" = "11:TRUE" - "CustomActionData" = "8:" - } "{4AA51A2D-7D85-4A59-BA75-B0809FC8B380}:_C8D0F5D371844855A3F74383818871DF" { "Name" = "8:Primary output from SetupApplicationSettingsLib (Active)" @@ -1052,6 +984,26 @@ "IsDependency" = "11:FALSE" "IsolateTo" = "8:" } + "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_0BD1A36560F540F2AFAC7B3A755E3124" + { + "SourcePath" = "8:..\\..\\..\\..\\bin\\app\\Coati.exe" + "TargetName" = "8:Coati.exe" + "Tag" = "8:" + "Folder" = "8:_972788CBF3404779967EA0B73B72BF18" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + } "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_0C6F8E3E9815483DB9B9525A5CB12BC7" { "SourcePath" = "8:..\\..\\..\\..\\bin\\app\\Release\\Qt5Network.dll" @@ -1352,26 +1304,6 @@ "IsDependency" = "11:FALSE" "IsolateTo" = "8:" } - "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_351F2705D87E4A5AB62BC138ECC736E7" - { - "SourcePath" = "8:..\\..\\..\\..\\bin\\app\\Release\\Coati.exe" - "TargetName" = "8:Coati.exe" - "Tag" = "8:" - "Folder" = "8:_972788CBF3404779967EA0B73B72BF18" - "Condition" = "8:" - "Transitive" = "11:FALSE" - "Vital" = "11:TRUE" - "ReadOnly" = "11:FALSE" - "Hidden" = "11:FALSE" - "System" = "11:FALSE" - "Permanent" = "11:FALSE" - "SharedLegacy" = "11:FALSE" - "PackageAs" = "3:1" - "Register" = "3:1" - "Exclude" = "11:FALSE" - "IsDependency" = "11:FALSE" - "IsolateTo" = "8:" - } "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_357C43F6138D4C2D89C5305E7A239970" { "SourcePath" = "8:..\\..\\..\\..\\bin\\app\\data\\gui\\setting_window\\window.css" @@ -1672,6 +1604,26 @@ "IsDependency" = "11:FALSE" "IsolateTo" = "8:" } + "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_555B5450A99E4439956DCFD12930DFBF" + { + "SourcePath" = "8:..\\..\\..\\..\\bin\\app\\data\\gui\\installer\\logo_1024_1024.png" + "TargetName" = "8:logo_1024_1024.png" + "Tag" = "8:" + "Folder" = "8:_E1DFE5A1D9EB4CF1B984E8D037C05C7C" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + } "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_5789409592134E888A27F1B86B9E4232" { "SourcePath" = "8:..\\..\\..\\..\\bin\\app\\data\\projects\\tutorial\\src\\graph_tutorial_4.h" @@ -2592,26 +2544,6 @@ "IsDependency" = "11:FALSE" "IsolateTo" = "8:" } - "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_C12AAE9E2B354DCD87180B81C0515512" - { - "SourcePath" = "8:..\\..\\..\\..\\bin\\app\\data\\gui\\installer\\logo_1024_1024.png" - "TargetName" = "8:logo_1024_1024.png" - "Tag" = "8:" - "Folder" = "8:_E1DFE5A1D9EB4CF1B984E8D037C05C7C" - "Condition" = "8:" - "Transitive" = "11:FALSE" - "Vital" = "11:TRUE" - "ReadOnly" = "11:FALSE" - "Hidden" = "11:FALSE" - "System" = "11:FALSE" - "Permanent" = "11:FALSE" - "SharedLegacy" = "11:FALSE" - "PackageAs" = "3:1" - "Register" = "3:1" - "Exclude" = "11:FALSE" - "IsDependency" = "11:FALSE" - "IsolateTo" = "8:" - } "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_C16E8A2CCAC741908C60E95C5D0E4866" { "SourcePath" = "8:..\\..\\..\\..\\bin\\app\\data\\color_schemes\\bright.xml" @@ -3327,7 +3259,7 @@ "Name" = "8:Microsoft Visual Studio" "ProductName" = "8:Coati" "ProductCode" = "8:{2A3B2FF5-A114-4CAB-88FB-DE8942D5B8EB}" - "PackageCode" = "8:{0439DF0E-299D-4107-8052-74A99FBAA970}" + "PackageCode" = "8:{08D7C8AB-362B-4BBA-A1A3-992D5BBB3F0E}" "UpgradeCode" = "8:{CFF09D53-87AF-4241-960D-98C21ED9D358}" "AspNetVersion" = "8:4.0.30319.0" "RestartWWWService" = "11:FALSE" @@ -3517,6 +3449,34 @@ } "Shortcut" { + "{970C0BB2-C7D0-45D7-ABFA-7EC378858BC0}:_218124B75F404213855F638598E000A0" + { + "Name" = "8:Uninstall Coati" + "Arguments" = "8:" + "Description" = "8:" + "ShowCmd" = "3:1" + "IconIndex" = "3:0" + "Transitive" = "11:FALSE" + "Target" = "8:_321D6469331341CC94DB61F825F7C38D" + "Folder" = "8:_9537058B4FC1411F8480A52A91F7AB5C" + "WorkingFolder" = "8:_A96454F2CE0E4C55B59EDE1094D40E56" + "Icon" = "8:" + "Feature" = "8:" + } + "{970C0BB2-C7D0-45D7-ABFA-7EC378858BC0}:_5EEE826460D748F98304CF1E4BAF5D35" + { + "Name" = "8:Coati" + "Arguments" = "8:" + "Description" = "8:" + "ShowCmd" = "3:1" + "IconIndex" = "3:0" + "Transitive" = "11:FALSE" + "Target" = "8:_0BD1A36560F540F2AFAC7B3A755E3124" + "Folder" = "8:_9537058B4FC1411F8480A52A91F7AB5C" + "WorkingFolder" = "8:_972788CBF3404779967EA0B73B72BF18" + "Icon" = "8:_096D033F5DF740A6B6B190652E5276AF" + "Feature" = "8:" + } } "UserInterface" { @@ -4281,7 +4241,7 @@ { "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_3460FAB707F8431E87168499A7F51556" { - "SourcePath" = "8:..\\SetupApplicationSettingsLib\\obj\\Release\\SetupApplicationSettingsLib.dll" + "SourcePath" = "8:..\\SetupApplicationSettingsLib\\obj\\Debug\\SetupApplicationSettingsLib.dll" "TargetName" = "8:" "Tag" = "8:" "Folder" = "8:_A96454F2CE0E4C55B59EDE1094D40E56" @@ -4307,37 +4267,9 @@ { } } - "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_7564D8D0A4CC4B378B49F1DCBF78ACFB" - { - "SourcePath" = "8:..\\SetupCreateStartMenuShortcutLib\\obj\\Release\\SetupCreateStartMenuShortcutLib.dll" - "TargetName" = "8:" - "Tag" = "8:" - "Folder" = "8:_A96454F2CE0E4C55B59EDE1094D40E56" - "Condition" = "8:" - "Transitive" = "11:FALSE" - "Vital" = "11:TRUE" - "ReadOnly" = "11:FALSE" - "Hidden" = "11:FALSE" - "System" = "11:FALSE" - "Permanent" = "11:FALSE" - "SharedLegacy" = "11:FALSE" - "PackageAs" = "3:1" - "Register" = "3:1" - "Exclude" = "11:FALSE" - "IsDependency" = "11:FALSE" - "IsolateTo" = "8:" - "ProjectOutputGroupRegister" = "3:1" - "OutputConfiguration" = "8:" - "OutputGroupCanonicalName" = "8:Built" - "OutputProjectGuid" = "8:{962F7DA5-AEA1-4D03-89FD-F9AC42C24E46}" - "ShowKeyOutput" = "11:TRUE" - "ExcludeFilters" - { - } - } "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_F81B906E39E44A5DAC37B3D70BC8A8CE" { - "SourcePath" = "8:..\\SetupCreateDesktopShortcutLib\\obj\\Release\\SetupCreateDesktopShortcutLib.dll" + "SourcePath" = "8:..\\SetupCreateDesktopShortcutLib\\obj\\Debug\\SetupCreateDesktopShortcutLib.dll" "TargetName" = "8:" "Tag" = "8:" "Folder" = "8:_A96454F2CE0E4C55B59EDE1094D40E56" @@ -4365,7 +4297,7 @@ } "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_FB29EAD658C3497D9AC46ADE92D33C83" { - "SourcePath" = "8:..\\SetupRemoveCacheFiles\\obj\\Release\\SetupRemoveCacheFiles.dll" + "SourcePath" = "8:..\\SetupRemoveCacheFiles\\obj\\Debug\\SetupRemoveCacheFiles.dll" "TargetName" = "8:" "Tag" = "8:" "Folder" = "8:_A96454F2CE0E4C55B59EDE1094D40E56" diff --git a/src/lib/CMakeLists.txt b/src/lib/CMakeLists.txt index c10b69d5..ad21fe62 100644 --- a/src/lib/CMakeLists.txt +++ b/src/lib/CMakeLists.txt @@ -231,6 +231,7 @@ add_files( utility/messaging/type/MessageMoveIDECursor.h utility/messaging/type/MessageRedo.h utility/messaging/type/MessageRefresh.h + utility/messaging/type/MessageResetZoom.h utility/messaging/type/MessageSaveProject.h utility/messaging/type/MessageSearch.h utility/messaging/type/MessageSearchAutocomplete.h diff --git a/src/lib/component/controller/FeatureController.cpp b/src/lib/component/controller/FeatureController.cpp index 1f13f12b..f103e355 100644 --- a/src/lib/component/controller/FeatureController.cpp +++ b/src/lib/component/controller/FeatureController.cpp @@ -5,6 +5,7 @@ #include "utility/messaging/type/MessageActivateTokens.h" #include "utility/messaging/type/MessageRefresh.h" +#include "utility/messaging/type/MessageStatus.h" FeatureController::FeatureController(StorageAccess* storageAccess) : m_storageAccess(storageAccess) @@ -69,6 +70,21 @@ void FeatureController::handleMessage(MessageActivateTokenLocations* message) m.dispatchImmediately(); } +void FeatureController::handleMessage(MessageResetZoom* message) +{ + ApplicationSettings* settings = ApplicationSettings::getInstance().get(); + + if (settings->getFontSize() != 12) + { + settings->setFontSize(12); + settings->save(); + + MessageRefresh().refreshUiOnly().dispatch(); + } + + MessageStatus("Zoom: 100%").dispatch(); +} + void FeatureController::handleMessage(MessageSwitchColorScheme* message) { ApplicationSettings* settings = ApplicationSettings::getInstance().get(); @@ -84,6 +100,15 @@ void FeatureController::handleMessage(MessageZoom* message) settings->setFontSize(std::max(settings->getFontSize() + (message->zoomIn ? 1 : -1), 5)); settings->save(); + int fontSize = settings->getFontSize(); + int standardSize = 12; + + int zoom = (fontSize * 100) / standardSize; + + std::stringstream text; + text << "Zoom: " << zoom << "%"; + MessageStatus(text.str()).dispatch(); + MessageRefresh().refreshUiOnly().dispatch(); } diff --git a/src/lib/component/controller/FeatureController.h b/src/lib/component/controller/FeatureController.h index 40275254..e07024aa 100644 --- a/src/lib/component/controller/FeatureController.h +++ b/src/lib/component/controller/FeatureController.h @@ -11,6 +11,7 @@ #include "utility/messaging/type/MessageActivateFile.h" #include "utility/messaging/type/MessageActivateNodes.h" #include "utility/messaging/type/MessageActivateTokenLocations.h" +#include "utility/messaging/type/MessageResetZoom.h" #include "utility/messaging/type/MessageSearch.h" #include "utility/messaging/type/MessageSwitchColorScheme.h" #include "utility/messaging/type/MessageZoom.h" @@ -23,6 +24,7 @@ class FeatureController , public MessageListener , public MessageListener , public MessageListener + , public MessageListener , public MessageListener , public MessageListener , public MessageListener @@ -37,6 +39,7 @@ private: virtual void handleMessage(MessageActivateNodes* message); virtual void handleMessage(MessageSearch* message); virtual void handleMessage(MessageActivateTokenLocations* message); + virtual void handleMessage(MessageResetZoom* message); virtual void handleMessage(MessageSwitchColorScheme* message); virtual void handleMessage(MessageZoom* message); diff --git a/src/lib/utility/messaging/type/MessageResetZoom.h b/src/lib/utility/messaging/type/MessageResetZoom.h new file mode 100644 index 00000000..82ca829e --- /dev/null +++ b/src/lib/utility/messaging/type/MessageResetZoom.h @@ -0,0 +1,20 @@ +#ifndef MESSAGE_RESET_ZOOM_H +#define MESSAGE_RESET_ZOOM_H + +#include "utility/messaging/Message.h" + +class MessageResetZoom + : public Message +{ +public: + MessageResetZoom() + { + } + + static const std::string getStaticType() + { + return "MessageResetZoom"; + } +}; + +#endif // MESSAGE_RESET_ZOOM_H \ No newline at end of file diff --git a/src/lib_gui/qt/view/graphElements/QtGraphNodeExpandToggle.cpp b/src/lib_gui/qt/view/graphElements/QtGraphNodeExpandToggle.cpp index 85ccb5fc..2d697424 100644 --- a/src/lib_gui/qt/view/graphElements/QtGraphNodeExpandToggle.cpp +++ b/src/lib_gui/qt/view/graphElements/QtGraphNodeExpandToggle.cpp @@ -10,6 +10,8 @@ #include "qt/utility/utilityQt.h" #include "qt/view/graphElements/QtGraphNodeData.h" +#include + QtGraphNodeExpandToggle::QtGraphNodeExpandToggle(bool expanded, int invisibleSubNodeCount) : m_invisibleSubNodeCount(invisibleSubNodeCount) , m_expanded(expanded) @@ -63,10 +65,17 @@ void QtGraphNodeExpandToggle::updateStyle() GraphViewStyle::NodeStyle style = GraphViewStyle::getStyleOfExpandToggleNode(); setStyle(style); - m_text->setPos( - (m_rect->rect().width() - QFontMetrics(m_text->font()).width(m_text->text())) / 2, - 6 - ); + float textX = (m_rect->rect().width() / 2) - (QFontMetrics(m_text->font()).width(m_text->text()) / 2); + float textY = m_rect->rect().height() / 2 - QFontMetrics(m_text->font()).height() / 1.8f; + + // move the text to the nearest integer x pos, instead of the next lower int pos + // improves results on windows systems + if (textX - (float)((int)textX) >= 0.5f) + { + textX += 0.5f; + } + + m_text->setPos(textX, textY); m_icon->setPos( (m_rect->rect().width() - m_icon->pixmap().width() / QtDeviceScaledPixmap::devicePixelRatio()) / 2, diff --git a/src/lib_gui/qt/window/QtMainWindow.cpp b/src/lib_gui/qt/window/QtMainWindow.cpp index 1d1a2f89..d810e74b 100644 --- a/src/lib_gui/qt/window/QtMainWindow.cpp +++ b/src/lib_gui/qt/window/QtMainWindow.cpp @@ -20,6 +20,7 @@ #include "utility/messaging/type/MessageLoadProject.h" #include "utility/messaging/type/MessageRedo.h" #include "utility/messaging/type/MessageRefresh.h" +#include "utility/messaging/type/MessageResetZoom.h" #include "utility/messaging/type/MessageSaveProject.h" #include "utility/messaging/type/MessageSwitchColorScheme.h" #include "utility/messaging/type/MessageUndo.h" @@ -52,9 +53,6 @@ MouseReleaseFilter::MouseReleaseFilter(QObject* parent) { m_backButton = ApplicationSettings::getInstance()->getControlsMouseBackButton(); m_forwardButton = ApplicationSettings::getInstance()->getControlsMouseForwardButton(); - - std::cout << m_backButton << std::endl; - std::cout << m_forwardButton << std::endl; } bool MouseReleaseFilter::eventFilter(QObject* obj, QEvent* event) @@ -63,6 +61,8 @@ bool MouseReleaseFilter::eventFilter(QObject* obj, QEvent* event) { QMouseEvent* mouseEvent = dynamic_cast(event); + + if (mouseEvent->button() == m_backButton) { MessageUndo().dispatch(); @@ -78,6 +78,33 @@ bool MouseReleaseFilter::eventFilter(QObject* obj, QEvent* event) return QObject::eventFilter(obj, event); } +MouseWheelFilter::MouseWheelFilter(QObject* parent) + : QObject(parent) +{ + +} + +bool MouseWheelFilter::eventFilter(QObject* obj, QEvent* event) +{ + if (event->type() == QEvent::Wheel && QApplication::keyboardModifiers() == Qt::ControlModifier) + { + QWheelEvent* wheelEvent = dynamic_cast(event); + + if (wheelEvent->delta() > 0.0f) + { + MessageZoom(true).dispatch(); + return true; + } + else if (wheelEvent->delta() < 0.0f) + { + MessageZoom(false).dispatch(); + return true; + } + } + + return QObject::eventFilter(obj, event); +} + QtMainWindow::QtMainWindow() : m_showDockWidgetTitleBars(true) { @@ -92,6 +119,7 @@ QtMainWindow::QtMainWindow() QApplication* app = dynamic_cast(QCoreApplication::instance()); app->installEventFilter(new MouseReleaseFilter(this)); + app->installEventFilter(new MouseWheelFilter(this)); app->setStyleSheet(utility::getStyleSheet("data/gui/tooltip.css").c_str()); @@ -427,6 +455,11 @@ void QtMainWindow::zoomOut() MessageZoom(false).dispatch(); } +void QtMainWindow::resetZoom() +{ + MessageResetZoom().dispatch(); +} + void QtMainWindow::switchColorScheme() { QString fileName = QFileDialog::getOpenFileName(this, tr("Open File"), "./data/color_schemes", "XML Files (*.xml)"); @@ -576,6 +609,7 @@ void QtMainWindow::setupViewMenu() menu->addAction(tr("Larger font"), this, SLOT(zoomIn()), QKeySequence::ZoomIn); menu->addAction(tr("Smaller font"), this, SLOT(zoomOut()), QKeySequence::ZoomOut); + menu->addAction(tr("Reset font size"), this, SLOT(resetZoom())); menu->addAction(tr("Switch Color Scheme..."), this, SLOT(switchColorScheme())); diff --git a/src/lib_gui/qt/window/QtMainWindow.h b/src/lib_gui/qt/window/QtMainWindow.h index 7e8fdf41..18ecc3a1 100644 --- a/src/lib_gui/qt/window/QtMainWindow.h +++ b/src/lib_gui/qt/window/QtMainWindow.h @@ -50,6 +50,17 @@ private: size_t m_forwardButton; }; +class MouseWheelFilter + : public QObject +{ + Q_OBJECT + +public: + MouseWheelFilter(QObject* parent); + +protected: + bool eventFilter(QObject* obj, QEvent* event); +}; class QtMainWindow : public QMainWindow @@ -103,6 +114,7 @@ public slots: void redo(); void zoomIn(); void zoomOut(); + void resetZoom(); void switchColorScheme(); void toggleView(View* view, bool fromMenu);