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();
        }
示例#2
0
        public void OpenMainWindow()
        {
            var storyboard = NSStoryboard.FromName("Main", null);
            var controller = storyboard.InstantiateControllerWithIdentifier("MainWindow") as NSWindowController;

            controller.ShowWindow(this);
        }
        public override void WindowDidLoad()
        {
            base.WindowDidLoad();

            if (WebKitPrefs.DeveloperExtrasEnabled)
            {
                ContentViewController.AddTabViewItem(new NSTabViewItem {
                    Label          = Catalog.GetString("Developer"),
                    Image          = NSImage.ImageNamed("NSAdvanced"),
                    ViewController = NSStoryboard
                                     .FromName("Main", NSBundle.MainBundle)
                                     .InstantiateController <PreferencesDeveloperViewController> ()
                });
            }

            windowChromeHeight = Window.Frame.Size.Height - Window.ContentView.Frame.Size.Height;

            foreach (var item in ContentViewController.TabViewItems)
            {
                maxIntrinsicContentViewWidth = NMath.Max(
                    maxIntrinsicContentViewWidth,
                    item.View.IntrinsicContentSize.Width);
            }

            DidSelectTabViewItem(ContentViewController.TabView.Selected);

            Window.Center();
        }
        public void OpenUntitledDocument(AgentType?agentType = null)
        {
            var keyWindow = NSApplication.SharedApplication.KeyWindow;

            if (keyWindow is NewWorkbookWindow)
            {
                return;
            }

            var newWorkbookWindowController = (NSWindowController)NSStoryboard
                                              .FromName("Main", NSBundle.MainBundle)
                                              .InstantiateControllerWithIdentifier("NewWorkbookWindowController");

            if (keyWindow is SessionWindow)
            {
                keyWindow.BeginSheet(
                    newWorkbookWindowController.Window,
                    result => { });
            }
            else
            {
                newWorkbookWindowController.Window.MakeKeyAndOrderFront(this);
            }

            if (agentType.HasValue)
            {
                ((NewWorkbookViewController)newWorkbookWindowController.ContentViewController)
                .SelectedAgentType = agentType.Value;
            }
        }
        public virtual IMvxMacView CreateViewOfType(Type viewType, MvxViewModelRequest request)
        {
            var storyboardAttribute = viewType.GetCustomAttribute <MvxFromStoryboardAttribute>();

            if (storyboardAttribute != null)
            {
                var storyboardName = storyboardAttribute.StoryboardName ?? viewType.Name;
                try
                {
                    var storyboard     = NSStoryboard.FromName(storyboardName, null);
                    var viewController = storyboard.InstantiateControllerWithIdentifier(viewType.Name);
                    return((IMvxMacView)viewController);
                }
                catch (Exception ex)
                {
                    throw new MvxException("Loading view of type {0} from storyboard {1} failed: {2}", viewType.Name, storyboardName, ex.Message);
                }
            }

            var view = Activator.CreateInstance(viewType) as IMvxMacView;

            if (view == null)
            {
                throw new MvxException("View not loaded for " + viewType);
            }
            return(view);
        }
示例#6
0
        private void ShowWindow()
        {
            if (_mainPage == null)
            {
                // If you dont need a navigation bar, just use this line
                //_mainPage = Application.Current.MainPage.CreateViewController();

                // Create a container view which shows the navigation bar
                var storyboard = NSStoryboard.FromName("Main", null);
                var controller = storyboard.InstantiateControllerWithIdentifier("Container") as Container;
                _mainPage = controller;
                controller.SetContent(Application.Current.MainPage.CreateViewController());
                _mainPage.View.Frame = new CoreGraphics.CGRect(0, 0, 400, 700);

                Application.Current.SendStart();
            }
            else
            {
                Application.Current.SendResume();
            }

            var popover = new NSPopover
            {
                ContentViewController = _mainPage,
                Behavior = NSPopoverBehavior.Transient,
                Delegate = new PopoverDelegate()
            };

            popover.Show(_statusBarItem.Button.Bounds, _statusBarItem.Button, NSRectEdge.MaxYEdge);
        }
示例#7
0
        void OpenDialog(NSObject sender)
        {
            var dlg = NSOpenPanel.OpenPanel;

            dlg.CanChooseFiles       = true;
            dlg.CanChooseDirectories = false;

            if (dlg.RunModal() == 1)
            {
                // Nab the first file
                var url = dlg.Urls[0];

                if (url != null)
                {
                    var path = url.Path;

                    if (!IsFileOpenBringToFront(path))
                    {
                        // Get new window
                        var storyboard = NSStoryboard.FromName("Main", null);
                        var controller = storyboard.InstantiateControllerWithIdentifier("MainWindow") as NSWindowController;

                        // Display
                        controller.ShowWindow(this);

                        // Load the text into the window
                        var viewController = controller.Window.ContentViewController as ViewController;
                        viewController.Text     = File.ReadAllText(path);
                        viewController.FilePath = path;
                        viewController.View.Window.SetTitleWithRepresentedFilename(Path.GetFileName(path));
                        viewController.View.Window.RepresentedUrl = url;
                    }
                }
            }
        }
示例#8
0
        private void showPreferences()
        {
            var storyboard = NSStoryboard.FromName("Main", null);
            var controller = (NSViewController)storyboard.InstantiateControllerWithIdentifier("PreferencesController");

            controller.PresentViewControllerAsModalWindow(controller);
        }
        partial void singIn(NSObject sender)
        {
            this.View.Window.Close();
            var storyboard = NSStoryboard.FromName("Main", null);
            var controller = storyboard.InstantiateControllerWithIdentifier("LogIn") as NSWindowController;

            controller.ShowWindow(Self);
        }
示例#10
0
        public void openSubstance(NSObject sender)
        {
            var storyboard = NSStoryboard.FromName("MainForm", null);
            var controller = storyboard.InstantiateControllerWithIdentifier("MyTestWindow") as NSWindowController;

            // Display
            controller.ShowWindow(this);
        }
        partial void createAccount_clicked(NSObject sender)
        {
            this.View.Window.Close();
            var storyboard = NSStoryboard.FromName("Main", null);
            var controller = storyboard.InstantiateControllerWithIdentifier("UpdateDeleteAccount") as NSWindowController;

            controller.ShowWindow(this);
        }
示例#12
0
        public People()
        {
            var storyboard = NSStoryboard.FromName("People", null);

            peopleWindow = storyboard.InstantiateControllerWithIdentifier("PeopleWindow") as NSWindowController;
            peopleWindow.Window.SetFrame(new CoreGraphics.CGRect(300, 300, 800, 500), true);
            peopleView = peopleWindow.ContentViewController as PeopleViewController;
        }
 public void showAlert()
 {
     InvokeOnMainThread(() =>
     {
         var storyboard = NSStoryboard.FromName("Main", null);
         var controller = storyboard.InstantiateControllerWithIdentifier("Alert") as NSWindowController;
         controller.ShowWindow(Self);
     });
 }
示例#14
0
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();
            var storyboard = NSStoryboard.FromName("Main", null);

            ProgressController           = storyboard.InstantiateControllerWithIdentifier("ProgressDisplay") as ProgressController;
            ProgressController.Presentor = this;
            SetupViewControllers();
        }
        partial void firstActivity_clicked(NSObject sender)
        {
            BaseHandler.activityName = firstAct.StringValue;
            registering = true;
            var storyboard = NSStoryboard.FromName("Main", null);
            var controller = storyboard.InstantiateControllerWithIdentifier("Register") as NSWindowController;

            controller.ShowWindow(Self);
        }
示例#16
0
 public override bool ApplicationShouldHandleReopen(NSApplication sender, bool hasVisibleWindows)
 {
     if (hasVisibleWindows == false)
     {
         var mainWindow = NSStoryboard.FromName("Main", null).InstantiateControllerWithIdentifier("Main") as NSWindowController;
         mainWindow.ShowWindow(this);
     }
     return(true);
 }
        /// <summary>
        /// Gets the new window for tab.
        /// </summary>
        /// <param name="sender">Sender.</param>
        public override void GetNewWindowForTab(NSObject sender)
        {
            // Get new window
            var storyboard = NSStoryboard.FromName("Main", null);
            var controller = storyboard.InstantiateControllerWithIdentifier("MainWindow") as NSWindowController;

            // Display
            controller.ShowWindow(this);
        }
示例#18
0
        partial void back(NSObject sender)
        {
            var storyboard = NSStoryboard.FromName("Main", null);

            this.View.Window.Close();
            var controller = storyboard.InstantiateControllerWithIdentifier("AdministratorView") as NSWindowController;

            controller.ShowWindow(this);
        }
        partial void shop_clicked(NSObject sender)
        {
            var popover    = new NSPopover();
            var storyboard = NSStoryboard.FromName("Main", null);

            popover.ContentViewController = storyboard.InstantiateControllerWithIdentifier("Shop") as NSViewController;
            popover.Behavior = NSPopoverBehavior.Transient;
            popover.Show(CoreGraphics.CGRect.Empty, (NSView)sender, NSRectEdge.MinYEdge);
        }
示例#20
0
        partial void MenuNewWindowClicked(AppKit.NSMenuItem sender)
        {
            // Get new window
            var storyboard = NSStoryboard.FromName("Main", null);
            var controller = storyboard.InstantiateControllerWithIdentifier("MainWindow") as NSWindowController;

            // Display
            controller.ShowWindow(this);
        }
        // Generate a controller
        public static Container FreshController()
        {
            NSStoryboard storyboard = NSStoryboard.FromName("Main", null);

            Container controller = (Container)
                                   storyboard.InstantiateControllerWithIdentifier("Container");

            controller.contentViewController = Application.Current.MainPage.CreateViewController();
            return(controller);
        }
示例#22
0
        public void ShowFacts(NSViewController factsViewController)
        {
            var storyboard  = NSStoryboard.FromName("Facts", null);
            var factsWindow = storyboard.InstantiateControllerWithIdentifier("FactsWindow") as NSWindowController;

            factsWindow.ContentViewController.AddChildViewController(factsViewController);
            factsWindow.Window.Title = factsViewController.Title;
            factsWindow.Window.SetFrame(new CoreGraphics.CGRect(350, 350, 800, 500), true);
            factsWindow.ShowWindow(this);
        }
示例#23
0
 public StatusBarController()
 {
     statusBar  = new NSStatusBar();
     statusItem = statusBar.CreateStatusItem(NSStatusItemLength.Variable);
     popOver    = new NSPopover();
     ViewController.QuitButtonClicked    += HandleQuitButtonClicked;
     ViewController.AboutMenuItemClicked += HandleAboutMenuItemClicked;
     storyboard       = NSStoryboard.FromName("Main", null);
     windowController = storyboard.InstantiateControllerWithIdentifier("AboutWindow") as NSWindowController;
 }
示例#24
0
        public override void MakeWindowControllers()
        {
            var controller = (NSWindowController)NSStoryboard.FromName("Main", null).InstantiateControllerWithIdentifier("Document Window Controller");

            if (controller.ContentViewController is ViewController c)
            {
                c.Document = this;
            }
            AddWindowController(controller);
        }
示例#25
0
 public void openWindow()
 {
     this.InvokeOnMainThread(() => {
         this.View.Window.Close();
         BaseHandler.username = username.StringValue;
         var storyboard       = NSStoryboard.FromName("Main", null);
         var controller       = storyboard.InstantiateControllerWithIdentifier("UserView") as NSWindowController;
         controller.ShowWindow(this);
     });
 }
示例#26
0
        public void getSelectedRow(NSObject sender)
        {
            var source = TableView.DataSource as SubstanceTableDataSource;

            var storyboard     = NSStoryboard.FromName("MainForm", null);
            var controller     = storyboard.InstantiateControllerWithIdentifier("MyTestWindow") as NSWindowController;
            var viewController = controller.ContentViewController as SearchFormViewController;

            viewController.SetSubstance(source.GetRow(TableView.SelectedRow));
            controller.ShowWindow(this);
        }
 public static TController CreateController <TController>(this NSStoryboard self) where TController : NSViewController
 {
     if (self.InstantiateControllerWithIdentifier(typeof(TController).Name) is TController controller)
     {
         return(controller);
     }
     else
     {
         throw new InvalidCastException();
     }
 }
示例#28
0
        void ShowPreferences(NSObject sender)
        {
            if (preferencesWindowController == null)
            {
                preferencesWindowController = NSStoryboard
                                              .FromName("Main", NSBundle.MainBundle)
                                              .InstantiateController <PreferencesWindowController> ();
            }

            preferencesWindowController.Window.MakeKeyAndOrderFront(sender);
        }
示例#29
0
        void OpenLocation(NSObject sender)
        {
            if (connectToAgentWindowController == null)
            {
                connectToAgentWindowController = (NSWindowController)NSStoryboard
                                                 .FromName("Main", NSBundle.MainBundle)
                                                 .InstantiateControllerWithIdentifier("ConnectToAgentWindowController");
            }

            connectToAgentWindowController.Window.MakeKeyAndOrderFront(sender);
        }
 partial void view(NSObject sender)
 {
     //view all registrated activities for this account
     if (viewMy.Title.CompareTo("View my registrations") == 0)
     {
         viewRegistrations = true;
         var storyboard = NSStoryboard.FromName("Main", null);
         var controller = storyboard.InstantiateControllerWithIdentifier("ViewRegistrations") as NSWindowController;
         controller.ShowWindow(Self);
     }
 }