Enum wayland_server::protocol::wl_data_source::Request
source · [−]#[non_exhaustive]
pub enum Request {
Offer {
mime_type: String,
},
Destroy,
SetActions {
dnd_actions: DndAction,
},
}
Variants (Non-exhaustive)
This enum is marked as non-exhaustive
Offer
Fields
mime_type: String
add an offered mime type
This request adds a mime type to the set of mime types advertised to targets. Can be called several times to offer multiple types.
Destroy
destroy the data source
Destroy the data source.
This is a destructor, once received this object cannot be used any longer.
SetActions
Fields
dnd_actions: DndAction
set the available drag-and-drop actions
Sets the actions that the source side client supports for this operation. This request may trigger wl_data_source.action and wl_data_offer.action events if the compositor needs to change the selected action.
The dnd_actions argument must contain only values expressed in the wl_data_device_manager.dnd_actions enum, otherwise it will result in a protocol error.
This request must be made once only, and can only be made on sources used in drag-and-drop, so it must be performed before wl_data_device.start_drag. Attempting to use the source other than for drag-and-drop will raise a protocol error.
Only available since version 3 of the interface
Trait Implementations
sourceimpl MessageGroup for Request
impl MessageGroup for Request
sourceconst MESSAGES: &'static [MessageDesc] = _
const MESSAGES: &'static [MessageDesc] = _
Wire representation of this MessageGroup
type Map = ResourceMap
type Map = ResourceMap
The wrapper type for ObjectMap allowing the mapping of Object and NewId arguments to the object map during parsing. Read more
sourcefn is_destructor(&self) -> bool
fn is_destructor(&self) -> bool
Whether this message is a destructor Read more
sourcefn child<Meta: ObjectMetadata>(
opcode: u16,
version: u32,
meta: &Meta
) -> Option<Object<Meta>>
fn child<Meta: ObjectMetadata>(
opcode: u16,
version: u32,
meta: &Meta
) -> Option<Object<Meta>>
Retrieve the child Object
associated with this message if any
sourcefn from_raw(msg: Message, map: &mut Self::Map) -> Result<Self, ()>
fn from_raw(msg: Message, map: &mut Self::Map) -> Result<Self, ()>
Construct a message from its raw representation
sourceunsafe fn from_raw_c(
obj: *mut c_void,
opcode: u32,
args: *const wl_argument
) -> Result<Request, ()>
unsafe fn from_raw_c(
obj: *mut c_void,
opcode: u32,
args: *const wl_argument
) -> Result<Request, ()>
Construct a message of this group from its C representation Read more
sourcefn as_raw_c_in<F, T>(self, f: F) -> T where
F: FnOnce(u32, &mut [wl_argument]) -> T,
fn as_raw_c_in<F, T>(self, f: F) -> T where
F: FnOnce(u32, &mut [wl_argument]) -> T,
Build a C representation of this message Read more
Auto Trait Implementations
impl RefUnwindSafe for Request
impl Send for Request
impl Sync for Request
impl Unpin for Request
impl UnwindSafe for Request
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> Downcast for T where
T: Any,
impl<T> Downcast for T where
T: Any,
sourcefn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
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
. Read more
sourcefn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read more
sourcefn 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. Read more
sourcefn 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. Read more