From 85f0f9b3cb71f6282a8f117b0a6b733d1dcad691 Mon Sep 17 00:00:00 2001 From: "John R. Patek" Date: Fri, 27 Mar 2026 15:26:33 -0500 Subject: [PATCH] added get_exe_path --- include/webframe/context.hpp | 1 + src/context.cpp | 5 +++++ src/runtimes/desktop/context.cpp | 5 +++++ src/runtimes/desktop/include/desktop/context.hpp | 1 + src/runtimes/desktop/include/desktop/wxwidgets.hpp | 1 + 5 files changed, 13 insertions(+) diff --git a/include/webframe/context.hpp b/include/webframe/context.hpp index 156f95f..4beff23 100644 --- a/include/webframe/context.hpp +++ b/include/webframe/context.hpp @@ -46,6 +46,7 @@ namespace webframe virtual window* create_window(window *parent, int width = -1, int height = -1); virtual window* find_window(const std::string& id); virtual void destroy_window(window* handle); + virtual std::string get_exe_path() const; }; class server_context diff --git a/src/context.cpp b/src/context.cpp index 8d39b41..9fb9b14 100644 --- a/src/context.cpp +++ b/src/context.cpp @@ -25,4 +25,9 @@ namespace webframe { (void)signum; } + + std::string desktop_context::get_exe_path() const + { + return {}; + } } \ No newline at end of file diff --git a/src/runtimes/desktop/context.cpp b/src/runtimes/desktop/context.cpp index e93ae93..3a66b4a 100644 --- a/src/runtimes/desktop/context.cpp +++ b/src/runtimes/desktop/context.cpp @@ -37,4 +37,9 @@ namespace webframe::desktop { _windows.erase(handle->get_id()); } + + std::string context::get_exe_path() const + { + return wxStandardPaths::Get().GetExecutablePath().ToStdString(); + } } \ No newline at end of file diff --git a/src/runtimes/desktop/include/desktop/context.hpp b/src/runtimes/desktop/include/desktop/context.hpp index 59e49a7..03282da 100644 --- a/src/runtimes/desktop/include/desktop/context.hpp +++ b/src/runtimes/desktop/include/desktop/context.hpp @@ -13,6 +13,7 @@ namespace webframe::desktop webframe::window *create_window(webframe::window *parent, int width, int height) override; webframe::window *find_window(const std::string &id) override; void destroy_window(webframe::window *handle) override; + std::string get_exe_path() const override; private: int _default_width; diff --git a/src/runtimes/desktop/include/desktop/wxwidgets.hpp b/src/runtimes/desktop/include/desktop/wxwidgets.hpp index b7add10..5260b61 100644 --- a/src/runtimes/desktop/include/desktop/wxwidgets.hpp +++ b/src/runtimes/desktop/include/desktop/wxwidgets.hpp @@ -6,6 +6,7 @@ #include #include #include +#include #include #endif \ No newline at end of file