Trait ID2D1DeviceContext2_Impl
pub trait ID2D1DeviceContext2_Impl: ID2D1DeviceContext1_Impl {
// Required methods
fn CreateInk(&self, startpoint: *const D2D1_INK_POINT) -> Result<ID2D1Ink>;
fn CreateInkStyle(
&self,
inkstyleproperties: *const D2D1_INK_STYLE_PROPERTIES,
) -> Result<ID2D1InkStyle>;
fn CreateGradientMesh(
&self,
patches: *const D2D1_GRADIENT_MESH_PATCH,
patchescount: u32,
) -> Result<ID2D1GradientMesh>;
fn CreateImageSourceFromWic(
&self,
wicbitmapsource: Ref<'_, IWICBitmapSource>,
loadingoptions: D2D1_IMAGE_SOURCE_LOADING_OPTIONS,
alphamode: D2D1_ALPHA_MODE,
) -> Result<ID2D1ImageSourceFromWic>;
fn CreateLookupTable3D(
&self,
precision: D2D1_BUFFER_PRECISION,
extents: *const u32,
data: *const u8,
datacount: u32,
strides: *const u32,
) -> Result<ID2D1LookupTable3D>;
fn CreateImageSourceFromDxgi(
&self,
surfaces: *const Option<IDXGISurface>,
surfacecount: u32,
colorspace: DXGI_COLOR_SPACE_TYPE,
options: D2D1_IMAGE_SOURCE_FROM_DXGI_OPTIONS,
) -> Result<ID2D1ImageSource>;
fn GetGradientMeshWorldBounds(
&self,
gradientmesh: Ref<'_, ID2D1GradientMesh>,
) -> Result<D2D_RECT_F>;
fn DrawInk(
&self,
ink: Ref<'_, ID2D1Ink>,
brush: Ref<'_, ID2D1Brush>,
inkstyle: Ref<'_, ID2D1InkStyle>,
);
fn DrawGradientMesh(&self, gradientmesh: Ref<'_, ID2D1GradientMesh>);
fn DrawGdiMetafile(
&self,
gdimetafile: Ref<'_, ID2D1GdiMetafile>,
destinationrectangle: *const D2D_RECT_F,
sourcerectangle: *const D2D_RECT_F,
);
fn CreateTransformedImageSource(
&self,
imagesource: Ref<'_, ID2D1ImageSource>,
properties: *const D2D1_TRANSFORMED_IMAGE_SOURCE_PROPERTIES,
) -> Result<ID2D1TransformedImageSource>;
}
Required Methods§
fn CreateInk(&self, startpoint: *const D2D1_INK_POINT) -> Result<ID2D1Ink>
fn CreateInkStyle( &self, inkstyleproperties: *const D2D1_INK_STYLE_PROPERTIES, ) -> Result<ID2D1InkStyle>
fn CreateGradientMesh( &self, patches: *const D2D1_GRADIENT_MESH_PATCH, patchescount: u32, ) -> Result<ID2D1GradientMesh>
fn CreateImageSourceFromWic( &self, wicbitmapsource: Ref<'_, IWICBitmapSource>, loadingoptions: D2D1_IMAGE_SOURCE_LOADING_OPTIONS, alphamode: D2D1_ALPHA_MODE, ) -> Result<ID2D1ImageSourceFromWic>
fn CreateLookupTable3D( &self, precision: D2D1_BUFFER_PRECISION, extents: *const u32, data: *const u8, datacount: u32, strides: *const u32, ) -> Result<ID2D1LookupTable3D>
fn CreateImageSourceFromDxgi( &self, surfaces: *const Option<IDXGISurface>, surfacecount: u32, colorspace: DXGI_COLOR_SPACE_TYPE, options: D2D1_IMAGE_SOURCE_FROM_DXGI_OPTIONS, ) -> Result<ID2D1ImageSource>
fn GetGradientMeshWorldBounds( &self, gradientmesh: Ref<'_, ID2D1GradientMesh>, ) -> Result<D2D_RECT_F>
fn DrawInk( &self, ink: Ref<'_, ID2D1Ink>, brush: Ref<'_, ID2D1Brush>, inkstyle: Ref<'_, ID2D1InkStyle>, )
fn DrawGradientMesh(&self, gradientmesh: Ref<'_, ID2D1GradientMesh>)
fn DrawGdiMetafile( &self, gdimetafile: Ref<'_, ID2D1GdiMetafile>, destinationrectangle: *const D2D_RECT_F, sourcerectangle: *const D2D_RECT_F, )
fn CreateTransformedImageSource( &self, imagesource: Ref<'_, ID2D1ImageSource>, properties: *const D2D1_TRANSFORMED_IMAGE_SOURCE_PROPERTIES, ) -> Result<ID2D1TransformedImageSource>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.