private void Open()
        {
            OpenResourcePackRequest.Raise(new Notification
            {
                Content = "Open Resource Pack",
                Title   = "Open Resource Pack"
            }, delegate(INotification notification)
            {
                _loadedResourcePackFileName = notification.Content as string;
                if (_loadedResourcePackFileName == null)
                {
                    return;
                }

                ClearLoadedData();
                var resources = _domainService.LoadResourcePack(_loadedResourcePackFileName).ToList();
                BGMResources.AddRange(resources.Where(x => x.ResourceType == ResourceType.BGM));
                SFXResources.AddRange(resources.Where(x => x.ResourceType == ResourceType.SFX));
                CreatureResources.AddRange(resources.Where(x => x.ResourceType == ResourceType.Creature));
                IconResources.AddRange(resources.Where(x => x.ResourceType == ResourceType.Icon));
                ItemResources.AddRange(resources.Where(x => x.ResourceType == ResourceType.Item));
                PortraitResources.AddRange(resources.Where(x => x.ResourceType == ResourceType.Portrait));
                TilesetResources.AddRange(resources.Where(x => x.ResourceType == ResourceType.Tileset));
            });
        }