[−][src]Struct wayland_server::protocol::wl_output::WlOutput
Implementations
impl WlOutput[src]
pub fn geometry(
&self,
x: i32,
y: i32,
physical_width: i32,
physical_height: i32,
subpixel: Subpixel,
make: String,
model: String,
transform: Transform
)[src]
&self,
x: i32,
y: i32,
physical_width: i32,
physical_height: i32,
subpixel: Subpixel,
make: String,
model: String,
transform: Transform
)
properties of the output
The geometry event describes geometric properties of the output. The event is sent when binding to the output object and whenever any of the properties change.
The physical size can be set to zero if it doesn't make sense for this output (e.g. for projectors or virtual outputs).
Note: wl_output only advertises partial information about the output position and identification. Some compositors, for instance those not implementing a desktop-style output layout or those exposing virtual outputs, might fake this information. Instead of using x and y, clients should use xdg_output.logical_position. Instead of using make and model, clients should use xdg_output.name and xdg_output.description.
pub fn mode(&self, flags: Mode, width: i32, height: i32, refresh: i32)[src]
advertise available modes for the output
The mode event describes an available mode for the output.
The event is sent when binding to the output object and there will always be one mode, the current mode. The event is sent again if an output changes mode, for the mode that is now current. In other words, the current mode is always the last mode that was received with the current flag set.
The size of a mode is given in physical hardware units of the output device. This is not necessarily the same as the output size in the global compositor space. For instance, the output may be scaled, as described in wl_output.scale, or transformed, as described in wl_output.transform. Clients willing to retrieve the output size in the global compositor space should use xdg_output.logical_size instead.
The vertical refresh rate can be set to zero if it doesn't make sense for this output (e.g. for virtual outputs).
Clients should not use the refresh rate to schedule frames. Instead, they should use the wl_surface.frame event or the presentation-time protocol.
Note: this information is not always meaningful for all outputs. Some compositors, such as those exposing virtual outputs, might fake the refresh rate or the size.
pub fn done(&self)[src]
sent all information about output
This event is sent after all other properties have been sent after binding to the output object and after any other property changes done after that. This allows changes to the output properties to be seen as atomic, even if they happen via multiple events.
Only available since version 2 of the interface.
pub fn scale(&self, factor: i32)[src]
output scaling properties
This event contains scaling geometry information that is not in the geometry event. It may be sent after binding the output object or if the output scale changes later. If it is not sent, the client should assume a scale of 1.
A scale larger than 1 means that the compositor will automatically scale surface buffers by this amount when rendering. This is used for very high resolution displays where applications rendering at the native resolution would be too small to be legible.
It is intended that scaling aware clients track the current output of a surface, and if it is on a scaled output it should use wl_surface.set_buffer_scale with the scale of the output. That way the compositor can avoid scaling the surface, and the client can supply a higher detail image.
Only available since version 2 of the interface.
Trait Implementations
impl AsRef<Resource<WlOutput>> for WlOutput[src]
impl Clone for WlOutput[src]
impl Debug for WlOutput[src]
impl Eq for WlOutput[src]
impl From<Resource<WlOutput>> for WlOutput[src]
impl From<WlOutput> for Resource<WlOutput>[src]
impl Interface for WlOutput[src]
type Request = Request
Set of requests associated to this interface Read more
type Event = Event
Set of events associated to this interface Read more
pub const NAME: &'static str[src]
pub const VERSION: u32[src]
pub fn c_interface() -> *const wl_interface[src]
impl PartialEq<WlOutput> for WlOutput[src]
impl StructuralEq for WlOutput[src]
impl StructuralPartialEq for WlOutput[src]
Auto Trait Implementations
impl !RefUnwindSafe for WlOutput[src]
impl Send for WlOutput[src]
impl Sync for WlOutput[src]
impl Unpin for WlOutput[src]
impl !UnwindSafe for WlOutput[src]
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T[src]
impl<T> Downcast for T where
T: Any, [src]
T: Any,
pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>[src]
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>[src]
pub fn as_any(&self) -> &(dyn Any + 'static)[src]
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)[src]
impl<T> DowncastSync for T where
T: Send + Sync + Any, [src]
T: Send + Sync + Any,
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone, [src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T[src]
pub fn clone_into(&self, target: &mut T)[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,