protected override IEnumerable <ElementAction> OnGetFunctionActions(IFunctionTreeBuilderLeafInfo function) { string functionName = function.Namespace + "." + function.Name; IMetaFunction metaFunction = GetMetaFunction(functionName); bool isWidget = !(metaFunction is IFunction); if (!isWidget) { yield return(CreateFunctionTesterAction(functionName)); } yield return(new ElementAction(new ActionHandle(new FunctionInfoActionToken(functionName, isWidget))) { VisualData = new ActionVisualizedData { Label = StringResourceSystemFacade.GetString("Composite.Plugins.AllFunctionsElementProvider", "AllFunctionsElementProvider.ViewFunctionInformation"), ToolTip = StringResourceSystemFacade.GetString("Composite.Plugins.AllFunctionsElementProvider", "AllFunctionsElementProvider.ViewFunctionInformationTooltip"), Disabled = false, Icon = CommonElementIcons.Search, ActionLocation = new ActionLocation { ActionType = ActionType.Other, ActionGroup = PrimaryActionGroup, IsInFolder = false, IsInToolbar = true } } }); }
/// <exclude /> protected override IEnumerable <ElementAction> OnGetFunctionActions(IFunctionTreeBuilderLeafInfo function) { var editWorkflow = WorkflowFacade.GetWorkflowType("Composite.Plugins.Elements.ElementProviders.RazorFunctionProviderElementProvider.EditRazorFunctionWorkflow"); var deleteWorkflow = WorkflowFacade.GetWorkflowType("Composite.Plugins.Elements.ElementProviders.RazorFunctionProviderElementProvider.DeleteRazorFunctionWorkflow"); return(new [] { new ElementAction(new ActionHandle( new WorkflowActionToken( editWorkflow, new [] { PermissionType.Edit } ))) { VisualData = new ActionVisualizedData { Label = GetText("EditRazorFunction.Label"), ToolTip = GetText("EditRazorFunction.ToolTip"), Icon = EditFunctionIcon, Disabled = false, ActionLocation = new ActionLocation { ActionType = ActionType.Edit, IsInFolder = false, IsInToolbar = true, ActionGroup = PrimaryActionGroup } } }, new ElementAction(new ActionHandle( new WorkflowActionToken( deleteWorkflow, new [] { PermissionType.Delete } ) { Payload = GetContext().ProviderName })) { VisualData = new ActionVisualizedData { Label = GetText("DeleteRazorFunction.Label"), ToolTip = GetText("DeleteRazorFunction.ToolTip"), Icon = DeleteFunctionIcon, Disabled = false, ActionLocation = new ActionLocation { ActionType = ActionType.Delete, IsInFolder = false, IsInToolbar = true, ActionGroup = PrimaryActionGroup } } } }); }
/// <exclude /> protected override IEnumerable <ElementAction> OnGetFunctionActions(IFunctionTreeBuilderLeafInfo function) { return(new ElementAction[] { new ElementAction(new ActionHandle( new WorkflowActionToken( WorkflowFacade.GetWorkflowType("Composite.Plugins.Elements.ElementProviders.XsltBasedFunctionProviderElementProvider.EditXsltFunctionWorkflow"), new PermissionType[] { PermissionType.Edit } ))) { VisualData = new ActionVisualizedData { Label = StringResourceSystemFacade.GetString("Composite.Plugins.XsltBasedFunction", "XsltBasedFunctionProviderElementProvider.Edit"), ToolTip = StringResourceSystemFacade.GetString("Composite.Plugins.XsltBasedFunction", "XsltBasedFunctionProviderElementProvider.EditToolTip"), Icon = XsltBasedFunctionProviderElementProvider.EditFunction, Disabled = false, ActionLocation = new ActionLocation { ActionType = ActionType.Edit, IsInFolder = false, IsInToolbar = true, ActionGroup = PrimaryActionGroup } } }, new ElementAction(new ActionHandle( new WorkflowActionToken( WorkflowFacade.GetWorkflowType("Composite.Plugins.Elements.ElementProviders.XsltBasedFunctionProviderElementProvider.DeleteXsltFunctionWorkflow"), new PermissionType[] { PermissionType.Delete } ) { Payload = GetContext().ProviderName })) { VisualData = new ActionVisualizedData { Label = StringResourceSystemFacade.GetString("Composite.Plugins.XsltBasedFunction", "XsltBasedFunctionProviderElementProvider.Delete"), ToolTip = StringResourceSystemFacade.GetString("Composite.Plugins.XsltBasedFunction", "XsltBasedFunctionProviderElementProvider.DeleteToolTip"), Icon = XsltBasedFunctionProviderElementProvider.DeleteFunction, Disabled = false, ActionLocation = new ActionLocation { ActionType = ActionType.Delete, IsInFolder = false, IsInToolbar = true, ActionGroup = PrimaryActionGroup } } } }); }
/// <exclude /> public Dictionary <EntityToken, IEnumerable <EntityToken> > GetParents(IEnumerable <EntityToken> entityTokens) { Dictionary <EntityToken, IEnumerable <EntityToken> > result = new Dictionary <EntityToken, IEnumerable <EntityToken> >(); foreach (EntityToken entityToken in entityTokens) { IFunctionTreeBuilderLeafInfo functionTreeBuilderLeafInfo = OnIsEntityOwner(entityToken); if (functionTreeBuilderLeafInfo == null) { continue; } BaseFunctionFolderElementEntityToken parentEntityToken = new BaseFunctionFolderElementEntityToken(CreateId(functionTreeBuilderLeafInfo.Namespace, _context.ProviderName)); result.Add(entityToken, new EntityToken[] { parentEntityToken }); } return(result); }
private Element CreateFunctionElement(IFunctionTreeBuilderLeafInfo function) { IMetaFunction functionDetails; if (FunctionFacade.TryGetFunction(out functionDetails, string.Format("{0}.{1}", function.Namespace, function.Name), typeof(IFunction)) == false) { FunctionFacade.TryGetFunction(out functionDetails, string.Format("{0}.{1}", function.Namespace, function.Name), typeof(IWidgetFunction)); } string functionTooltip = (functionDetails == null || string.IsNullOrEmpty(functionDetails.Description) ? function.Name : StringResourceSystemFacade.ParseString(functionDetails.Description)); var intitializationInfo = functionDetails as IFunctionInitializationInfo; bool functionWerentLoadedCorrectly = intitializationInfo != null && !intitializationInfo.FunctionInitializedCorrectly; Element element = new Element(_context.CreateElementHandle(function.EntityToken)) { VisualData = new ElementVisualizedData() { Label = function.Name, ToolTip = functionTooltip, HasChildren = false, Icon = functionWerentLoadedCorrectly ? BaseFunctionProviderElementProvider.FunctionError : BaseFunctionProviderElementProvider.Function } }; element.TreeLockBehavior = OnGetTreeLockBehavior(); IEnumerable <ElementAction> actions = OnGetFunctionActions(function); if (actions != null) { foreach (ElementAction action in actions) { element.AddAction(action); } } return(element); }
/// <exclude /> protected virtual IEnumerable <ElementAction> OnGetFunctionActions(IFunctionTreeBuilderLeafInfo function) { return(null); }
private Element CreateFunctionElement(IFunctionTreeBuilderLeafInfo function) { IMetaFunction functionDetails; if (FunctionFacade.TryGetFunction(out functionDetails, string.Format("{0}.{1}", function.Namespace, function.Name), typeof(IFunction)) == false) { FunctionFacade.TryGetFunction(out functionDetails, string.Format("{0}.{1}", function.Namespace, function.Name), typeof(IWidgetFunction)); } string functionTooltip = (functionDetails == null || string.IsNullOrEmpty(functionDetails.Description) ? function.Name : StringResourceSystemFacade.ParseString(functionDetails.Description)); var intitializationInfo = functionDetails as IFunctionInitializationInfo; bool functionWerentLoadedCorrectly = intitializationInfo != null && !intitializationInfo.FunctionInitializedCorrectly; Element element = new Element(_context.CreateElementHandle(function.EntityToken)) { VisualData = new ElementVisualizedData() { Label = function.Name, ToolTip = functionTooltip, HasChildren = false, Icon = functionWerentLoadedCorrectly ? BaseFunctionProviderElementProvider.FunctionError : BaseFunctionProviderElementProvider.Function } }; element.TreeLockBehavior = OnGetTreeLockBehavior(); IEnumerable<ElementAction> actions = OnGetFunctionActions(function); if (actions != null) { foreach (ElementAction action in actions) { element.AddAction(action); } } return element; }
/// <exclude /> protected virtual IEnumerable<ElementAction> OnGetFunctionActions(IFunctionTreeBuilderLeafInfo function) { return null; }