public MacClientSessionViewControllers(SessionWindowController sessionWindowController)
        {
            if (sessionWindowController == null)
            {
                throw new ArgumentNullException(nameof(sessionWindowController));
            }

            WindowTabs = sessionWindowController.TabViewController;

            Status = (StatusToolbarViewController)NSStoryboard
                     .FromName("Main", NSBundle.MainBundle)
                     .InstantiateControllerWithIdentifier("StatusToolbar");
            Status.Session = sessionWindowController.Session;

            // Set up history. Provide initial seed from NSUsrDefaults if the history file does not exist.
            string [] history = null;
            if (!History.HistoryFile.FileExists)
            {
                history = NSUserDefaults.StandardUserDefaults.StringArrayForKey("repl.history");
            }

            ReplHistory = new History(history: history, persist: Prefs.Repl.SaveHistory.GetValue());

            PreferenceStore.Default.Subscribe(ObservePreferenceChange);

            ReplHistory.Append(String.Empty);

            Messages = new MessageViewController(
                Status,
                new NSAlertMessageViewDelegate(sessionWindowController.Window));

            WorkbookTargets = new WorkbookTargetsViewController();
        }
 public WpfClientSessionViewControllers(
     WpfMessageViewDelegate messageViewDelegate,
     WpfDialogMessageViewDelegate dialogMessageViewDelegate)
 {
     // Set up history. Don't provide any initial seed, History will load the saved history on its
     // own if the persist flag is true.
     ReplHistory     = new History(history: null, persist: Prefs.Repl.SaveHistory.GetValue());
     Messages        = new MessageViewController(messageViewDelegate, dialogMessageViewDelegate);
     WorkbookTargets = new WorkbookTargetsViewController();
     PreferenceStore.Default.Subscribe(ObservePreferenceChange);
 }
Пример #3
0
            public ViewControllersProxy(
                ClientSession session,
                IClientSessionViewControllers viewControllers)
            {
                if (session.SessionKind == ClientSessionKind.LiveInspection)
                {
                    ReplHistory = viewControllers.ReplHistory;
                }

                Messages        = viewControllers.Messages;
                WorkbookTargets = viewControllers.WorkbookTargets;
            }
        public WorkbookTargetSelector(WorkbookTargetsViewController viewController)
        {
            if (viewController == null)
            {
                throw new ArgumentNullException(nameof(viewController));
            }

            this.viewController = viewController;

            BezelStyle     = NSBezelStyle.TexturedRounded;
            Title          = String.Empty;
            IsSpringLoaded = true;

            Menu.AutoEnablesItems = false;
            Hidden = true;

            viewController.CollectionChanged += ViewController_CollectionChanged;
            viewController.PropertyChanged   += ViewController_PropertyChanged;

            Activated += (sender, e) => {
                var index = (int)IndexOfSelectedItem;
                viewController.SelectedTarget = index < 0 ? null : viewController [index];
            };
        }