* ENH Make all GridField components injectable.
Some components were already injectable, but all GridField components shipped in silverstripe should be injectable.
This makes it a LOT easier to make global project-specific changes to a given component.
The new AbstractGridFieldComponent also makes it easy to make similar wide-spread changes in the future.
* DOCS Encourage injection for GridField and GridFieldComponents.
* ENH Reduce duplication of code in GridField view and edit buttons.
* Fix syntax error
Co-authored-by: Daniel Hensby <dhensby@users.noreply.github.com>
Co-authored-by: Daniel Hensby <dhensby@users.noreply.github.com>
* MINOR: Add `Previous`, `Next` and `Create New` actions in edit form
If the form is opened via a grid field, the filters will be retained so the previous/next record opened will be correct
* MINOR: Add ability to customise the visibility of the `Previous`, `Next` and `Add` buttons at a `GridField` level
* Fix invalid action when pressing the `New` button in an edit form unless `betterbuttons` module was installed
* - Merge `showPrevious` and `showNext` to `showPagination` for grid fields
- Update documentation
- Improve performance for next/previous buttons by not fetching all list records
- Refactoring
* Refactor to fail gracefully on GridFieldPaginator
* WIP GridField action menu work, the gist of the idea is using a new gridfield component
* Add delete action to actions menu
* Actions are added automatically to action menu (allows for extension)
* Add test and minor changes
* Add docs and minor changes
* Refactor ActionMenuItem into distinct types, general ActionMenu cleanup
* Add icons and fix title
* Pass columnName, so it can be used by components
* Update test to open and find action menu buttons
* Add section in changelog upgrade section for GridField_ActionMenu