Skip to main content

Sem

Struct Sem 

Source
pub struct Sem {
    pub id: u32,
    pub kind: u16,
    pub state: u16,
    pub rect: [i32; 4],
    pub label: Option<String>,
    pub value: i32,
    pub max: i32,
    pub min: i32,
    pub layer: u8,
    pub depth: u8,
    pub win: u8,
    pub ax: Option<Box<SemAx>>,
}
Expand description

semantic record (dump / expect) [SR_*]

Fields§

§id: u32§kind: u16§state: u16

SS_*

§rect: [i32; 4]

x, y, w, h physical px

§label: Option<String>§value: i32§max: i32§min: i32

the lower end of a slider’s range (accessibility)

§layer: u8§depth: u8§win: u8

window index (0 = the main window)

§ax: Option<Box<SemAx>>

what the record says beyond kind, label and value (its own 64-bit id, a parent, a description, cells, states …): set through the record’s setters (id64, parent, desc …; section 19 of the guide); None for the records of the built-in widgets

Implementations§

Source§

impl Sem

The setters of a record’s further accessibility data (Sem::ax, section 19 of the guide): each returns the record, so they chain after sem / sem_rect. A web page’s tree:

ⓘ
ui.sem_rect(K_CELL, 0, r, Some("12,50 €"), 0).id64(node).parent(row).cell(2, 1);
Source

pub fn id64(&mut self, id: u64) -> &mut Sem

Its own 64-bit id (below 2^62; a web page’s node id). The node keeps it from frame to frame, other records name it as their parent, and every request of a screen reader for it comes back to the app (ui.a11y_request_take) instead of going to a widget.

Source

pub fn parent(&mut self, id: u64) -> &mut Sem

The record it hangs under: the one with this id64 (else this widget id) in the same frame and window – the tree follows it, not the rectangles. A parent that is left out (a box without a label) passes it on to its own parent; an unknown one leaves it to its rectangle.

Source

pub fn name(&mut self, name: &str) -> &mut Sem

Its name when the label is something else: a text box’s or drop-down’s label is its text, so .name("Suche") names it.

Source

pub fn desc(&mut self, text: &str) -> &mut Sem

A description beside the name (a hint; a page’s aria-describedby).

Source

pub fn url(&mut self, url: &str) -> &mut Sem

A link’s address.

Source

pub fn value_text(&mut self, text: &str) -> &mut Sem

The text a screen reader says for a slider’s, meter’s or spin button’s value (“Montag”).

Source

pub fn states(&mut self, states: u32) -> &mut Sem

Further states (AS_*: required, invalid, busy, has a popup, visited, modal, multi-select, collapsed, off screen, focusable, clickable, selectable, read-only, multi-line, password), added to those it has.

Source

pub fn set_pos(&mut self, pos: u32, size: u32) -> &mut Sem

Its position in its set (1-based) and the set’s size: list and tree items, tabs, rows.

Source

pub fn level(&mut self, level: u32) -> &mut Sem

The level of a heading (1 ..= 9, in place of the value), a tree item, list item or row (1 the top).

Source

pub fn cell(&mut self, row: u32, col: u32) -> &mut Sem

A cell’s or header’s place in its table: row, column (0-based).

Source

pub fn span(&mut self, rows: u32, cols: u32) -> &mut Sem

The rows and columns a cell spans (1, 1 without).

Source

pub fn grid(&mut self, rows: u32, cols: u32) -> &mut Sem

A table’s number of rows and columns (without: counted from its cells).

Source

pub fn live(&mut self, live: u32) -> &mut Sem

How it speaks as a live region: LIVE_POLITE, LIVE_ASSERTIVE, LIVE_OFF (0: as its kind says – K_ALERT assertive, K_STATUS and K_LOG polite).

Source

pub fn range(&mut self, value: f64, min: f64, max: f64, step: f64) -> &mut Sem

A value with fractions in place of value / min / max (sliders, meters, spin buttons, scroll bars, progress bars; a value below min: unknown progress), and the step of a screen reader’s increment.

Source

pub fn text_sel(&mut self, anchor: u32, caret: u32) -> &mut Sem

A focused text box’s selection in characters: anchor, caret (equal: the caret alone) – a page’s own field; the built-in text boxes report theirs themselves.

Trait Implementations§

Source§

impl Clone for Sem

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Default for Sem

Source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

§

impl Forget for Sem

§

impl Freeze for Sem

§

impl Move for Sem

§

impl RefUnwindSafe for Sem

§

impl Send for Sem

§

impl Sync for Sem

§

impl Unpin for Sem

§

impl UnsafeUnpin for Sem

§

impl UnwindSafe for Sem

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.