From aec7fdaee5f01e9c580e0a699065152be0de6bb8 Mon Sep 17 00:00:00 2001 From: X Code Date: Mon, 16 May 2022 16:04:08 -0700 Subject: [PATCH] Add getFontSize function --- lib/src/utils/font.dart | 18 ++++++++++++++++++ lib/src/widgets/text_line.dart | 15 ++------------- 2 files changed, 20 insertions(+), 13 deletions(-) create mode 100644 lib/src/utils/font.dart diff --git a/lib/src/utils/font.dart b/lib/src/utils/font.dart new file mode 100644 index 00000000..cf69a676 --- /dev/null +++ b/lib/src/utils/font.dart @@ -0,0 +1,18 @@ +double getFontSize(dynamic sizeValue) { + if (sizeValue.value is double) { + return sizeValue; + } + + if (sizeValue is int) { + return sizeValue.toDouble(); + } + + double? fontSize; + if (sizeValue is String) { + fontSize = double.tryParse(sizeValue); + if (fontSize == null) { + throw 'Invalid size $sizeValue'; + } + } + return fontSize!; +} diff --git a/lib/src/widgets/text_line.dart b/lib/src/widgets/text_line.dart index 43f42e86..3a4e6092 100644 --- a/lib/src/widgets/text_line.dart +++ b/lib/src/widgets/text_line.dart @@ -17,6 +17,7 @@ import '../models/documents/nodes/line.dart'; import '../models/documents/nodes/node.dart'; import '../models/documents/style.dart'; import '../utils/color.dart'; +import '../utils/font.dart'; import '../utils/platform.dart'; import 'box.dart'; import 'controller.dart'; @@ -342,19 +343,7 @@ class _TextLineState extends State { res = res.merge(defaultStyles.sizeHuge); break; default: - double? fontSize; - if (size.value is double) { - fontSize = size.value; - } else if (size.value is int) { - fontSize = size.value.toDouble(); - } else if (size.value is String) { - fontSize = double.tryParse(size.value); - } - if (fontSize != null) { - res = res.merge(TextStyle(fontSize: fontSize)); - } else { - throw 'Invalid size ${size.value}'; - } + res = res.merge(TextStyle(fontSize: getFontSize(size.value))); } }