private void ImportScreen()
        {
            var dialog = new CommonOpenFileDialog();

            dialog.Filters.Add(new CommonFileDialogFilter("Images", "png,gif,jpg,jpeg,bmp"));

            dialog.Title            = "Select Screen Image";
            dialog.EnsureFileExists = true;
            dialog.EnsurePathExists = true;
            dialog.EnsureReadOnly   = false;
            dialog.EnsureValidNames = true;
            dialog.Multiselect      = false;
            dialog.ShowPlacesList   = true;

            if (dialog.ShowDialog() != CommonFileDialogResult.Ok)
            {
                return;
            }

            var image = new BitmapImage(new Uri(dialog.FileName));

            var tilesize = _currentStage.Tileset.Tileset.TileSize;

            if (image.PixelWidth % tilesize != 0 || image.PixelHeight % tilesize != 0)
            {
                CustomMessageBox.ShowError(string.Format("Screen image width and height must be multiples of {0}.", tilesize), "Import Error");
                return;
            }

            var importer = new ScreenImporter(_currentStage);
            var screen   = importer.Import(image);

            _currentStage.AddScreen(screen);
        }
        private void ImportScreen()
        {
            var dialog = new CommonOpenFileDialog();
            dialog.Filters.Add(new CommonFileDialogFilter("Images", "png,gif,jpg,jpeg,bmp"));

            dialog.Title = "Select Screen Image";
            dialog.EnsureFileExists = true;
            dialog.EnsurePathExists = true;
            dialog.EnsureReadOnly = false;
            dialog.EnsureValidNames = true;
            dialog.Multiselect = false;
            dialog.ShowPlacesList = true;

            if (dialog.ShowDialog() != CommonFileDialogResult.Ok)
                return;

            var image = new BitmapImage(new Uri(dialog.FileName));

            var tilesize = _currentStage.Tileset.Tileset.TileSize;
            if (image.PixelWidth % tilesize != 0 || image.PixelHeight % tilesize != 0)
            {
                CustomMessageBox.ShowError(string.Format("Screen image width and height must be multiples of {0}.", tilesize), "Import Error");
                return;
            }

            var importer = new ScreenImporter(_currentStage);
            var screen = importer.Import(image);
            _currentStage.AddScreen(screen);
        }