createDecoratedPage method
CreateWidget
createDecoratedPage(
- AppModel app,
- BuildContext context,
- Key? originalPageKey,
- CreateWidget createOriginalPage,
- PageModel model,
override
Implementation
@override
CreateWidget createDecoratedPage(AppModel app, BuildContext context,
Key? originalPageKey, CreateWidget createOriginalPage, PageModel model) {
if (!AccessBloc.isOwner(context, app)) return createOriginalPage;
return (() {
// Button for the decorator itself
return MyDecoratedWidget(
// label: 'creator',
action: SingleAction(() {
_isCreationMode.value = !_isCreationMode.value;
}),
ensureHeight: false,
initialPosition: InitialPosition.centerBottom,
isCreationMode: ValueNotifier<bool>(true),
originalWidgetKey: originalPageKey,
createOriginalWidget: () {
// Button for the page
return MyDecoratedWidget(
isCreationMode: _isCreationMode,
originalWidgetKey: originalPageKey,
createOriginalWidget: () {
// Button for the wizard
return MyDecoratedWidget(
isCreationMode: _isCreationMode,
icon: Icon(
Icons.star,
color: Constants.iconColor,
size: 15,
),
originalWidgetKey: originalPageKey,
createOriginalWidget: () {
// Button for the app
return MyDecoratedWidget(
isCreationMode: _isCreationMode,
originalWidgetKey: originalPageKey,
createOriginalWidget: () {
return MyDecoratedWidget(
isCreationMode: _isCreationMode,
originalWidgetKey: originalPageKey,
createOriginalWidget: createOriginalPage,
icon: Icon(
Icons.palette_outlined,
color: Constants.iconColor,
size: CreatorButton.buttonClient * .7,
),
action: SingleAction(() {
openComplexDialog(
app, context, '${app.documentID}/_style',
widthFraction: .5,
includeHeading: false,
child: StyleSelectionWidget.getIt(
context, app, true, false, false),
title: 'Style');
}),
ensureHeight: false,
initialPosition: InitialPosition.rightBottom,
);
},
action: SingleAction(() {
openFlexibleDialog(
app,
context,
'${app.documentID}/_appcreate',
includeHeading: false,
widthFraction: fraction,
child: AppCreateWidget.getIt(
context,
app,
false,
fullScreenWidth(context) * fraction,
fullScreenHeight(context) - 100,
),
);
}),
ensureHeight: false,
initialPosition: InitialPosition.leftAlmostBottom,
label: 'app',
);
},
action: SingleAction(() {
var member = AccessBloc.member(context);
if (member != null) {
newWizard(
context,
member,
app,
fraction: .9,
);
}
}),
ensureHeight: false,
initialPosition: InitialPosition.leftBottom,
// label: 'wizard',
);
},
action: MultipleActions(app, [
ActionWithLabel('Update page', () {
openPage(
context,
app,
false,
model,
'Update Page',
);
}),
ActionWithLabel('Create page', () {
openPage(context, app, true, newPageDefaults(app.documentID),
'Create page');
}),
ActionWithLabel('Create page from previously stored page', () {
var member = AccessBloc.member(context);
if (member != null) {
newFromJson(
context,
member,
app,
);
} else {
print("Can't create page without logged in member");
}
}),
]),
ensureHeight: false,
initialPosition: InitialPosition.leftCenter,
label: 'page',
);
});
});
}