tray_icon

Struct TrayIcon

Source
pub struct TrayIcon { /* private fields */ }
Expand description

Tray icon struct and associated methods.

This type is reference-counted and the icon is removed when the last instance is dropped.

Implementations§

Source§

impl TrayIcon

Source

pub fn new(attrs: TrayIconAttributes) -> Result<Self>

Builds and adds a new tray icon to the system tray.

§Platform-specific:
  • Linux: Sometimes the icon won’t be visible unless a menu is set. Setting an empty Menu is enough.
Source

pub fn with_id<I: Into<TrayIconId>>( id: I, attrs: TrayIconAttributes, ) -> Result<Self>

Builds and adds a new tray icon to the system tray with the specified Id.

See TrayIcon::new for more info.

Source

pub fn id(&self) -> &TrayIconId

Returns the id associated with this tray icon.

Source

pub fn set_icon(&self, icon: Option<Icon>) -> Result<()>

Set new tray icon. If None is provided, it will remove the icon.

Source

pub fn set_menu(&self, menu: Option<Box<dyn ContextMenu>>)

Set new tray menu.

§Platform-specific:
  • Linux: once a menu is set it cannot be removed so None has no effect
Source

pub fn set_tooltip<S: AsRef<str>>(&self, tooltip: Option<S>) -> Result<()>

Sets the tooltip for this tray icon.

§Platform-specific:
  • Linux: Unsupported
Source

pub fn set_title<S: AsRef<str>>(&self, title: Option<S>)

Sets the tooltip for this tray icon.

§Platform-specific:
  • Linux: The title will not be shown unless there is an icon as well. The title is useful for numerical and other frequently updated information. In general, it shouldn’t be shown unless a user requests it as it can take up a significant amount of space on the user’s panel. This may not be shown in all visualizations.
  • Windows: Unsupported
Source

pub fn set_visible(&self, visible: bool) -> Result<()>

Show or hide this tray icon

Source

pub fn set_temp_dir_path<P: AsRef<Path>>(&self, path: Option<P>)

Sets the tray icon temp dir path. Linux only.

On Linux, we need to write the icon to the disk and usually it will be $XDG_RUNTIME_DIR/tray-icon or $TEMP/tray-icon.

Source

pub fn set_icon_as_template(&self, is_template: bool)

Set the current icon as a template. macOS only.

Source

pub fn set_icon_with_as_template( &self, icon: Option<Icon>, is_template: bool, ) -> Result<()>

Source

pub fn set_show_menu_on_left_click(&self, enable: bool)

Disable or enable showing the tray menu on left click.

§Platform-specific:
  • Linux: Unsupported.
Source

pub fn rect(&self) -> Option<Rect>

Get tray icon rect.

§Platform-specific:
  • Linux: Unsupported.

Trait Implementations§

Source§

impl Clone for TrayIcon

Source§

fn clone(&self) -> TrayIcon

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

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 u8)

🔬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.
Source§

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