1mod core;
16mod debug_tools;
17mod draw;
18mod navigation;
19mod style;
20mod viewport;
21mod widgets;
22mod window;
23
24use crate::Id;
25use crate::context::ContextBinding;
26use crate::context::SharedTextureRegistry;
27use crate::draw::DrawListMut;
28use crate::input::MouseCursor;
29use crate::internal::RawWrapper;
30use crate::scope::NativeScopeTracker;
31use crate::string::UiBuffer;
32use crate::sys;
33use crate::texture::TextureRef;
34use std::cell::{RefCell, UnsafeCell};
35
36#[derive(Debug)]
38pub struct Ui {
39 pub(crate) ctx: *mut sys::ImGuiContext,
41 pub(crate) ctx_binding: ContextBinding,
42 pub(crate) texture_registry: SharedTextureRegistry,
43 pub(crate) native_scopes: RefCell<NativeScopeTracker>,
44 buffer: UnsafeCell<UiBuffer>,
46}