Skip to content

Commit dcf0bd7

Browse files
committed
reorganize project structure
1 parent c7e0fdf commit dcf0bd7

File tree

11 files changed

+77
-70
lines changed

11 files changed

+77
-70
lines changed

lib/main.dart

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,12 @@ import 'package:flutter/services.dart';
33
import 'package:provider/provider.dart';
44
import 'package:flutter_icons/flutter_icons.dart';
55

6-
import 'src/mathbox.dart';
7-
import 'src/result.dart';
8-
import 'src/mybutton.dart';
9-
import 'src/mathmodel.dart';
10-
import 'src/settingpage.dart';
6+
import 'package:num_plus_plus/src/widgets/mathbox.dart';
7+
import 'package:num_plus_plus/src/widgets/result.dart';
8+
import 'package:num_plus_plus/src/widgets/matrixbutton.dart';
9+
import 'package:num_plus_plus/src/widgets/keyboard.dart';
10+
import 'package:num_plus_plus/src/backend/mathmodel.dart';
11+
import 'package:num_plus_plus/src/pages/settingpage.dart';
1112

1213
void main() {
1314
runApp(MyApp());
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import 'package:math_expressions/math_expressions.dart';
33
import 'package:linalg/linalg.dart';
44
import 'dart:math' as math;
55

6-
import 'mathmodel.dart';
6+
import 'package:num_plus_plus/src/backend/mathmodel.dart';
77

88
abstract class Parser {
99
final bool isRadMode;
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import 'package:math_expressions/math_expressions.dart';
33
import 'package:linalg/linalg.dart';
44

55
// import 'function.dart';
6-
import 'latex.dart';
6+
import 'package:num_plus_plus/src/backend/latex.dart';
77

88
class MathModel with ChangeNotifier {
99
List<String> _latexExp = [''];
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import 'package:shared_preferences/shared_preferences.dart';
44
import 'package:url_launcher/url_launcher.dart';
55
import 'package:flutter_icons/flutter_icons.dart';
66

7-
import 'mathmodel.dart';
7+
import 'package:num_plus_plus/src/backend/mathmodel.dart';
88

99
class SettingPage extends StatelessWidget {
1010
@override
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@ import 'package:flutter/material.dart';
33
import 'package:flutter_icons/flutter_icons.dart';
44
import 'package:provider/provider.dart';
55

6-
import 'mathbox.dart';
7-
import 'mathmodel.dart';
8-
import 'settingpage.dart';
6+
import 'package:num_plus_plus/src/widgets/mathbox.dart';
7+
import 'package:num_plus_plus/src/pages/settingpage.dart';
8+
import 'package:num_plus_plus/src/backend/mathmodel.dart';
99

1010
class MyButton extends StatelessWidget {
1111
final Widget child;
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import 'package:flutter/services.dart';
77
import 'package:mime/mime.dart';
88
import 'package:provider/provider.dart';
99

10-
import 'mathmodel.dart';
10+
import 'package:num_plus_plus/src/backend/mathmodel.dart';
1111

1212
class Server {
1313
// class from inAppBrowser
Lines changed: 2 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -1,62 +1,8 @@
11
import 'package:flutter/material.dart';
2-
import 'package:num_plus_plus/src/mathbox.dart';
32
import 'package:provider/provider.dart';
43

5-
import 'mathmodel.dart';
6-
7-
class Result extends StatefulWidget {
8-
@override
9-
_ResultState createState() => _ResultState();
10-
}
11-
12-
class _ResultState extends State<Result> with TickerProviderStateMixin {
13-
14-
AnimationController animationController;
15-
Animation animation;
16-
17-
@override
18-
void initState() {
19-
super.initState();
20-
final mathModel = Provider.of<MathModel>(context, listen: false);
21-
animationController = AnimationController(duration: const Duration(milliseconds: 400),vsync: this);
22-
mathModel.equalAnimation = animationController;
23-
final curve = CurvedAnimation(parent: animationController, curve: Curves.easeInOutBack);
24-
animation = Tween<double>(begin: 30.0, end: 60.0).animate(curve)
25-
..addListener(() {setState(() {});});
26-
}
27-
28-
@override
29-
void dispose() {
30-
animationController.dispose();
31-
super.dispose();
32-
}
33-
34-
@override
35-
Widget build(BuildContext context) {
36-
return Container(
37-
height: animation.value,
38-
width: double.infinity,
39-
alignment: Alignment.centerRight,
40-
child: Consumer<MathModel>(
41-
builder: (_, model, __) {
42-
String text;
43-
if (model.result!='' && animationController.status == AnimationStatus.dismissed) {
44-
text = '= ' + model.result;
45-
} else {
46-
text = model.result;
47-
}
48-
return SelectableText(
49-
text,
50-
style: TextStyle(
51-
fontFamily: 'Minion-Pro',
52-
fontSize: animation.value - 5,
53-
),
54-
);
55-
},
56-
),
57-
);
58-
}
59-
}
4+
import 'package:num_plus_plus/src/backend/mathmodel.dart';
5+
import 'package:num_plus_plus/src/widgets/mathbox.dart';
606

617
class SingleMatrixButton extends StatelessWidget {
628
final Widget child;

lib/src/widgets/result.dart

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
import 'package:flutter/material.dart';
2+
import 'package:provider/provider.dart';
3+
4+
import 'package:num_plus_plus/src/backend/mathmodel.dart';
5+
6+
class Result extends StatefulWidget {
7+
@override
8+
_ResultState createState() => _ResultState();
9+
}
10+
11+
class _ResultState extends State<Result> with TickerProviderStateMixin {
12+
13+
AnimationController animationController;
14+
Animation animation;
15+
16+
@override
17+
void initState() {
18+
super.initState();
19+
final mathModel = Provider.of<MathModel>(context, listen: false);
20+
animationController = AnimationController(duration: const Duration(milliseconds: 400),vsync: this);
21+
mathModel.equalAnimation = animationController;
22+
final curve = CurvedAnimation(parent: animationController, curve: Curves.easeInOutBack);
23+
animation = Tween<double>(begin: 30.0, end: 60.0).animate(curve)
24+
..addListener(() {setState(() {});});
25+
}
26+
27+
@override
28+
void dispose() {
29+
animationController.dispose();
30+
super.dispose();
31+
}
32+
33+
@override
34+
Widget build(BuildContext context) {
35+
return Container(
36+
height: animation.value,
37+
width: double.infinity,
38+
alignment: Alignment.centerRight,
39+
child: Consumer<MathModel>(
40+
builder: (_, model, __) {
41+
String text;
42+
if (model.result!='' && animationController.status == AnimationStatus.dismissed) {
43+
text = '= ' + model.result;
44+
} else {
45+
text = model.result;
46+
}
47+
return SelectableText(
48+
text,
49+
style: TextStyle(
50+
fontFamily: 'Minion-Pro',
51+
fontSize: animation.value - 5,
52+
),
53+
);
54+
},
55+
),
56+
);
57+
}
58+
}

test/latex_parser_test.dart

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import 'package:flutter_test/flutter_test.dart';
22
import 'package:math_expressions/math_expressions.dart';
3-
import 'package:num_plus_plus/src/latex.dart';
3+
4+
import 'package:num_plus_plus/src/backend/latex.dart';
45

56
void main() {
67
test('Unit Test', () {

0 commit comments

Comments
 (0)