buildEditorToolbarActions function
List<Widget>
buildEditorToolbarActions({
- required EditorToolbarState state,
- required EditorActionDispatcher actions,
- required List<
EditorActionSpec> actionSpecs,
Implementation
List<Widget> buildEditorToolbarActions({
required EditorToolbarState state,
required EditorActionDispatcher actions,
required List<EditorActionSpec> actionSpecs,
}) {
final sections = _sectionsInOrder(actionSpecs, state);
if (state.compact) {
return [
_CompactOverflow(
state: state,
actions: actions,
sections: sections,
allActions: actionSpecs,
),
];
}
final widgets = <Widget>[];
for (final section in sections) {
if (section == EditorToolbarSection.add) {
widgets.add(
_InsertActionMenu(
state: state,
actions: actions,
allActions: actionSpecs,
),
);
continue;
}
if (_renderAsIconButtons(section)) {
widgets.addAll(
_buildIconButtons(
actions: actions,
state: state,
section: section,
allActions: actionSpecs,
),
);
continue;
}
final menu = _buildSectionMenu(
actions: actions,
state: state,
section: section,
allActions: actionSpecs,
);
if (menu != null) widgets.add(menu);
}
return widgets;
}