Type Definition libnotcurses_sys::NcVisualOptions

source ·
pub type NcVisualOptions = ncvisual_options;
Expand description

Options struct for NcVisual.

It is recommended to construct it via NcVisualOptionsBuilder by calling NcVisualOptions::builder().

Usage

If a plane is not provided, one will be created, having the exact size necessary to display the visual (this might be smaller or larger than the rendering area). if ChildPlane is provided, this will be interpreted as the parent.

A subregion of the visual can be rendered using beg_y, beg_x, len_y, and len_x.

Fields

  • n: an optional mutable pointer to an NcPlane.

  • scaling: an NcScale indicating how the source will be stretched/scaled relative to the NcPlane.

  • y: if an NcPlane is provided in n then this specifies where the NcVisual will be on that plane.

    Otherwise it specifies where the created NcPlane will be placed relative to the standard plane’s origin.

    If VerAligned is set, this will be interpreted as an NcAlign value.

  • x: if an NcPlane is provided in n then this specifies where the NcVisual will be on that plane.

    Otherwise it specifies where the created NcPlane will be placed relative to the standard plane’s origin.

    If HorAligned is set, this will be interpreted as an NcAlign value.

  • begy: origin of rendered section in the y axis.

  • begx: origin of rendered section in the x axis.

  • leny: length of rendered section in the y axis.

  • lenx: length of rendered section in the x axis.

  • blitter: NcBlitter glyph set to use for blitting.

  • transcolor: treats this color as transparent when the AddAlpha flag is active.

  • pxoffy: pixel offset within the cell in the y axis.

    If NcBlitter::Pixel is used the bitmap will be drawn offset from the upper-left cell’s origin by these amounts, otherwise this will be ignored.

    It is an error if either number exceeds the cell-pixel geometry in any dimension (see NcPixelGeometry.cell_y, NcVisualGeometry.cdim_yx).

  • pxoffx: pixel offset within the cell in the x axis.

    If NcBlitter::Pixel is used, the bitmap will be drawn offset from the upper-left cell’s origin by these amounts, otherwise this will be ignored.

    It is an error if either number exceeds the cell-pixel geometry in any dimension (see NcPixelGeometry.cell_x, NcVisualGeometry.cdim_yx).

Implementations§

source§

impl<'ncplane> NcVisualOptions

source

pub fn builder() -> NcVisualOptionsBuilder<'ncplane>

Returns a builder object for NcVisualOptions.

source

pub fn new( plane: Option<&mut NcPlane>, scale: impl Into<NcScale>, y: i32, x: i32, section_yx_lenyx: Option<(u32, u32, u32, u32)>, cell_offset_yx: Option<(u32, u32)>, blitter: impl Into<NcBlitter>, flags: impl Into<NcVisualFlag>, transcolor: impl Into<NcRgba> ) -> Self

New NcVisualOptions.

Arguments
  • plane - an optional mutable pointer to an NcPlane.

  • scale - An NcScale indicating how the source will be stretched/scaled relative to the NcPlane.

  • y - if an NcPlane is provided in plane then this specifies where the NcVisual will be on that plane in the y axis.

    Otherwise it specifies where the created NcPlane will be placed in the y axis, relative to the standard plane’s origin.

    If VerAligned is set, this will be interpreted as an NcAlign value.

  • x - if an NcPlane is provided in plane then this specifies where the NcVisual will be on that plane, in the x axis.

    Otherwise it specifies where the created NcPlane will be placed, in the y axis, relative to the standard plane’s origin.

    If HorAligned is set, this will be interpreted as an NcAlign value.

  • section_yx_lenyx - The size of the rendered section.

    None renders the entire visual, otherwise the provided tuple (y, x, len_y, len_x) sets [yx] as the origin of the section and len_[yx] as the its length on each respective dimension.

  • cell_offset_yx - Pixel offsets within the cell.

    If NcBlitter::Pixel is used the bitmap will be drawn offset from the upper-left cell’s origin by these amounts, otherwise this will be ignored.

    It is an error if either number exceeds the cell-pixel geometry in any dimension (see NcVisualGeometry.cdim_yx).

  • blitter - NcBlitter glyph set to use for blitting.

  • flags - NcVisualFlag.

  • transcolor - treats this color as transparent when the AddAlpha flag is active

Notes

If the Childplane flag is used then the plane is interpreted as the parent NcPlane of the new plane created for this NcVisual.

source§

impl NcVisualOptions

source

pub fn does_plane(&self) -> bool

Returns true if it does have an associated NcPlane.

source

pub fn does_child_plane(&self) -> bool

Returns true if it has the ChildPlane flag set.

source

pub fn does_alpha(&self) -> bool

Returns true if it has the AddAlpha flag set.

source

pub fn does_blend(&self) -> bool

Returns true if it has the Blend flag set.

source

pub fn does_degrade(&self) -> bool

Returns false if it has the NoDegrade flag set.

source

pub fn does_interpolate(&self) -> bool

Returns false if it has the NoInterpolate flag set.

source

pub fn is_veraligned(&self) -> bool

Returns true if it has the VerAligned flag set.

source

pub fn is_horaligned(&self) -> bool

Returns true if it has the HorAligned flag set.

Trait Implementations§

source§

impl<'a> From<NcVisualOptionsBuilder<'a>> for NcVisualOptions

source§

fn from(builder: NcVisualOptionsBuilder<'a>) -> NcVisualOptions

Converts to this type from the input type.