Trait i_slint_core::renderer::Renderer
source · [−]pub trait Renderer {
fn text_size(
&self,
font_request: FontRequest,
text: &str,
max_width: Option<Coord>,
scale_factor: f32
) -> Size;
fn text_input_byte_offset_for_position(
&self,
text_input: Pin<&TextInput>,
pos: Point
) -> usize;
fn text_input_cursor_rect_for_byte_offset(
&self,
text_input: Pin<&TextInput>,
byte_offset: usize
) -> Rect;
fn free_graphics_resources(
&self,
_items: &mut dyn Iterator<Item = Pin<ItemRef<'_>>>
) { ... }
fn mark_dirty_region(&self, _region: DirtyRegion) { ... }
fn register_font_from_memory(
&self,
_data: &'static [u8]
) -> Result<(), Box<dyn Error>> { ... }
fn register_font_from_path(&self, _path: &Path) -> Result<(), Box<dyn Error>> { ... }
fn register_bitmap_font(&self, _font_data: &'static BitmapFont) { ... }
fn set_rendering_notifier(
&self,
_callback: Box<dyn RenderingNotifier>
) -> Result<(), SetRenderingNotifierError> { ... }
}Required Methods
Returns the size of the given text in logical pixels.
When set, max_width means that one need to wrap the text so it does not go further than that
Returns the (UTF-8) byte offset in the text property that refers to the character that contributed to the glyph cluster that’s visually nearest to the given coordinate. This is used for hit-testing, for example when receiving a mouse click into a text field. Then this function returns the “cursor” position.
That’s the opposite of Self::text_input_byte_offset_for_position
It takes a (UTF-8) byte offset in the text property, and returns a Rectangle
left to the char. It is one logical pixel wide and ends at the baseline.
Provided Methods
sourcefn free_graphics_resources(
&self,
_items: &mut dyn Iterator<Item = Pin<ItemRef<'_>>>
)
fn free_graphics_resources(
&self,
_items: &mut dyn Iterator<Item = Pin<ItemRef<'_>>>
)
Clear the caches for the items that are being removed
sourcefn mark_dirty_region(&self, _region: DirtyRegion)
fn mark_dirty_region(&self, _region: DirtyRegion)
Mark a given region as dirty regardless whether the items actually are dirty.
Example: when a PopupWindow disapear, the region under the popup needs to be redrawn
This function can be used to register a custom TrueType font with Slint,
for use with the font-family property. The provided slice must be a valid TrueType
font.
This function can be used to register a custom TrueType font with Slint,
for use with the font-family property. The provided path must refer to a valid TrueType
font.
fn register_bitmap_font(&self, _font_data: &'static BitmapFont)
sourcefn set_rendering_notifier(
&self,
_callback: Box<dyn RenderingNotifier>
) -> Result<(), SetRenderingNotifierError>
fn set_rendering_notifier(
&self,
_callback: Box<dyn RenderingNotifier>
) -> Result<(), SetRenderingNotifierError>
This function is called through the public API to register a callback that the backend needs to invoke during different phases of rendering.