Class DesktopIcon
- Namespace
- ZeroInstall.DesktopIntegration.AccessPoints
- Assembly
- ZeroInstall.DesktopIntegration.dll
Creates an icon for an application on the user's desktop.
[Equatable]
public class DesktopIcon : IconAccessPoint, IEquatable<XmlUnknown>, ICloneable<AccessPoint>, IEquatable<CommandAccessPoint>, IEquatable<DesktopIcon>
- Inheritance
-
DesktopIcon
- Implements
- Inherited Members
Fields
AltName
public const string AltName = "desktop"
Field Value
TagName
public const string TagName = "desktop-icon"
Field Value
Methods
Apply(AppEntry, Feed, IIconStore, bool)
Applies this access point to the current machine.
public override void Apply(AppEntry appEntry, Feed feed, IIconStore iconStore, bool machineWide)
Parameters
appEntry
AppEntryThe application being integrated.
feed
FeedThe feed providing additional metadata, icons, etc. for the application.
iconStore
IIconStoreStores icon files downloaded from the web as local files.
machineWide
boolApply the configuration machine-wide instead of just for the current user.
Exceptions
- KeyNotFoundException
An AccessPoint reference to a Capability is invalid.
- OperationCanceledException
The user canceled the task.
- IOException
A problem occurred while writing to the filesystem or registry.
- WebException
A problem occurred while downloading additional data (such as icons).
- UnauthorizedAccessException
Write access to the filesystem or registry is not permitted.
Clone()
Creates a deep copy of this AccessPoint instance.
public override AccessPoint Clone()
Returns
- AccessPoint
The new copy of the AccessPoint.
Equals(object?)
Determines whether the specified object is equal to the current object.
public override bool Equals(object? obj)
Parameters
obj
objectThe object to compare with the current object.
Returns
Equals(DesktopIcon?)
protected bool Equals(DesktopIcon? other)
Parameters
other
DesktopIcon
Returns
GetConflictIDs(AppEntry)
Retrieves identifiers from a namespace global to all AccessPoints. Collisions in this namespace indicate that the respective AccessPoints are in conflict cannot be applied on a system at the same time.
public override IEnumerable<string> GetConflictIDs(AppEntry appEntry)
Parameters
appEntry
AppEntryThe application entry containing this access point.
Returns
Remarks
These identifiers are not guaranteed to stay the same between versions. They should not be stored in files but instead always generated on demand.
Exceptions
- KeyNotFoundException
An AccessPoint reference to a Capability is invalid.
GetHashCode()
Serves as the default hash function.
public override int GetHashCode()
Returns
- int
A hash code for the current object.
Unapply(AppEntry, bool)
Unapply this access point on the current machine.
public override void Unapply(AppEntry appEntry, bool machineWide)
Parameters
appEntry
AppEntryThe application entry containing this access point.
machineWide
boolApply the configuration machine-wide instead of just for the current user.
Exceptions
- KeyNotFoundException
An AccessPoint reference to a Capability is invalid.
- IOException
A problem occurred while writing to the filesystem or registry.
- UnauthorizedAccessException
Write access to the filesystem or registry is not permitted.
Operators
operator ==(DesktopIcon?, DesktopIcon?)
Indicates whether the object on the left is equal to the object on the right.
public static bool operator ==(DesktopIcon? left, DesktopIcon? right)
Parameters
left
DesktopIconThe left object
right
DesktopIconThe right object
Returns
- bool
true if the objects are equal; otherwise, false.
operator !=(DesktopIcon?, DesktopIcon?)
Indicates whether the object on the left is not equal to the object on the right.
public static bool operator !=(DesktopIcon? left, DesktopIcon? right)
Parameters
left
DesktopIconThe left object
right
DesktopIconThe right object
Returns
- bool
true if the objects are not equal; otherwise, false.