From 905aecb6f21e460d47d9e186008a9d6b69b40c57 Mon Sep 17 00:00:00 2001 From: fuwa Date: Tue, 25 Jun 2019 15:34:47 +0800 Subject: [PATCH] use Syncing state --- .../controller/{running.dart => syncing.dart} | 0 cyberwow/lib/main.dart | 12 ++++++------ cyberwow/lib/state.dart | 16 ++++++++-------- .../lib/widget/{running.dart => syncing.dart} | 2 +- 4 files changed, 15 insertions(+), 15 deletions(-) rename cyberwow/lib/controller/{running.dart => syncing.dart} (100%) rename cyberwow/lib/widget/{running.dart => syncing.dart} (96%) diff --git a/cyberwow/lib/controller/running.dart b/cyberwow/lib/controller/syncing.dart similarity index 100% rename from cyberwow/lib/controller/running.dart rename to cyberwow/lib/controller/syncing.dart diff --git a/cyberwow/lib/main.dart b/cyberwow/lib/main.dart index 17e9de7..82edc32 100644 --- a/cyberwow/lib/main.dart +++ b/cyberwow/lib/main.dart @@ -28,10 +28,10 @@ import 'dart:async'; import 'state.dart'; import 'config.dart'; import 'controller/loading.dart'; -import 'controller/running.dart'; +import 'controller/syncing.dart'; import 'widget/loading.dart'; import 'widget/blank.dart'; -import 'widget/running.dart'; +import 'widget/syncing.dart'; import 'widget/synced.dart'; void main() => runApp(MyApp()); @@ -86,10 +86,10 @@ class _MyHomePageState extends State final bundle = DefaultAssetBundle.of(context); final loading = deployBinary(bundle, resourcePath, binName); - RunningState _runningState = await _loadingState.next(loading, ''); + SyncingState _syncingState = await _loadingState.next(loading, ''); - final running = runBinary(binName); - SyncedState _syncedState = await _runningState.next(running); + final syncing = runBinary(binName); + SyncedState _syncedState = await _syncingState.next(syncing); await _syncedState.next(); } @@ -121,7 +121,7 @@ class _MyHomePageState extends State ( (s) => buildBlank(context, s), (s) => buildLoading(context, s), - (s) => buildRunning(context, s), + (s) => buildSyncing(context, s), (s) => buildSynced(context, s), ), ); diff --git a/cyberwow/lib/state.dart b/cyberwow/lib/state.dart index d39aac8..f77350c 100644 --- a/cyberwow/lib/state.dart +++ b/cyberwow/lib/state.dart @@ -36,7 +36,7 @@ abstract class AppState { ( T Function(BlankState) useBlankState, T Function(LoadingState) useLoadingState, - T Function(RunningState) useRunningState, + T Function(SyncingState) useSyncingState, T Function(SyncedState) useSyncedState, ) { @@ -46,8 +46,8 @@ abstract class AppState { if (this is LoadingState) { return useLoadingState(this); } - if (this is RunningState) { - return useRunningState(this); + if (this is SyncingState) { + return useSyncingState(this); } if (this is SyncedState) { return useSyncedState(this); @@ -86,7 +86,7 @@ class LoadingState extends HookedState { } - Future next(Stream loadingProgress, String status) async { + Future next(Stream loadingProgress, String status) async { Future showBanner() async { var chars = []; banner.runes.forEach((int rune) { @@ -118,16 +118,16 @@ class LoadingState extends HookedState { await Future.wait([load(), showBanner()]); } - RunningState _next = RunningState(setState, status); + SyncingState _next = SyncingState(setState, status); setState(_next); return _next; } } -class RunningState extends HookedState { +class SyncingState extends HookedState { String status; - RunningState(f, this.status) : super (f); + SyncingState(f, this.status) : super (f); void append(String msg) { this.status += msg; @@ -135,7 +135,7 @@ class RunningState extends HookedState { } Future next(Stream processOutput) async { - print("RunningState.next"); + print("SyncingState.next"); await for (var line in processOutput) { append(line); diff --git a/cyberwow/lib/widget/running.dart b/cyberwow/lib/widget/syncing.dart similarity index 96% rename from cyberwow/lib/widget/running.dart rename to cyberwow/lib/widget/syncing.dart index 5afc6d5..439d749 100644 --- a/cyberwow/lib/widget/running.dart +++ b/cyberwow/lib/widget/syncing.dart @@ -24,7 +24,7 @@ import 'package:flutter/material.dart'; import '../state.dart'; import '../config.dart'; -Widget buildRunning(BuildContext context, RunningState state) { +Widget buildSyncing(BuildContext context, SyncingState state) { return Scaffold ( // appBar: AppBar