Struct cairo::QuartzSurface
source · [−]#[repr(transparent)]pub struct QuartzSurface(_);
Implementations
sourceimpl QuartzSurface
impl QuartzSurface
pub unsafe fn from_raw_full(
ptr: *mut cairo_surface_t
) -> Result<QuartzSurface, Error>
pub unsafe fn from_raw_none(
ptr: *mut cairo_surface_t
) -> Result<QuartzSurface, Error>
sourceimpl QuartzSurface
impl QuartzSurface
pub fn create(
format: Format,
width: u32,
height: u32
) -> Result<QuartzSurface, Error>
pub fn create_for_cg_context(
cg_context: CGContextRef,
width: u32,
height: u32
) -> Result<QuartzSurface, Error>
pub fn cg_context(&self) -> CGContextRef
Methods from Deref<Target = Surface>
pub fn to_raw_none(&self) -> *mut cairo_surface_t
pub fn create_similar(
&self,
content: Content,
width: i32,
height: i32
) -> Result<Surface, Error>
pub fn create_for_rectangle(&self, bounds: Rectangle) -> Result<Surface, Error>
pub fn mime_data(&self, mime_type: &str) -> Option<Vec<u8>>
pub unsafe fn mime_data_raw(&self, mime_type: &str) -> Option<&[u8]>
pub fn set_mime_data<T: AsRef<[u8]> + 'static>(
&self,
mime_type: &str,
slice: T
) -> Result<(), Error>
pub fn supports_mime_type(&self, mime_type: &str) -> bool
pub fn device(&self) -> Option<Device>
pub fn set_device_offset(&self, x_offset: f64, y_offset: f64)
pub fn device_offset(&self) -> (f64, f64)
pub fn set_device_scale(&self, x_scale: f64, y_scale: f64)
pub fn device_scale(&self) -> (f64, f64)
pub fn set_fallback_resolution(
&self,
x_pixels_per_inch: f64,
y_pixels_per_inch: f64
)
pub fn fallback_resolution(&self) -> (f64, f64)
pub fn create_similar_image(
&self,
format: Format,
width: i32,
height: i32
) -> Result<Surface, Error>
pub fn map_to_image(
&self,
extents: Option<RectangleInt>
) -> Result<MappedImageSurface, Error>
pub fn mark_dirty(&self)
pub fn mark_dirty_rectangle(&self, x: i32, y: i32, width: i32, height: i32)
pub fn status(&self) -> Result<(), Error>
sourcepub fn set_user_data<T: 'static>(
&self,
key: &'static UserDataKey<T>,
value: Rc<T>
) -> Result<(), Error>
pub fn set_user_data<T: 'static>(
&self,
key: &'static UserDataKey<T>,
value: Rc<T>
) -> Result<(), Error>
Attach user data to self
for the given key
.
sourcepub fn user_data<T: 'static>(
&self,
key: &'static UserDataKey<T>
) -> Option<Rc<T>>
pub fn user_data<T: 'static>(
&self,
key: &'static UserDataKey<T>
) -> Option<Rc<T>>
Return the user data previously attached to self
with the given key
, if any.
sourcepub fn user_data_ptr<T: 'static>(
&self,
key: &'static UserDataKey<T>
) -> Option<NonNull<T>>
pub fn user_data_ptr<T: 'static>(
&self,
key: &'static UserDataKey<T>
) -> Option<NonNull<T>>
Return the user data previously attached to self
with the given key
, if any,
without incrementing the reference count.
The pointer is valid when it is returned from this method,
until the cairo object that self
represents is destroyed
or remove_user_data
or set_user_data
is called with the same key.
sourcepub fn remove_user_data<T: 'static>(
&self,
key: &'static UserDataKey<T>
) -> Result<(), Error>
pub fn remove_user_data<T: 'static>(
&self,
key: &'static UserDataKey<T>
) -> Result<(), Error>
Unattached from self
the user data associated with key
, if any.
If there is no other Rc
strong reference, the data is destroyed.
sourcepub fn write_to_png<W: Write>(&self, stream: &mut W) -> Result<(), IoError>
pub fn write_to_png<W: Write>(&self, stream: &mut W) -> Result<(), IoError>
This function writes the surface as a PNG image to the given stream.
If the underlying surface does not support being written as a PNG, this will return
Error::SurfaceTypeMismatch
sourcepub fn finish_output_stream(&self) -> Result<Box<dyn Any>, StreamWithError>
pub fn finish_output_stream(&self) -> Result<Box<dyn Any>, StreamWithError>
Finish the surface, then remove and return the output stream if any.
This calls Surface::finish
, to make sure pending writes are done.
This is relevant for surfaces created for example with [PdfSurface::for_stream
].
Use Box::downcast
to recover the concrete stream type.
Panics
This method panics if:
- This method was already called for this surface, or
- This surface was not created with an output stream in the first place, or
- A previous write to this surface panicked, or
- A previous write happened while another write was ongoing, or
- A write is ongoing now.
The latter two cases can only occur with a pathological output stream type
that accesses the same surface again from Write::write_all
.
Trait Implementations
sourceimpl Clone for QuartzSurface
impl Clone for QuartzSurface
sourcefn clone(&self) -> QuartzSurface
fn clone(&self) -> QuartzSurface
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Debug for QuartzSurface
impl Debug for QuartzSurface
sourceimpl Deref for QuartzSurface
impl Deref for QuartzSurface
sourceimpl Display for QuartzSurface
impl Display for QuartzSurface
sourceimpl FromGlibPtrBorrow<*mut cairo_surface_t> for QuartzSurface
impl FromGlibPtrBorrow<*mut cairo_surface_t> for QuartzSurface
sourceunsafe fn from_glib_borrow(ptr: *mut cairo_surface_t) -> Borrowed<QuartzSurface>
unsafe fn from_glib_borrow(ptr: *mut cairo_surface_t) -> Borrowed<QuartzSurface>
Safety Read more
sourceimpl FromGlibPtrFull<*mut cairo_surface_t> for QuartzSurface
impl FromGlibPtrFull<*mut cairo_surface_t> for QuartzSurface
sourceunsafe fn from_glib_full(ptr: *mut cairo_surface_t) -> QuartzSurface
unsafe fn from_glib_full(ptr: *mut cairo_surface_t) -> QuartzSurface
Safety Read more
sourceimpl FromGlibPtrNone<*mut cairo_surface_t> for QuartzSurface
impl FromGlibPtrNone<*mut cairo_surface_t> for QuartzSurface
sourceunsafe fn from_glib_none(ptr: *mut cairo_surface_t) -> QuartzSurface
unsafe fn from_glib_none(ptr: *mut cairo_surface_t) -> QuartzSurface
Safety Read more
sourceimpl<'a> FromValue<'a> for &'a QuartzSurface
impl<'a> FromValue<'a> for &'a QuartzSurface
type Checker = GenericValueTypeOrNoneChecker<&'a QuartzSurface>
type Checker = GenericValueTypeOrNoneChecker<&'a QuartzSurface>
Value type checker.
sourceunsafe fn from_value(value: &'a Value) -> Self
unsafe fn from_value(value: &'a Value) -> Self
Get the contained value from a Value
. Read more
sourceimpl<'a> FromValue<'a> for QuartzSurface
impl<'a> FromValue<'a> for QuartzSurface
type Checker = GenericValueTypeOrNoneChecker<QuartzSurface>
type Checker = GenericValueTypeOrNoneChecker<QuartzSurface>
Value type checker.
sourceunsafe fn from_value(value: &'a Value) -> Self
unsafe fn from_value(value: &'a Value) -> Self
Get the contained value from a Value
. Read more
sourceimpl StaticType for QuartzSurface
impl StaticType for QuartzSurface
sourcefn static_type() -> Type
fn static_type() -> Type
Returns the type identifier of Self
.
sourceimpl<'a> ToGlibPtr<'a, *mut cairo_surface_t> for QuartzSurface
impl<'a> ToGlibPtr<'a, *mut cairo_surface_t> for QuartzSurface
type Storage = &'a Surface
sourcefn to_glib_none(&'a self) -> Stash<'a, *mut cairo_surface_t, Self>
fn to_glib_none(&'a self) -> Stash<'a, *mut cairo_surface_t, Self>
Transfer: none. Read more
sourcefn to_glib_full(&self) -> *mut cairo_surface_t
fn to_glib_full(&self) -> *mut cairo_surface_t
Transfer: full. Read more
sourcefn to_glib_container(&'a self) -> Stash<'a, P, Self>
fn to_glib_container(&'a self) -> Stash<'a, P, Self>
Transfer: container. Read more
sourceimpl ToValue for QuartzSurface
impl ToValue for QuartzSurface
sourceimpl ToValueOptional for QuartzSurface
impl ToValueOptional for QuartzSurface
sourcefn to_value_optional(s: Option<&Self>) -> Value
fn to_value_optional(s: Option<&Self>) -> Value
Convert an Option
to a Value
.
sourceimpl TryFrom<Surface> for QuartzSurface
impl TryFrom<Surface> for QuartzSurface
sourceimpl ValueType for QuartzSurface
impl ValueType for QuartzSurface
type Type = QuartzSurface
type Type = QuartzSurface
Type to get the Type
from. Read more
impl ValueTypeOptional for QuartzSurface
Auto Trait Implementations
impl RefUnwindSafe for QuartzSurface
impl !Send for QuartzSurface
impl !Sync for QuartzSurface
impl Unpin for QuartzSurface
impl UnwindSafe for QuartzSurface
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> StaticTypeExt for T where
T: StaticType,
impl<T> StaticTypeExt for T where
T: StaticType,
sourcefn ensure_type()
fn ensure_type()
Ensures that the type has been registered with the type system.