Enable 4.4 better button functionality

This commit is contained in:
Remy Vaartjes 2019-07-08 14:26:58 +02:00
parent 1386f1b80f
commit f682e74f44
3 changed files with 14 additions and 2 deletions

View File

@ -3,6 +3,7 @@
namespace SilverStripe\UserForms\Extension;
use SilverStripe\Forms\FieldList;
use SilverStripe\Forms\GridField\GridFieldPaginator;
use SilverStripe\Forms\Tab;
use SilverStripe\Forms\GridField\GridField;
use SilverStripe\Forms\GridField\GridFieldButtonRow;
@ -103,7 +104,8 @@ class UserFormFieldEditorExtension extends DataExtension
new GridFieldDeleteAction(),
new GridFieldToolbarHeader(),
new GridFieldOrderableRows('Sort'),
new GridFieldDetailForm(null, false, false)
new GridFieldDetailForm(),
new GridFieldPaginator(999)
);
$editButton->removeExtraClass('grid-field__icon-action--hidden-on-hover');

View File

@ -228,6 +228,16 @@ class EditableFormField extends DataObject
{
$fields = FieldList::create(TabSet::create('Root'));
// If created with (+) button
if ($this->ClassName === EditableFormField::class) {
$fieldClasses = $this->getEditableFieldClasses();
$fields->addFieldsToTab('Root.Main', [
DropdownField::create('ClassName', _t(__CLASS__.'.TYPE', 'Type'), $fieldClasses)
->setEmptyString(_t(__CLASS__ . 'TYPE_EMPTY', 'Select field type'))
]);
return $fields;
}
// Main tab
$fields->addFieldsToTab(
'Root.Main',

View File

@ -258,7 +258,7 @@ SQL;
$config->addComponent(new GridFieldDeleteAction());
$config->addComponent(new GridFieldPageCount('toolbar-header-right'));
$config->addComponent($pagination = new GridFieldPaginator(25));
$config->addComponent(new GridFieldDetailForm(null, null, false));
$config->addComponent(new GridFieldDetailForm()); // RVXD
$config->addComponent(new GridFieldButtonRow('after'));
$config->addComponent($export = new GridFieldExportButton('buttons-after-left'));
$config->addComponent($print = new GridFieldPrintButton('buttons-after-left'));