public void DeleteSprite(Sprite sprite) { string usageReport = new SpriteUsageChecker().GetSpriteUsageReport(sprite.Number, _game); if (usageReport != null) { throw new SpriteInUseException("Cannot delete a sprite because it is in use:" + Environment.NewLine + usageReport); } else if (AboutToDeleteSprite(sprite.Number)) { SpriteFolder parent = _game.RootSpriteFolder.FindFolderThatContainsSprite(sprite.Number); if (parent == null) { throw new AGSEditorException("The sprite " + sprite.Number + " could not be found in any sprite folders"); } parent.Sprites.Remove(sprite); Factory.NativeProxy.DeleteSprite(sprite); } else { throw new SpriteInUseException("An editor component did not allow sprite " + sprite.Number + " to be deleted"); } }
public void DeleteSprite(Sprite sprite) { string usageReport = new SpriteUsageChecker().GetSpriteUsageReport(sprite.Number, _game); if (usageReport != null) { throw new SpriteInUseException("Une image n'a pas pu être supprimée car elle est actuellement utilisée :" + Environment.NewLine + usageReport); } else if (AboutToDeleteSprite(sprite.Number)) { SpriteFolder parent = _game.RootSpriteFolder.FindFolderThatContainsSprite(sprite.Number); if (parent == null) { throw new AGSEditorException("L'image " + sprite.Number + " n'a été trouvée dans aucun dossier d'images"); } parent.Sprites.Remove(sprite); Factory.NativeProxy.DeleteSprite(sprite); } else { throw new SpriteInUseException("Un composant de l'éditeur a empêché l'image " + sprite.Number + " d'être supprimée"); } }