import 'package:flutter/material.dart'; import 'package:graphx/graphx.dart'; import 'zoom_scene.dart'; /// Live demo: /// https://graphx-gesture-sample.surge.sh /// void main() { runApp(MyApp()); } class MyApp extends StatelessWidget { @override Widget build(BuildContext context) { return MaterialApp( theme: ThemeData.dark(), home: Scaffold( appBar: AppBar( title: Text( 'graphx pan + zoom + rotation', style: TextStyle(color: Colors.white60, fontSize: 12), ), ), body: GestureDetector( onScaleStart: (e) => mps.emit1(ZoomEvent.scaleStart, e), onScaleUpdate: (e) => mps.emit1(ZoomEvent.scaleUpdate, e), onScaleEnd: (e) => mps.emit1(ZoomEvent.scaleEnd, e), child: SceneBuilderWidget( builder: () => SceneController( front: ZoomScene(), config: SceneConfig.tools, ), ), ), floatingActionButton: FloatingActionButton( onPressed: () => mps.emit(ZoomEvent.scaleReset), tooltip: 'reset', child: Icon(Icons.aspect_ratio), ), ), ); } }