diff --git a/YAZE.sln b/YAZE.sln
new file mode 100644
index 00000000..58dc8bd1
--- /dev/null
+++ b/YAZE.sln
@@ -0,0 +1,92 @@
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.0.31903.59
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "YAZE", "YAZE.vcxproj", "{A1B2C3D4-E5F6-7890-ABCD-EF1234567890}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "yaze_test", "test\yaze_test.vcxproj", "{B2C3D4E5-F6G7-8901-BCDE-F23456789012}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "yaze_core", "yaze_core.vcxproj", "{C3D4E5F6-G7H8-9012-CDEF-345678901234}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "yaze_c", "yaze_c.vcxproj", "{D4E5F6G7-H8I9-0123-DEF0-456789012345}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "z3ed", "cli\z3ed.vcxproj", "{E5F6G7H8-I9J0-1234-EF01-567890123456}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|x64 = Debug|x64
+ Release|x64 = Release|x64
+ Debug|x86 = Debug|x86
+ Release|x86 = Release|x86
+ Debug|ARM64 = Debug|ARM64
+ Release|ARM64 = Release|ARM64
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {A1B2C3D4-E5F6-7890-ABCD-EF1234567890}.Debug|x64.ActiveCfg = Debug|x64
+ {A1B2C3D4-E5F6-7890-ABCD-EF1234567890}.Debug|x64.Build.0 = Debug|x64
+ {A1B2C3D4-E5F6-7890-ABCD-EF1234567890}.Release|x64.ActiveCfg = Release|x64
+ {A1B2C3D4-E5F6-7890-ABCD-EF1234567890}.Release|x64.Build.0 = Release|x64
+ {A1B2C3D4-E5F6-7890-ABCD-EF1234567890}.Debug|x86.ActiveCfg = Debug|Win32
+ {A1B2C3D4-E5F6-7890-ABCD-EF1234567890}.Debug|x86.Build.0 = Debug|Win32
+ {A1B2C3D4-E5F6-7890-ABCD-EF1234567890}.Release|x86.ActiveCfg = Release|Win32
+ {A1B2C3D4-E5F6-7890-ABCD-EF1234567890}.Release|x86.Build.0 = Release|Win32
+ {A1B2C3D4-E5F6-7890-ABCD-EF1234567890}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {A1B2C3D4-E5F6-7890-ABCD-EF1234567890}.Debug|ARM64.Build.0 = Debug|ARM64
+ {A1B2C3D4-E5F6-7890-ABCD-EF1234567890}.Release|ARM64.ActiveCfg = Release|ARM64
+ {A1B2C3D4-E5F6-7890-ABCD-EF1234567890}.Release|ARM64.Build.0 = Release|ARM64
+ {B2C3D4E5-F6G7-8901-BCDE-F23456789012}.Debug|x64.ActiveCfg = Debug|x64
+ {B2C3D4E5-F6G7-8901-BCDE-F23456789012}.Debug|x64.Build.0 = Debug|x64
+ {B2C3D4E5-F6G7-8901-BCDE-F23456789012}.Release|x64.ActiveCfg = Release|x64
+ {B2C3D4E5-F6G7-8901-BCDE-F23456789012}.Release|x64.Build.0 = Release|x64
+ {B2C3D4E5-F6G7-8901-BCDE-F23456789012}.Debug|x86.ActiveCfg = Debug|Win32
+ {B2C3D4E5-F6G7-8901-BCDE-F23456789012}.Debug|x86.Build.0 = Debug|Win32
+ {B2C3D4E5-F6G7-8901-BCDE-F23456789012}.Release|x86.ActiveCfg = Release|Win32
+ {B2C3D4E5-F6G7-8901-BCDE-F23456789012}.Release|x86.Build.0 = Release|Win32
+ {B2C3D4E5-F6G7-8901-BCDE-F23456789012}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {B2C3D4E5-F6G7-8901-BCDE-F23456789012}.Debug|ARM64.Build.0 = Debug|ARM64
+ {B2C3D4E5-F6G7-8901-BCDE-F23456789012}.Release|ARM64.ActiveCfg = Release|ARM64
+ {B2C3D4E5-F6G7-8901-BCDE-F23456789012}.Release|ARM64.Build.0 = Release|ARM64
+ {C3D4E5F6-G7H8-9012-CDEF-345678901234}.Debug|x64.ActiveCfg = Debug|x64
+ {C3D4E5F6-G7H8-9012-CDEF-345678901234}.Debug|x64.Build.0 = Debug|x64
+ {C3D4E5F6-G7H8-9012-CDEF-345678901234}.Release|x64.ActiveCfg = Release|x64
+ {C3D4E5F6-G7H8-9012-CDEF-345678901234}.Release|x64.Build.0 = Release|x64
+ {C3D4E5F6-G7H8-9012-CDEF-345678901234}.Debug|x86.ActiveCfg = Debug|Win32
+ {C3D4E5F6-G7H8-9012-CDEF-345678901234}.Debug|x86.Build.0 = Debug|Win32
+ {C3D4E5F6-G7H8-9012-CDEF-345678901234}.Release|x86.ActiveCfg = Release|Win32
+ {C3D4E5F6-G7H8-9012-CDEF-345678901234}.Release|x86.Build.0 = Release|Win32
+ {C3D4E5F6-G7H8-9012-CDEF-345678901234}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {C3D4E5F6-G7H8-9012-CDEF-345678901234}.Debug|ARM64.Build.0 = Debug|ARM64
+ {C3D4E5F6-G7H8-9012-CDEF-345678901234}.Release|ARM64.ActiveCfg = Release|ARM64
+ {C3D4E5F6-G7H8-9012-CDEF-345678901234}.Release|ARM64.Build.0 = Release|ARM64
+ {D4E5F6G7-H8I9-0123-DEF0-456789012345}.Debug|x64.ActiveCfg = Debug|x64
+ {D4E5F6G7-H8I9-0123-DEF0-456789012345}.Debug|x64.Build.0 = Debug|x64
+ {D4E5F6G7-H8I9-0123-DEF0-456789012345}.Release|x64.ActiveCfg = Release|x64
+ {D4E5F6G7-H8I9-0123-DEF0-456789012345}.Release|x64.Build.0 = Release|x64
+ {D4E5F6G7-H8I9-0123-DEF0-456789012345}.Debug|x86.ActiveCfg = Debug|Win32
+ {D4E5F6G7-H8I9-0123-DEF0-456789012345}.Debug|x86.Build.0 = Debug|Win32
+ {D4E5F6G7-H8I9-0123-DEF0-456789012345}.Release|x86.ActiveCfg = Release|Win32
+ {D4E5F6G7-H8I9-0123-DEF0-456789012345}.Release|x86.Build.0 = Release|Win32
+ {D4E5F6G7-H8I9-0123-DEF0-456789012345}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {D4E5F6G7-H8I9-0123-DEF0-456789012345}.Debug|ARM64.Build.0 = Debug|ARM64
+ {D4E5F6G7-H8I9-0123-DEF0-456789012345}.Release|ARM64.ActiveCfg = Release|ARM64
+ {D4E5F6G7-H8I9-0123-DEF0-456789012345}.Release|ARM64.Build.0 = Release|ARM64
+ {E5F6G7H8-I9J0-1234-EF01-567890123456}.Debug|x64.ActiveCfg = Debug|x64
+ {E5F6G7H8-I9J0-1234-EF01-567890123456}.Debug|x64.Build.0 = Debug|x64
+ {E5F6G7H8-I9J0-1234-EF01-567890123456}.Release|x64.ActiveCfg = Release|x64
+ {E5F6G7H8-I9J0-1234-EF01-567890123456}.Release|x64.Build.0 = Release|x64
+ {E5F6G7H8-I9J0-1234-EF01-567890123456}.Debug|x86.ActiveCfg = Debug|Win32
+ {E5F6G7H8-I9J0-1234-EF01-567890123456}.Debug|x86.Build.0 = Debug|Win32
+ {E5F6G7H8-I9J0-1234-EF01-567890123456}.Release|x86.ActiveCfg = Release|Win32
+ {E5F6G7H8-I9J0-1234-EF01-567890123456}.Release|x86.Build.0 = Release|Win32
+ {E5F6G7H8-I9J0-1234-EF01-567890123456}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {E5F6G7H8-I9J0-1234-EF01-567890123456}.Debug|ARM64.Build.0 = Debug|ARM64
+ {E5F6G7H8-I9J0-1234-EF01-567890123456}.Release|ARM64.ActiveCfg = Release|ARM64
+ {E5F6G7H8-I9J0-1234-EF01-567890123456}.Release|ARM64.Build.0 = Release|ARM64
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {F6G7H8I9-J0K1-2345-F012-678901234567}
+ EndGlobalSection
+EndGlobal
diff --git a/YAZE.vcxproj b/YAZE.vcxproj
new file mode 100644
index 00000000..003a895e
--- /dev/null
+++ b/YAZE.vcxproj
@@ -0,0 +1,374 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Release
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+ Debug
+ ARM64
+
+
+ Release
+ ARM64
+
+
+
+ 17.0
+ Win32Proj
+ {A1B2C3D4-E5F6-7890-ABCD-EF1234567890}
+ YAZE
+ 10.0
+
+
+
+ Application
+ true
+ v143
+ Unicode
+
+
+ Application
+ false
+ v143
+ true
+ Unicode
+
+
+ Application
+ true
+ v143
+ Unicode
+
+
+ Application
+ false
+ v143
+ true
+ Unicode
+
+
+ Application
+ true
+ v143
+ Unicode
+
+
+ Application
+ false
+ v143
+ true
+ Unicode
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+ $(SolutionDir)build\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)build\obj\$(Platform)\$(Configuration)\
+
+
+ false
+ $(SolutionDir)build\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)build\obj\$(Platform)\$(Configuration)\
+
+
+ true
+ $(SolutionDir)build\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)build\obj\$(Platform)\$(Configuration)\
+
+
+ false
+ $(SolutionDir)build\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)build\obj\$(Platform)\$(Configuration)\
+
+
+ true
+ $(SolutionDir)build\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)build\obj\$(Platform)\$(Configuration)\
+
+
+ false
+ $(SolutionDir)build\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)build\obj\$(Platform)\$(Configuration)\
+
+
+
+ Level3
+ true
+ WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ true
+ stdcpp23
+ src\lib;src\app;src\lib\asar\src;src\lib\asar\src\asar;src\lib\asar\src\asar-dll-bindings\c;incl;src;src\lib\imgui;src\lib\imgui_test_engine;%(AdditionalIncludeDirectories)
+
+
+ Console
+ true
+ SDL2.lib;SDL2main.lib;absl_base.lib;absl_strings.lib;%(AdditionalDependencies)
+
+
+
+
+ Level3
+ true
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ true
+ stdcpp23
+ src\lib;src\app;src\lib\asar\src;src\lib\asar\src\asar;src\lib\asar\src\asar-dll-bindings\c;incl;src;src\lib\imgui;src\lib\imgui_test_engine;%(AdditionalIncludeDirectories)
+
+
+ Console
+ true
+ true
+ true
+ SDL2.lib;SDL2main.lib;absl_base.lib;absl_strings.lib;%(AdditionalDependencies)
+
+
+
+
+ Level3
+ true
+ _DEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ true
+ stdcpp23
+ src\lib;src\app;src\lib\asar\src;src\lib\asar\src\asar;src\lib\asar\src\asar-dll-bindings\c;incl;src;src\lib\imgui;src\lib\imgui_test_engine;%(AdditionalIncludeDirectories)
+
+
+ Console
+ true
+ SDL2.lib;SDL2main.lib;absl_base.lib;absl_strings.lib;%(AdditionalDependencies)
+
+
+
+
+ Level3
+ true
+ true
+ true
+ NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ true
+ stdcpp23
+ src\lib;src\app;src\lib\asar\src;src\lib\asar\src\asar;src\lib\asar\src\asar-dll-bindings\c;incl;src;src\lib\imgui;src\lib\imgui_test_engine;%(AdditionalIncludeDirectories)
+
+
+ Console
+ true
+ true
+ true
+ SDL2.lib;SDL2main.lib;absl_base.lib;absl_strings.lib;%(AdditionalDependencies)
+
+
+
+
+ Level3
+ true
+ _DEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ true
+ stdcpp23
+ src\lib;src\app;src\lib\asar\src;src\lib\asar\src\asar;src\lib\asar\src\asar-dll-bindings\c;incl;src;src\lib\imgui;src\lib\imgui_test_engine;%(AdditionalIncludeDirectories)
+
+
+ Console
+ true
+ SDL2.lib;SDL2main.lib;absl_base.lib;absl_strings.lib;%(AdditionalDependencies)
+
+
+
+
+ Level3
+ true
+ true
+ true
+ NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ true
+ stdcpp23
+ src\lib;src\app;src\lib\asar\src;src\lib\asar\src\asar;src\lib\asar\src\asar-dll-bindings\c;incl;src;src\lib\imgui;src\lib\imgui_test_engine;%(AdditionalIncludeDirectories)
+
+
+ Console
+ true
+ true
+ true
+ SDL2.lib;SDL2main.lib;absl_base.lib;absl_strings.lib;%(AdditionalDependencies)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/app/gui/theme_manager.cc b/src/app/gui/theme_manager.cc
index 3b9b2fcd..3637a501 100644
--- a/src/app/gui/theme_manager.cc
+++ b/src/app/gui/theme_manager.cc
@@ -270,14 +270,11 @@ absl::Status ThemeManager::LoadThemeFromFile(const std::string& filepath) {
std::string successful_path;
for (const auto& path : possible_paths) {
- util::logf("Trying to open theme file: %s", path.c_str());
file.open(path);
if (file.is_open()) {
successful_path = path;
- util::logf("✅ Successfully opened theme file: %s", path.c_str());
break;
} else {
- util::logf("❌ Failed to open theme file: %s", path.c_str());
file.clear(); // Clear any error flags before trying next path
}
}
@@ -838,7 +835,6 @@ absl::Status ThemeManager::SaveThemeToFile(const EnhancedTheme& theme, const std
return absl::InternalError(absl::StrFormat("Failed to write theme file: %s", filepath));
}
- util::logf("✅ Successfully saved theme '%s' to file: %s", theme.name.c_str(), filepath.c_str());
return absl::OkStatus();
}
@@ -1834,7 +1830,6 @@ void ThemeManager::ShowSimpleThemeEditor(bool* p_open) {
themes_[edit_theme.name] = edit_theme;
ApplyTheme(edit_theme);
theme_backup_made = false; // Reset backup state since theme is now applied
- util::logf("Theme saved over current file: %s", current_file_path.c_str());
} else {
util::logf("Failed to save over current theme: %s", status.message().data());
}
@@ -1877,7 +1872,6 @@ void ThemeManager::ShowSimpleThemeEditor(bool* p_open) {
// Also add to themes map for immediate use
themes_[edit_theme.name] = edit_theme;
ApplyTheme(edit_theme);
- util::logf("Theme saved successfully to: %s", file_path.c_str());
} else {
util::logf("Failed to save theme: %s", status.message().data());
}
@@ -1905,14 +1899,12 @@ std::vector ThemeManager::GetThemeSearchPaths() const {
#ifdef __APPLE__
// macOS bundle resource path (this should be the primary path for bundled apps)
std::string bundle_themes = core::GetResourcePath("assets/themes/");
- util::logf("🔍 Bundle themes path from GetResourcePath: '%s'", bundle_themes.c_str());
if (!bundle_themes.empty()) {
search_paths.push_back(bundle_themes);
}
// Alternative bundle locations
std::string bundle_root = core::GetBundleResourcePath();
- util::logf("🔍 Bundle root path: '%s'", bundle_root.c_str());
search_paths.push_back(bundle_root + "Contents/Resources/themes/");
search_paths.push_back(bundle_root + "Contents/Resources/assets/themes/");
@@ -1928,12 +1920,6 @@ std::vector ThemeManager::GetThemeSearchPaths() const {
std::string config_themes = core::GetConfigDirectory() + "/themes/";
search_paths.push_back(config_themes);
- // Debug: Print all search paths
- util::logf("🔍 Theme search paths (%zu total):", search_paths.size());
- for (size_t i = 0; i < search_paths.size(); ++i) {
- util::logf(" [%zu]: '%s'", i, search_paths[i].c_str());
- }
-
return search_paths;
}
@@ -1944,7 +1930,6 @@ std::string ThemeManager::GetThemesDirectory() const {
for (const auto& path : search_paths) {
std::ifstream test_file(path + "."); // Test if directory exists by trying to access it
if (test_file.good()) {
- util::logf("Found themes directory: %s", path.c_str());
return path;
}
@@ -1956,12 +1941,10 @@ std::string ThemeManager::GetThemesDirectory() const {
std::ifstream test_file2(normalized_path + ".");
if (test_file2.good()) {
- util::logf("Found themes directory: %s", normalized_path.c_str());
return normalized_path;
}
}
- util::logf("No themes directory found in search paths");
return search_paths.empty() ? "assets/themes/" : search_paths[0];
}
@@ -1970,7 +1953,6 @@ std::vector ThemeManager::DiscoverAvailableThemeFiles() const {
auto search_paths = GetThemeSearchPaths();
for (const auto& search_path : search_paths) {
- util::logf("Searching for theme files in: %s", search_path.c_str());
try {
// Use platform-specific file discovery instead of glob
@@ -1979,7 +1961,6 @@ std::vector ThemeManager::DiscoverAvailableThemeFiles() const {
for (const auto& file : files_in_folder) {
if (file.length() > 6 && file.substr(file.length() - 6) == ".theme") {
std::string full_path = search_path + file;
- util::logf("Found theme file: %s", full_path.c_str());
theme_files.push_back(full_path);
}
}
@@ -1995,7 +1976,6 @@ std::vector ThemeManager::DiscoverAvailableThemeFiles() const {
std::string full_path = search_path + theme_name;
std::ifstream test_file(full_path);
if (test_file.good()) {
- util::logf("Found theme file: %s", full_path.c_str());
theme_files.push_back(full_path);
}
}
@@ -2017,7 +1997,6 @@ std::vector ThemeManager::DiscoverAvailableThemeFiles() const {
}
}
- util::logf("Discovered %zu unique theme files", unique_files.size());
return unique_files;
}
@@ -2031,14 +2010,11 @@ absl::Status ThemeManager::LoadAllAvailableThemes() {
auto status = LoadThemeFromFile(theme_file);
if (status.ok()) {
successful_loads++;
- util::logf("✅ Successfully loaded theme: %s", theme_file.c_str());
} else {
failed_loads++;
- util::logf("❌ Failed to load theme %s: %s", theme_file.c_str(), status.message().data());
}
}
- util::logf("Theme loading complete: %d successful, %d failed", successful_loads, failed_loads);
if (successful_loads == 0 && failed_loads > 0) {
return absl::InternalError(absl::StrFormat("Failed to load any themes (%d failures)", failed_loads));
@@ -2048,7 +2024,6 @@ absl::Status ThemeManager::LoadAllAvailableThemes() {
}
absl::Status ThemeManager::RefreshAvailableThemes() {
- util::logf("Refreshing available themes...");
return LoadAllAvailableThemes();
}