/// Visual browser for decoded VGA pictures and UI art. library; import 'package:flutter/material.dart'; import 'package:wolf_3d_dart/wolf_3d_data_types.dart'; import 'package:wolf_3d_renderer/wolf_3d_asset_painter.dart'; /// Shows each VGA image extracted from the currently selected game data set. class VgaGallery extends StatelessWidget { /// Raw VGA images decoded from the active asset pack. final List images; /// Creates the gallery for [images]. const VgaGallery({super.key, required this.images}); @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar(title: const Text("VGA Image Gallery")), backgroundColor: Colors.black, body: GridView.builder( gridDelegate: const SliverGridDelegateWithMaxCrossAxisExtent( maxCrossAxisExtent: 150, crossAxisSpacing: 8, mainAxisSpacing: 8, ), itemCount: images.length, itemBuilder: (context, index) { return Card( color: Colors.blueGrey, child: Column( mainAxisAlignment: MainAxisAlignment.center, spacing: 8, children: [ Text( "Index: $index\n${images[index].width} x ${images[index].height}", style: const TextStyle(color: Colors.white, fontSize: 12), textAlign: TextAlign.center, ), Expanded( child: Center( child: WolfAssetPainter.vga(images[index]), ), ), ], ), ); }, ), ); } }