From: Olaf Wintermann Date: Sun, 26 Apr 2026 11:06:07 +0000 (+0200) Subject: add UiContext to AppContext X-Git-Url: https://uap-core.de/gitweb/?a=commitdiff_plain;h=abb9ee1dada46751a2030e6b8328cf49cde5fed0;p=note.git add UiContext to AppContext --- diff --git a/ui-rs/src/ui/application.rs b/ui-rs/src/ui/application.rs index 85ec35f..1ab0aed 100644 --- a/ui-rs/src/ui/application.rs +++ b/ui-rs/src/ui/application.rs @@ -31,7 +31,7 @@ use std::ffi::{c_char, c_int, c_void, CString}; use std::marker::PhantomData; use crate::ui::ffi::{UiCallback, UiEvent}; -use crate::ui::{UiActions, UiModel}; +use crate::ui::{toolkit, ui_global_context, UiActions, UiModel}; pub trait Application { fn on_startup(&mut self, app: &AppContext); @@ -40,6 +40,7 @@ pub trait Application { } pub struct AppContext { + pub ctx: toolkit::UiContext, _marker: PhantomData, } @@ -55,7 +56,9 @@ extern "C" fn app_startup(_event: *const UiEvent, data: unsafe { let app_ptr = data as *mut AppWrapper; let app_ref: &mut AppWrapper = &mut *app_ptr; + let global_ctx = toolkit::UiContext::from_ptr(ui_global_context()); let ctx = AppContext:: { + ctx: global_ctx, _marker: PhantomData, }; app_ref.app.on_startup(&ctx); @@ -66,7 +69,9 @@ extern "C" fn app_exit(_event: *const UiEvent, data: *mu unsafe { let app_ptr = data as *mut AppWrapper; let app_ref: &mut AppWrapper = &mut *app_ptr; + let global_ctx = toolkit::UiContext::from_ptr(ui_global_context()); let ctx = AppContext:: { + ctx: global_ctx, _marker: PhantomData, }; app_ref.app.on_exit(&ctx);