diff --git a/projects/kiwano/cpp.hint b/projects/kiwano/cpp.hint new file mode 100644 index 00000000..6e489168 --- /dev/null +++ b/projects/kiwano/cpp.hint @@ -0,0 +1,5 @@ +// 提示文件帮助 Visual Studio IDE 解释 Visual C++ 标识符, +// 如函数和宏的名称。 +// 有关详细信息,请参见 https://go.microsoft.com/fwlink/?linkid=865984 + +#define KGE_API diff --git a/projects/kiwano/kiwano.vcxproj b/projects/kiwano/kiwano.vcxproj index eebac6c1..48309922 100644 --- a/projects/kiwano/kiwano.vcxproj +++ b/projects/kiwano/kiwano.vcxproj @@ -182,6 +182,9 @@ Win32 + + + {FF7F943D-A89C-4E6C-97CF-84F7D8FF8EDF} kiwano @@ -260,4 +263,4 @@ - + \ No newline at end of file diff --git a/projects/kiwano/kiwano.vcxproj.filters b/projects/kiwano/kiwano.vcxproj.filters index 469121fb..10e905b5 100644 --- a/projects/kiwano/kiwano.vcxproj.filters +++ b/projects/kiwano/kiwano.vcxproj.filters @@ -534,4 +534,7 @@ core + + + \ No newline at end of file diff --git a/src/kiwano/platform/Application.cpp b/src/kiwano/platform/Application.cpp index ca29f4d4..f5ab4a3d 100644 --- a/src/kiwano/platform/Application.cpp +++ b/src/kiwano/platform/Application.cpp @@ -29,6 +29,11 @@ namespace kiwano { +int GetVersion() +{ + return KGE_VERSION; +} + Application::Application() : quiting_(false) , time_scale_(1.f) @@ -40,11 +45,6 @@ Application::Application() Application::~Application() {} -int Application::GetVersion() const -{ - return KGE_VERSION; -} - void Application::Run(RunnerPtr runner, bool debug) { KGE_ASSERT(runner); @@ -112,6 +112,22 @@ void Application::SetTimeScale(float scale_factor) time_scale_ = scale_factor; } +void Application::DispatchEvent(EventPtr evt) +{ + this->DispatchEvent(evt.Get()); +} + +void Application::DispatchEvent(Event* evt) +{ + for (auto comp : modules_) + { + if (auto event_comp = comp->Cast()) + { + event_comp->HandleEvent(evt); + } + } +} + void Application::Update(Duration dt) { // Before update @@ -200,17 +216,6 @@ void Application::Render() renderer.Present(); } -void Application::DispatchEvent(Event* evt) -{ - for (auto comp : modules_) - { - if (auto event_comp = comp->Cast()) - { - event_comp->HandleEvent(evt); - } - } -} - void Application::PreformInMainThread(Function func) { std::lock_guard lock(perform_mutex_); diff --git a/src/kiwano/platform/Application.h b/src/kiwano/platform/Application.h index 5a69527a..69771e39 100644 --- a/src/kiwano/platform/Application.h +++ b/src/kiwano/platform/Application.h @@ -30,6 +30,13 @@ namespace kiwano { + +/** + * \~chinese + * @brief ȡ汾 + */ +extern KGE_API int GetVersion(); + /** * \~chinese * @brief Ӧó򣬿ϷڣʼԼ¼ַ @@ -70,12 +77,6 @@ public: */ WindowPtr GetMainWindow() const; - /** - * \~chinese - * @brief ȡ汾 - */ - int GetVersion() const; - /** * \~chinese * @brief ģ @@ -92,6 +93,14 @@ public: */ void SetTimeScale(float scale_factor); + /** + * \~chinese + * @brief ַ¼ + * @details ¼ַ¼ģ + * @param evt ¼ + */ + void DispatchEvent(EventPtr evt); + /** * \~chinese * @brief ַ¼