using System; using System.Collections.Generic; using System.Text; using System.ComponentModel; using System.Runtime.InteropServices; using System.IO; namespace Vestris.ResourceLib { /// /// This structure depicts the organization of data in a hardware-independent icon resource. /// public class IconDirectoryResource : DirectoryResource { /// /// A hardware-independent icon resource. /// /// Module handle. /// Resource ID. /// Resource type. /// Resource name. /// Language ID. /// Resource size. internal IconDirectoryResource(IntPtr hModule, IntPtr hResource, ResourceId type, ResourceId name, UInt16 language, int size) : base(hModule, hResource, type, name, language, size) { } /// /// A new hardware-independent icon resource. /// public IconDirectoryResource() : base(Kernel32.ResourceTypes.RT_GROUP_ICON) { } /// /// A new collection of icons that can be embedded into an executable file. /// public IconDirectoryResource(IconFile iconFile) : base(Kernel32.ResourceTypes.RT_GROUP_ICON) { for (UInt16 id = 0; id < iconFile.Icons.Count; id++) { IconResource iconResource = new IconResource( iconFile.Icons[id], new ResourceId(id), _language); Icons.Add(iconResource); } } } }