Code cleanup

Signed-off-by: Andreas Fahrecker <AndreasFahrecker@gmail.com>
This commit is contained in:
Andreas Fahrecker
2021-02-12 00:17:19 +01:00
parent 5c2592f601
commit d06d7f1448
10 changed files with 94 additions and 128 deletions

View File

@ -0,0 +1,44 @@
import 'package:flutter/material.dart';
import 'package:flutter_redux/flutter_redux.dart';
import 'package:time_progress_tracker/actions/actions.dart';
import 'package:time_progress_tracker/models/time_progress.dart';
import 'package:time_progress_tracker/selectors/time_progress_selectors.dart';
import 'package:time_progress_tracker/widgets/home/home_progress_list_tile.dart';
class HomeActiveProgressesTab extends StatelessWidget {
@override
Widget build(BuildContext context) {
return StoreConnector(
onInit: loadTimeProgressListIfUnloaded,
converter: (store) => store.state.hasLoaded,
builder: (BuildContext context, dynamic hasLoaded) {
if (!(hasLoaded as bool))
return Center(
child: CircularProgressIndicator(),
);
return StoreConnector(
onInit: loadTimeProgressListIfUnloaded,
converter: (store) => activeTimeProgressesSelector(store.state),
builder: (BuildContext context, List<TimeProgress> timeProgresses) {
if (timeProgresses.length < 1)
return Container(
padding: EdgeInsets.all(16),
child: Center(
child: Text(
"You don't have any currently active time progresses, that are tracked."),
),
);
return ListView(
padding: EdgeInsets.all(8),
children: timeProgresses
.map((timeProgress) => HomeProgressListTile(
timeProgress: timeProgress,
))
.toList(),
);
},
);
},
);
}
}

View File

@ -0,0 +1,43 @@
import 'package:flutter/material.dart';
import 'package:flutter_redux/flutter_redux.dart';
import 'package:time_progress_tracker/actions/actions.dart';
import 'package:time_progress_tracker/models/time_progress.dart';
import 'package:time_progress_tracker/selectors/time_progress_selectors.dart';
import 'package:time_progress_tracker/widgets/home/home_progress_list_tile.dart';
class HomeInactiveProgressesTab extends StatelessWidget {
@override
Widget build(BuildContext context) {
return StoreConnector(
onInit: loadTimeProgressListIfUnloaded,
converter: (store) => store.state.hasLoaded,
builder: (BuildContext context, dynamic hasLoaded) {
if (!(hasLoaded as bool))
return Center(
child: CircularProgressIndicator(),
);
return StoreConnector(
onInit: loadTimeProgressListIfUnloaded,
converter: (store) => inactiveTimeProgressesSelector(store.state),
builder: (BuildContext context, List<TimeProgress> timeProgresses) {
if (timeProgresses.length < 1)
return Container(
padding: EdgeInsets.all(16),
child: Center(
child: Text(
"You don't have any currently inactive time progresses, that are tracked."),
),
);
return ListView(
padding: EdgeInsets.all(8),
children: timeProgresses
.map((timeProgress) =>
HomeProgressListTile(timeProgress: timeProgress))
.toList(),
);
},
);
},
);
}
}

View File

@ -0,0 +1,28 @@
import 'package:flutter/material.dart';
import 'package:package_info/package_info.dart';
import 'package:time_progress_tracker/app.dart';
class HomeSettingsTab extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Container(
padding: EdgeInsets.all(16),
child: Center(
child: Column(
children: [
Text("The Settings of this App are not yet implemented."),
FlatButton(
onPressed: () {
showAboutDialog(
context: context,
applicationName: TimeProgressTrackerApp.name,
applicationVersion: "Beta",
applicationLegalese: '\u00a9Andreas Fahrecker 2020-2021');
},
child: Text("About"))
],
),
),
);
}
}