DriverResult IContentPartDriver.UpdateEditor(UpdateEditorContext context) { var part = context.ContentItem.As <TContent>(); if (part == null) { return(null); } // Checking if the editor needs to be updated (e.g. if any of the shapes were not hidden). DriverResult editor = Editor(part, context.New); IEnumerable <ContentShapeResult> contentShapeResults = editor.GetShapeResults(); if (contentShapeResults.Any(contentShapeResult => contentShapeResult == null || contentShapeResult.WasDisplayed(context))) { DriverResult result = Editor(part, context.Updater, context.New); if (result != null) { result.ContentPart = part; } return(result); } return(editor); }
public static IEnumerable <ContentShapeResult> GetShapeResults(this DriverResult driverResult) { if (driverResult is CombinedResult) { return(((CombinedResult)driverResult).GetResults().Select(result => result as ContentShapeResult)); } return(new[] { driverResult as ContentShapeResult }); }
DriverResult IContentFieldDriver.BuildEditorShape(BuildEditorContext context) { return(Process(context.ContentItem, (part, field) => { DriverResult result = Editor(part, field, context.New); if (result != null) { result.ContentPart = part; result.ContentField = field; } return result; }, context.Logger)); }
DriverResult IContentFieldDriver.BuildDisplayShape(BuildDisplayContext context) { return(Process(context.ContentItem, (part, field) => { DriverResult result = Display(part, field, context.DisplayType, context.New); if (result != null) { result.ContentPart = part; result.ContentField = field; } return result; }, context.Logger)); }
DriverResult IContentPartDriver.BuildEditor(BuildEditorContext context) { var part = context.ContentItem.As <TContent>(); if (part == null) { return(null); } DriverResult result = Editor(part, context.New); if (result != null) { result.ContentPart = part; } return(result); }
DriverResult IContentPartDriver.BuildDisplay(BuildDisplayContext context) { var part = context.ContentItem.As <TContent>(); if (part == null) { return(null); } DriverResult result = Display(part, context.DisplayType, context.New); if (result != null) { result.ContentPart = part; } return(result); }
DriverResult IContentFieldDriver.UpdateEditorShape(UpdateEditorContext context) { return(Process(context.ContentItem, (part, field) => { // Checking if the editor needs to be updated (e.g. if any of the shapes were not hidden). DriverResult editor = Editor(part, field, context.New); IEnumerable <ContentShapeResult> contentShapeResults = editor.GetShapeResults(); if (contentShapeResults.Any(contentShapeResult => contentShapeResult == null || contentShapeResult.WasDisplayed(context))) { DriverResult result = Editor(part, field, context.Updater, context.New); if (result != null) { result.ContentPart = part; result.ContentField = field; } return result; } return editor; }, context.Logger)); }