예제 #1
0
        public void Do(WindowAction action)
        {
            if (this.OfType <NotificationAction>().Any())
            {
                if (new[] { WindowAction.Refresh, WindowAction.CloseModalRefreshParent }.Contains(action))
                {
                    NotificationAction.ScheduleForNextRequest();
                }
            }

            Add(new { BrowserAction = action.ToString() });
        }
예제 #2
0
        protected JsonResult Do(WindowAction action)
        {
            if (Actions.OfType <NotificationAction>().Any())
            {
                if (new[] { WindowAction.Refresh, WindowAction.CloseModalRefreshParent }.Contains(action))
                {
                    NotificationAction.ScheduleForNextRequest(Actions);
                }
            }

            return(AddAction(new { BrowserAction = action.ToString() }));
        }
        private void DetermineAction(WindowAction actionType)
        {
            switch (actionType)
            {
            case WindowAction.CloseAll:
                action = w => GUIManager.CloseAllWindows();
                break;

            case WindowAction.OpenAdditive:
                action = w => GUIManager.OpenWindow(w);
                break;

            case WindowAction.OpenSingle:
                action = w => GUIManager.OpenOnlyWindow(w);
                break;

            case WindowAction.OpenRecentlyClosed:
                action = w => GUIManager.OpenRecentlyClosedWindows();
                break;

            case WindowAction.OpenOnlyRecentlyClosed:
                action = w => GUIManager.OpenOnlyRecentlyClosedWindows();
                break;

            case WindowAction.OpenPreviouslyOpen:
                action = w => GUIManager.OpenPreviouslyOpenWindows();
                break;

            case WindowAction.OpenOnlyPreviouslyOpen:
                action = w => GUIManager.OpenOnlyPreviouslyOpenWindows();
                break;

            case WindowAction.Close:
                action = w => GUIManager.CloseWindow(w);
                break;

            case WindowAction.Toggle:
                action = w => GUIManager.ToggleWindow(w);
                break;

            case WindowAction.None:
                action = w => { };
                break;

            default: throw new NotImplementedException(actionType.ToString());
            }
        }