Struct CanvasView
pub struct CanvasView {
pub origin: Point,
pub zoom: f64,
pub places: HashMap<u64, Rect>,
}Expand description
How a row’s windows stand on a canvas, and how much of it shows.
Fields§
§origin: PointThe canvas point at the row’s top-left corner.
zoom: f64Screen pixels per canvas pixel.
places: HashMap<u64, Rect>Each placed window group’s rect, in canvas pixels. A group with no place yet is not shown until it gets one.
Implementations§
§impl CanvasView
impl CanvasView
pub fn to_screen(&self, corner: Point, p: Point) -> Point
pub fn to_screen(&self, corner: Point, p: Point) -> Point
Where canvas point p is on screen, for a row whose top-left corner
is at corner.
pub fn to_canvas(&self, corner: Point, p: Point) -> Point
pub fn to_canvas(&self, corner: Point, p: Point) -> Point
The canvas point under screen point p, for a row whose top-left
corner is at corner.
pub fn canvas_size_of(&self, on_screen: Rect) -> (f64, f64)
pub fn canvas_size_of(&self, on_screen: Rect) -> (f64, f64)
The size a window drawn on_screen has on the canvas: what its
client is configured to, so zooming scales its pixels rather than
resizing it.
pub fn zoom_about(&mut self, corner: Point, about: Point, factor: f64)
pub fn zoom_about(&mut self, corner: Point, about: Point, factor: f64)
Zoom by factor about screen point about, for a row whose
top-left corner is at corner: the canvas point under about stays
under it. The zoom stays within CANVAS_ZOOM_MIN and
CANVAS_ZOOM_MAX.
Trait Implementations§
§impl Clone for CanvasView
impl Clone for CanvasView
§fn clone(&self) -> CanvasView
fn clone(&self) -> CanvasView
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read more§impl Debug for CanvasView
impl Debug for CanvasView
§impl Default for CanvasView
impl Default for CanvasView
§fn default() -> CanvasView
fn default() -> CanvasView
Returns the “default value” for a type. Read more
§impl PartialEq for CanvasView
impl PartialEq for CanvasView
impl StructuralPartialEq for CanvasView
Auto Trait Implementations§
impl Freeze for CanvasView
impl RefUnwindSafe for CanvasView
impl Send for CanvasView
impl Sync for CanvasView
impl Unpin for CanvasView
impl UnsafeUnpin for CanvasView
impl UnwindSafe for CanvasView
Blanket Implementations§
§impl<T> AnyEq for T
impl<T> AnyEq for T
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
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.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Converts
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Converts
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Converts
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Converts
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> DowncastSend for T
impl<T> DowncastSend for T
§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> NoneValue for Twhere
T: Default,
impl<T> NoneValue for Twhere
T: Default,
type NoneType = T
§fn null_value() -> T
fn null_value() -> T
The none-equivalent value.