dartlangeditorflutterflutter-appsflutter-examplesflutter-packageflutter-widgetquillquill-deltaquilljsreactquillrich-textrich-text-editorwysiwygwysiwyg-editor
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
47 lines
1.5 KiB
47 lines
1.5 KiB
import 'package:flutter/material.dart'; |
|
|
|
import '../../../../models/documents/attribute.dart'; |
|
import '../../../quill/quill_controller.dart'; |
|
import '../../base_toolbar.dart'; |
|
|
|
class QuillToolbarSelectAlignmentButtons extends StatelessWidget { |
|
const QuillToolbarSelectAlignmentButtons({ |
|
required this.controller, |
|
this.options = const QuillToolbarSelectAlignmentButtonOptions(), |
|
super.key, |
|
}); |
|
|
|
final QuillController controller; |
|
final QuillToolbarSelectAlignmentButtonOptions options; |
|
|
|
List<Attribute> get _attrbuites { |
|
return options.attributes ?? |
|
[ |
|
if (options.showLeftAlignment) Attribute.leftAlignment, |
|
if (options.showCenterAlignment) Attribute.centerAlignment, |
|
if (options.showRightAlignment) Attribute.rightAlignment, |
|
if (options.showJustifyAlignment) Attribute.justifyAlignment, |
|
]; |
|
} |
|
|
|
@override |
|
Widget build(BuildContext context) { |
|
return Row( |
|
mainAxisSize: MainAxisSize.min, |
|
children: _attrbuites |
|
.map((e) => QuillToolbarToggleStyleButton( |
|
controller: controller, |
|
attribute: e, |
|
options: QuillToolbarToggleStyleButtonOptions( |
|
iconData: options.iconData, |
|
iconSize: options.iconSize, |
|
iconButtonFactor: options.iconButtonFactor, |
|
afterButtonPressed: options.afterButtonPressed, |
|
iconTheme: options.iconTheme, |
|
tooltip: options.tooltip, |
|
), |
|
)) |
|
.toList(), |
|
); |
|
} |
|
}
|
|
|