#[repr(C)]pub struct KuiAccessNode {Show 31 fields
pub key: u64,
pub parent: u64,
pub origin: u32,
pub role: u32,
pub flags: u32,
pub actions: u32,
pub name: KuiStr,
pub description: KuiStr,
pub value: KuiStr,
pub x: f32,
pub y: f32,
pub w: f32,
pub h: f32,
pub caret: u32,
pub selection_start: u32,
pub selection_end: u32,
pub value_now: f32,
pub value_min: f32,
pub value_max: f32,
pub scroll_x: f32,
pub scroll_y: f32,
pub scroll_max_x: f32,
pub scroll_max_y: f32,
pub anchor_run: u64,
pub anchor_char: u32,
pub focus_run: u64,
pub focus_char: u32,
pub run_count: u32,
pub pos_in_set: u32,
pub set_size: u32,
pub orientation: u32,
}Expand description
One node of the access tree (kui_access_tree): what assistive
technology sees. role is KUI_ROLE_, flags KUI_ACCESS_HAS_ /
FOCUSED / CHECKED bits saying which optional fields hold, actions
the KUI_ACCESS_* bits the node accepts through kui_input_access.
Strings are borrowed until the next kui_access_tree on the context.
Fields§
§key: u64§parent: u64The nearest semantic ancestor; 0 for the root.
origin: u32§role: u32§flags: u32§actions: u32§name: KuiStr§description: KuiStr§value: KuiStrThe node’s one string value (KUI_ACCESS_HAS_VALUE): an editor’s
text, or a slider’s value_text — the platform has one slot, and a
slider that named its reading reads as that instead of its number.
x: f32Logical px, viewport coordinates, cut to the node’s clip (zero-size on the clip’s edge when wholly clipped).
y: f32§w: f32§h: f32§caret: u32Byte offsets into value (KUI_ACCESS_HAS_VALUE / HAS_SELECTION).
selection_start: u32§selection_end: u32§value_now: f32A slider’s position and range (KUI_ACCESS_HAS_NUMBER / MIN / MAX).
value_min: f32§value_max: f32§scroll_x: f32A scroll view’s offsets and range (KUI_ACCESS_HAS_SCROLL).
scroll_y: f32§scroll_max_x: f32§scroll_max_y: f32§anchor_run: u64An editor’s caret (focus_*) and the selection’s other end
(anchor_*) as run positions (KUI_ACCESS_HAS_TEXT_SELECTION):
a run key from kui_access_runs and a character index into it.
anchor_char: u32§focus_run: u64§focus_char: u32§run_count: u32How many runs kui_access_runs returns for this node.
pos_in_set: u32“3 of 7” (KUI_ACCESS_HAS_POS_IN_SET / HAS_SET_SIZE): the item’s zero-based ordinal among its list’s or tab list’s items, and the count on that container.
set_size: u32§orientation: u32KUI_ORIENTATION_* (0 = unset: this node is not a composite
container). How the container arranges its items, from its own
dir.
Trait Implementations§
Source§impl Clone for KuiAccessNode
impl Clone for KuiAccessNode
impl Copy for KuiAccessNode
Auto Trait Implementations§
impl !Send for KuiAccessNode
impl !Sync for KuiAccessNode
impl Freeze for KuiAccessNode
impl RefUnwindSafe for KuiAccessNode
impl Unpin for KuiAccessNode
impl UnsafeUnpin for KuiAccessNode
impl UnwindSafe for KuiAccessNode
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.