pub struct ContextHolder<T> {
pub window: Window,
pub control_flow: Option<ControlFlow>,
/* private fields */
}Expand description
A holder of context and related items
Fields§
§window: WindowThe window
control_flow: Option<ControlFlow>The last control flow of the window
Implementations§
Source§impl<T> ContextHolder<T>
impl<T> ContextHolder<T>
Sourcepub fn new(
context: T,
window: Window,
ws: Surface<WindowSurface>,
display: Display,
options: TrackedWindowOptions,
) -> Self
pub fn new( context: T, window: Window, ws: Surface<WindowSurface>, display: Display, options: TrackedWindowOptions, ) -> Self
Create a new context holder
Source§impl ContextHolder<PossiblyCurrentContext>
impl ContextHolder<PossiblyCurrentContext>
Sourcepub fn swap_buffers(&self) -> Result<()>
pub fn swap_buffers(&self) -> Result<()>
Call swap_buffers. linux targets have vsync specifically disabled because it causes problems with hidden windows.
Sourcepub fn resize(&self, size: PhysicalSize<u32>)
pub fn resize(&self, size: PhysicalSize<u32>)
Resize the window to the specified size. The size cannot be zero in either dimension.
Sourcepub fn make_current(&self) -> Result<()>
pub fn make_current(&self) -> Result<()>
Make a possibly current context current
Sourcepub fn get_proc_address(&self, s: &str) -> *const c_void
pub fn get_proc_address(&self, s: &str) -> *const c_void
convenience function to call get_proc_address on the display of this struct
Source§impl ContextHolder<NotCurrentContext>
impl ContextHolder<NotCurrentContext>
Sourcepub fn make_current(
self,
) -> Result<ContextHolder<PossiblyCurrentContext>, Error>
pub fn make_current( self, ) -> Result<ContextHolder<PossiblyCurrentContext>, Error>
Transforms a not current context into a possibly current context
Auto Trait Implementations§
impl<T> Freeze for ContextHolder<T>where
T: Freeze,
impl<T> !RefUnwindSafe for ContextHolder<T>
impl<T> Send for ContextHolder<T>where
T: Send,
impl<T> !Sync for ContextHolder<T>
impl<T> Unpin for ContextHolder<T>where
T: Unpin,
impl<T> !UnwindSafe for ContextHolder<T>
Blanket Implementations§
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> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§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.Source§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.Source§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.Source§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.