tauri_winrt_notification

Struct ToastNotification

Source
pub struct ToastNotification(/* private fields */);

Implementations§

Source§

impl ToastNotification

Source

pub fn Content(&self) -> Result<XmlDocument, Error>

Source

pub fn SetExpirationTime<P0>(&self, value: P0) -> Result<(), Error>
where P0: Param<IReference<DateTime>>,

Source

pub fn ExpirationTime(&self) -> Result<IReference<DateTime>, Error>

Source

pub fn Dismissed<P0>( &self, handler: P0, ) -> Result<EventRegistrationToken, Error>
where P0: Param<TypedEventHandler<ToastNotification, ToastDismissedEventArgs>>,

Source

pub fn RemoveDismissed( &self, token: EventRegistrationToken, ) -> Result<(), Error>

Source

pub fn Activated<P0>( &self, handler: P0, ) -> Result<EventRegistrationToken, Error>
where P0: Param<TypedEventHandler<ToastNotification, IInspectable>>,

Source

pub fn RemoveActivated( &self, token: EventRegistrationToken, ) -> Result<(), Error>

Source

pub fn Failed<P0>(&self, handler: P0) -> Result<EventRegistrationToken, Error>
where P0: Param<TypedEventHandler<ToastNotification, ToastFailedEventArgs>>,

Source

pub fn RemoveFailed(&self, token: EventRegistrationToken) -> Result<(), Error>

Source

pub fn SetTag(&self, value: &HSTRING) -> Result<(), Error>

Source

pub fn Tag(&self) -> Result<HSTRING, Error>

Source

pub fn SetGroup(&self, value: &HSTRING) -> Result<(), Error>

Source

pub fn Group(&self) -> Result<HSTRING, Error>

Source

pub fn SetSuppressPopup(&self, value: bool) -> Result<(), Error>

Source

pub fn SuppressPopup(&self) -> Result<bool, Error>

Source

pub fn NotificationMirroring(&self) -> Result<NotificationMirroring, Error>

Source

pub fn SetNotificationMirroring( &self, value: NotificationMirroring, ) -> Result<(), Error>

Source

pub fn RemoteId(&self) -> Result<HSTRING, Error>

Source

pub fn SetRemoteId(&self, value: &HSTRING) -> Result<(), Error>

Source

pub fn Data(&self) -> Result<NotificationData, Error>

Source

pub fn SetData<P0>(&self, value: P0) -> Result<(), Error>
where P0: Param<NotificationData>,

Source

pub fn Priority(&self) -> Result<ToastNotificationPriority, Error>

Source

pub fn SetPriority(&self, value: ToastNotificationPriority) -> Result<(), Error>

Source

pub fn ExpiresOnReboot(&self) -> Result<bool, Error>

Source

pub fn SetExpiresOnReboot(&self, value: bool) -> Result<(), Error>

Source

pub fn CreateToastNotification<P0>( content: P0, ) -> Result<ToastNotification, Error>
where P0: Param<XmlDocument>,

Examples found in repository?
examples/without_library.rs (line 49)
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
fn do_toast() -> windows::core::Result<()> {
    let toast_xml = XmlDocument::new()?;

    toast_xml.LoadXml(&HSTRING::from(
        format!(r#"<toast duration="long">
                <visual>
                    <binding template="ToastGeneric">
                        <text id="1">title</text>
                        <text id="2">first line</text>
                        <text id="3">third line</text>
                        <image placement="appLogoOverride" hint-crop="circle" src="file:///c:/path_to_image_above_toast.jpg" alt="alt text" />
                        <image placement="Hero" src="file:///C:/path_to_image_in_toast.jpg" alt="alt text2" />
                        <image id="1" src="file:///{}" alt="another_image" />
                    </binding>
                </visual>
                <audio src="ms-winsoundevent:Notification.SMS" />
                <!-- <audio silent="true" /> -->
            </toast>"#,
            quick_xml::escape::escape(&Path::new("C:\\path_to_image_in_toast.jpg").display().to_string()),
    ))).expect("the xml is malformed");

    // Create the toast and attach event listeners
    let toast_template = ToastNotification::CreateToastNotification(&toast_xml)?;

    // If you have a valid app id, (ie installed using wix) then use it here.
    let toast_notifier = ToastNotificationManager::CreateToastNotifierWithId(&HSTRING::from(
        "{1AC14E77-02E7-4E5D-B744-2EB1AE5198B7}\\WindowsPowerShell\\v1.0\\powershell.exe",
    ))?;

    // Show the toast.
    // Note this returns success in every case, including when the toast isn't shown.
    toast_notifier.Show(&toast_template)
}

Trait Implementations§

Source§

impl Clone for ToastNotification

Source§

fn clone(&self) -> ToastNotification

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ToastNotification

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
Source§

impl Interface for ToastNotification

Source§

const IID: GUID = <IToastNotification as windows_core::Interface>::IID

The GUID associated with the interface.
Source§

fn as_raw(&self) -> *mut c_void

Returns the raw COM interface pointer. The resulting pointer continues to be owned by the Interface implementation.
Source§

fn into_raw(self) -> *mut c_void

Returns the raw COM interface pointer and releases ownership. It the caller’s responsibility to release the COM interface pointer.
Source§

unsafe fn from_raw(raw: *mut c_void) -> Self

Creates an Interface by taking ownership of the raw COM interface pointer. Read more
Source§

unsafe fn from_raw_borrowed(raw: &*mut c_void) -> Option<&Self>

Creates an Interface that is valid so long as the raw COM interface pointer is valid. Read more
Source§

fn cast<T>(&self) -> Result<T, Error>
where T: Interface,

Attempts to cast the current interface to another interface using QueryInterface. Read more
Source§

fn cast_to_any<T>(&self) -> Result<&(dyn Any + 'static), Error>
where T: ComObjectInner, <T as ComObjectInner>::Outer: Any + 'static + IUnknownImpl<Impl = T>,

This casts the given COM interface to [&dyn Any]. Read more
Source§

fn is_object<T>(&self) -> bool
where T: ComObjectInner, <T as ComObjectInner>::Outer: Any + 'static + IUnknownImpl<Impl = T>,

Returns true if the given COM interface refers to an implementation of T. Read more
Source§

fn cast_object_ref<T>(&self) -> Result<&<T as ComObjectInner>::Outer, Error>
where T: ComObjectInner, <T as ComObjectInner>::Outer: Any + 'static + IUnknownImpl<Impl = T>,

This casts the given COM interface to [&dyn Any]. It returns a reference to the “outer” object, e.g. &MyApp_Impl, not the inner &MyApp object. Read more
Source§

fn cast_object<T>(&self) -> Result<ComObject<T>, Error>
where T: ComObjectInner, <T as ComObjectInner>::Outer: Any + 'static + IUnknownImpl<Impl = T>,

This casts the given COM interface to [&dyn Any]. It returns a reference to the “outer” object, e.g. MyApp_Impl, not the inner MyApp object. Read more
Source§

fn downgrade(&self) -> Result<Weak<Self>, Error>

Attempts to create a Weak reference to this object.
Source§

unsafe fn query(&self, iid: *const GUID, interface: *mut *mut c_void) -> HRESULT

Call QueryInterface on this interface Read more
Source§

fn to_ref(&self) -> InterfaceRef<'_, Self>

Creates an InterfaceRef for this reference. The InterfaceRef tracks lifetimes statically, and eliminates the need for dynamic reference count adjustments (AddRef/Release).
Source§

impl PartialEq for ToastNotification

Source§

fn eq(&self, other: &ToastNotification) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for ToastNotification

Source§

impl Send for ToastNotification

Source§

impl StructuralPartialEq for ToastNotification

Source§

impl Sync for ToastNotification

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.