pub enum IconType {
Show 19 variants RGB24_16x16, Mask8_16x16, RGB24_32x32, Mask8_32x32, RGB24_48x48, Mask8_48x48, RGB24_128x128, Mask8_128x128, RGBA32_16x16, RGBA32_16x16_2x, RGBA32_32x32, RGBA32_32x32_2x, RGBA32_64x64, RGBA32_128x128, RGBA32_128x128_2x, RGBA32_256x256, RGBA32_256x256_2x, RGBA32_512x512, RGBA32_512x512_2x,
}
Expand description

Types of icon elements that can be decoded as images or masks.

This type enumerates the kinds of IconElement that can be decoded by this library; each IconType corresponds to a particular OSType. The non-mask IconType values can also be used with the higher-level IconFamily methods to encode and decode complete icons that consist of multiple IconElements.

Variants

RGB24_16x16

16x16 24-bit icon (without alpha).

Mask8_16x16

16x16 8-bit alpha mask.

RGB24_32x32

32x32 24-bit icon (without alpha).

Mask8_32x32

32x32 8-bit alpha mask.

RGB24_48x48

48x48 24-bit icon (without alpha).

Mask8_48x48

48x48 8-bit alpha mask.

RGB24_128x128

128x128 24-bit icon (without alpha).

Mask8_128x128

128x128 8-bit alpha mask.

RGBA32_16x16

16x16 32-bit icon.

RGBA32_16x16_2x

16x16 32-bit icon at 2x “retina” density (so, 32 by 32 pixels).

RGBA32_32x32

32x32 32-bit icon.

RGBA32_32x32_2x

32x32 32-bit icon at 2x “retina” density (so, 64 by 64 pixels).

RGBA32_64x64

64x64 32-bit icon. (For whatever reason, the ICNS format has no corresponding type for a 64x64 icon at 2x “retina” density.)

RGBA32_128x128

128x128 32-bit icon.

RGBA32_128x128_2x

128x128 32-bit icon at 2x “retina” density (so, 256 by 256 pixels).

RGBA32_256x256

256x256 32-bit icon.

RGBA32_256x256_2x

256x256 32-bit icon at 2x “retina” density (so, 512 by 512 pixels).

RGBA32_512x512

512x512 32-bit icon.

RGBA32_512x512_2x

512x512 32-bit icon at 2x “retina” density (so, 1024 by 1024 pixels).

Implementations

Get the icon type associated with the given OSType, if any.

Return a (non-mask) icon type that has the given pixel width/height, if any.

Examples
use tauri_icns::IconType;
assert_eq!(IconType::from_pixel_size(48, 48),
           Some(IconType::RGB24_48x48));
assert_eq!(IconType::from_pixel_size(256, 256),
           Some(IconType::RGBA32_256x256));
assert_eq!(IconType::from_pixel_size(1024, 1024),
           Some(IconType::RGBA32_512x512_2x));

Return a (non-mask) icon type that has the given pixel width/height and pixel density, if any.

Examples
use tauri_icns::IconType;
assert_eq!(IconType::from_pixel_size_and_density(48, 48, 1),
           Some(IconType::RGB24_48x48));
assert_eq!(IconType::from_pixel_size_and_density(256, 256, 1),
           Some(IconType::RGBA32_256x256));
assert_eq!(IconType::from_pixel_size_and_density(256, 256, 2),
           Some(IconType::RGBA32_128x128_2x));

Get the OSType that represents this icon type.

Returns true if this is icon type is a mask for some other icon type.

Examples
use tauri_icns::IconType;
assert!(!IconType::RGB24_16x16.is_mask());
assert!(IconType::Mask8_16x16.is_mask());
assert!(!IconType::RGBA32_16x16.is_mask());

If this icon type has an associated mask type, returns that mask type; if this is a mask icon type, or a non-mask icon type that has no associated mask type, returns None.

Examples
use tauri_icns::IconType;
assert_eq!(IconType::RGB24_16x16.mask_type(),
           Some(IconType::Mask8_16x16));
assert_eq!(IconType::Mask8_16x16.mask_type(), None);
assert_eq!(IconType::RGBA32_16x16.mask_type(), None);

Returns the pixel data width of this icon type. Normally this is the same as the screen width, but for 2x “retina” density icons, this will be twice that value.

Examples
use tauri_icns::IconType;
assert_eq!(IconType::Mask8_128x128.pixel_width(), 128);
assert_eq!(IconType::RGBA32_256x256.pixel_width(), 256);
assert_eq!(IconType::RGBA32_256x256_2x.pixel_width(), 512);

Returns the pixel data height of this icon type. Normally this is the same as the screen height, but for 2x “retina” density icons, this will be twice that value.

Examples
use tauri_icns::IconType;
assert_eq!(IconType::Mask8_128x128.pixel_height(), 128);
assert_eq!(IconType::RGBA32_256x256.pixel_height(), 256);
assert_eq!(IconType::RGBA32_256x256_2x.pixel_height(), 512);

Returns the pixel density for this icon type – that is, 2 for 2x “retina” density icons, or 1 for other icon types.

Examples
use tauri_icns::IconType;
assert_eq!(IconType::Mask8_128x128.pixel_density(), 1);
assert_eq!(IconType::RGBA32_256x256.pixel_density(), 1);
assert_eq!(IconType::RGBA32_256x256_2x.pixel_density(), 2);

Returns the screen width of this icon type. Normally this is the same as the pixel width, but for 2x “retina” density icons, this will be half that value.

Examples
use tauri_icns::IconType;
assert_eq!(IconType::Mask8_128x128.screen_width(), 128);
assert_eq!(IconType::RGBA32_256x256.screen_width(), 256);
assert_eq!(IconType::RGBA32_256x256_2x.screen_width(), 256);

Returns the screen height of this icon type. Normally this is the same as the pixel height, but for 2x “retina” density icons, this will be half that value.

Examples
use tauri_icns::IconType;
assert_eq!(IconType::Mask8_128x128.screen_height(), 128);
assert_eq!(IconType::RGBA32_256x256.screen_height(), 256);
assert_eq!(IconType::RGBA32_256x256_2x.screen_height(), 256);

Returns the encoding used within an ICNS file for this icon type.

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Feeds this value into the given Hasher. Read more

Feeds a slice of this type into the given Hasher. Read more

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

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

The resulting type after obtaining ownership.

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

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

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.