private IHmeResource ResourceToHmeResource(Events.ResourceInfo resourceInfo, Resource resource) { IHmeResource hmeResource = null; lock (_resourceManager) { if (_resourceManager.TryGetHmeResource(resourceInfo.ResourceId, out hmeResource)) { return(hmeResource); } } if (resource.IsMusic) { hmeResource = new StreamedMusic(this, resource.Name, resourceInfo.ResourceId); } else if (resource.IsResourceType(ResourceType.Image)) { hmeResource = new ImageResource(this, resource.Name, resourceInfo.ResourceId); } else if (resource.IsResourceType(ResourceType.Sound)) { hmeResource = new Sound(this, resource.Name, resourceInfo.ResourceId); } else if (resource.IsResourceType(ResourceType.TrueTypeFont)) { hmeResource = new TrueTypeFontResource(this, resource.Name, resourceInfo.ResourceId); } else { hmeResource = new GenericResource(this, resource.Name, resourceInfo.ResourceId); } return(hmeResource); }
/// <summary> /// Tests equality between two resources /// </summary> /// <param name="obj">Must be a TrueTypeFontResource.</param> /// <returns>true if the resources represent the same item; false otherwise.</returns> public override bool Equals(object obj) { TrueTypeFontResource ttfResource = obj as TrueTypeFontResource; if (ttfResource != null) { return(_resourceId == ttfResource._resourceId); } else { return(false); } }