private WebActionBaseItem GenerateActionObjectCore(ActionBase action) { MenuActionItemBase actionObject = null; if (action is SimpleAction) { actionObject = CreateSimpleactionObject((SimpleAction)action); } else if (action is SingleChoiceAction) { actionObject = CreateSingleChoiceactionObject((SingleChoiceAction)action); } else if (action is ParametrizedAction) { actionObject = CreateParametrizedactionObject((ParametrizedAction)action); } else if (action is PopupWindowShowAction) { actionObject = CreatePopupWindowShowactionObject((PopupWindowShowAction)action); } else if (action is ActionUrl && action.SelectionDependencyType == SelectionDependencyType.Independent) { actionObject = GenerateActionUrlItem((ActionUrl)action); } else { actionObject = CreateDefaultactionObject(action); } return(actionObject); }
private void RegisterContainerActions(IActionContainer container) { bool isFirstMenuItem = true; foreach (ActionBase action in container.Actions) { action.Changed -= new EventHandler <ActionChangedEventArgs>(Action_Changed); action.Changed += new EventHandler <ActionChangedEventArgs>(Action_Changed); if (action.Active && action.Enabled) { CustomCreateActionControlEventArgs customCreateActionControlEventArgs = new CustomCreateActionControlEventArgs(action, container); if (CustomGenerateActionControl != null) { CustomGenerateActionControl(this, customCreateActionControlEventArgs); } if (!customCreateActionControlEventArgs.Handled) { MenuActionItemBase actionObject = GenerateactionObject(action); actionObjects[action] = actionObject; if (isFirstMenuItem) { actionObject.MenuItem.SlidingBeginGroup = true; isFirstMenuItem = false; } MenuActionItemCreatedEventArgs args = new MenuActionItemCreatedEventArgs(actionObject); OnMenuactionObjectCreated(args); } } } }
internal static Dictionary <string, string> GetClickHandlers(XafCallbackManager callbackManager, ASPxMenu menu, string uniqueID) { List <XafMenuItem> allMenuItems = GetAllMenuItems(menu.RootItem.Items); Dictionary <string, string> clickHandlers = new Dictionary <string, string>(); foreach (XafMenuItem item in allMenuItems) { MenuActionItemBase MenuActionItemBase = item.ActionProcessor as MenuActionItemBase; if (MenuActionItemBase != null) { MenuActionItemBase.SetClientClickHandler(callbackManager, uniqueID); } } return(clickHandlers); }