private void SwapSplitViewItem(int position, NSViewController vc) { try { if (vc != null && position < 2) { var sv = this.SplitViewItems[position]; if (sv != null) { var splitView = new NSSplitViewItem { ViewController = vc }; this.InsertSplitViewItem(splitView, position); this.RemoveSplitViewItem(sv); //clean up memory sv.Dispose(); sv = null; } } } catch (Exception ex) { Console.WriteLine($"Error: {ex.Message} \n\nStack Trace: {ex.StackTrace}"); } }
public void NSSplitViewItemShouldCreateFromViewController() { var viewController = new NSViewController(); var splitViewItem = NSSplitViewItem.FromViewController(viewController); Assert.IsFalse(splitViewItem == null, "NSSplitViewItemShouldCreateFromViewController - Returned null"); Assert.IsTrue(splitViewItem.ViewController == viewController, "NSSplitViewItemShouldCreateFromViewController - ViewController property not set correctly"); }
public void NSSplitViewControllerShouldAddSplitViewItem() { var item = new NSSplitViewItem { ViewController = new NSViewController() }; controller.AddSplitViewItem(item); Assert.IsTrue(controller.SplitViewItems.Contains(item), "NSSplitViewControllerShouldAddSplitViewItem - Failed to add item"); }
private void SetupCenterSplitViewItem() { NSSplitViewItem splitViewItem = new NSSplitViewItem() { ViewController = MyAppsContentViewController, MinimumThickness = 12, }; AddSplitViewItem(splitViewItem); }
internal void ToggleTrailingSidebar() { NSSplitViewItem splitViewItem = (NSSplitViewItem)SplitViewItems.Last().Animator; TrailingSidebarViewWidthLayoutConstraint !.Active = false; NSAnimationContext.RunAnimation(changes: context => { context.Duration = 3; splitViewItem.Collapsed = !splitViewItem.Collapsed; }, completionHandler: () => { TrailingSidebarViewWidthLayoutConstraint.Active = true; }); }
private void SetupLeadingSplitViewItem() { NSSplitViewItem splitViewItem = NSSplitViewItem.CreateContentList(LeadingContentListViewController); splitViewItem.CanCollapse = true; splitViewItem.MaximumThickness = 400; AddSplitViewItem(splitViewItem); Disposables.Add(splitViewItem.AddObserver(KeyPath.NSSplitViewItem.Collapsed.String(), New, change => { NSDictionary userInfo = new NSDictionary ( ToggleCollapsed.UserInfoKey.IsCollapsed.String(), change.NewValue, ToggleCollapsed.UserInfoKey.SegmentIndex.String(), 0 ); NotificationCenter.PostNotificationName(ToggleCollapsed.Name, null, userInfo); })); }
public void NSSplitViewControllerShouldInsertSplitViewItem() { controller.AddSplitViewItem(new NSSplitViewItem { ViewController = new NSViewController() }); controller.AddSplitViewItem(new NSSplitViewItem { ViewController = new NSViewController() }); controller.AddSplitViewItem(new NSSplitViewItem { ViewController = new NSViewController() }); var item = new NSSplitViewItem { ViewController = new NSViewController() }; controller.InsertSplitViewItem(item, 1); Assert.IsTrue(controller.SplitViewItems [1] == item, "NSSplitViewControllerShouldInsertSplitViewItem - Failed to insert the item at the given position."); Assert.IsFalse(controller.SplitViewItems [0] == item, "NSSplitViewControllerShouldInsertSplitViewItem - Inserted the item in the wrong position."); }
public void NSSplitViewControllerShouldGetSplitViewItem() { controller.AddSplitViewItem(new NSSplitViewItem { ViewController = new NSViewController() }); controller.AddSplitViewItem(new NSSplitViewItem { ViewController = new NSViewController() }); controller.AddSplitViewItem(new NSSplitViewItem { ViewController = new NSViewController() }); var viewController = new NSViewController(); var item = new NSSplitViewItem { ViewController = viewController }; controller.InsertSplitViewItem(item, 1); var retrievedItem = controller.GetSplitViewItem(viewController); Assert.IsTrue(retrievedItem == item, "NSSplitViewControllerShouldGetSplitViewItem - Failed to get SplitViewItem from ViewController"); }
public override void ViewDidLoad() { base.ViewDidLoad(); SourceList.Initialize(); var samples = new SourceListItem("Samples"); var storyboard = NSStoryboard.FromName("Main", null); samples.AddItem(Resources.gettingstarted, "collectionview.png", () => { var viewController = storyboard.InstantiateControllerWithIdentifier("gettingstarted") as GettingStartedViewController; var item = NSSplitViewItem.FromViewController(viewController); var splitViewController = ParentViewController as NSSplitViewController; splitViewController.RemoveSplitViewItem(splitViewController.SplitViewItems[1]); splitViewController.AddSplitViewItem(item); }); samples.AddItem(Resources.columndefinition, "collectionview.png", () => { var viewController = storyboard.InstantiateControllerWithIdentifier("columndefinition") as ColumnDefinitionViewController; var item = NSSplitViewItem.FromViewController(viewController); var splitViewController = ParentViewController as NSSplitViewController; splitViewController.RemoveSplitViewItem(splitViewController.SplitViewItems[1]); splitViewController.AddSplitViewItem(item); }); samples.AddItem(Resources.filtering, "filter.png", () => { var viewController = storyboard.InstantiateControllerWithIdentifier("filtering") as FilterViewController; var item = NSSplitViewItem.FromViewController(viewController); var splitViewController = ParentViewController as NSSplitViewController; splitViewController.RemoveSplitViewItem(splitViewController.SplitViewItems[1]); splitViewController.AddSplitViewItem(item); }); samples.AddItem(Resources.grouping, "flexgrid_grouping.png", () => { var viewController = storyboard.InstantiateControllerWithIdentifier("grouping") as GroupingViewController; var item = NSSplitViewItem.FromViewController(viewController); var splitViewController = ParentViewController as NSSplitViewController; splitViewController.RemoveSplitViewItem(splitViewController.SplitViewItems[1]); splitViewController.AddSplitViewItem(item); }); samples.AddItem(Resources.ondemand, "flexgrid_loading.png", () => { var viewController = storyboard.InstantiateControllerWithIdentifier("ondemand") as OnDemandViewController; var item = NSSplitViewItem.FromViewController(viewController); var splitViewController = ParentViewController as NSSplitViewController; splitViewController.RemoveSplitViewItem(splitViewController.SplitViewItems[1]); splitViewController.AddSplitViewItem(item); }); samples.AddItem(Resources.customcells, "collectionview.png", () => { var viewController = storyboard.InstantiateControllerWithIdentifier("customcells") as CustomCellsViewController; var item = NSSplitViewItem.FromViewController(viewController); var splitViewController = ParentViewController as NSSplitViewController; splitViewController.RemoveSplitViewItem(splitViewController.SplitViewItems[1]); splitViewController.AddSplitViewItem(item); }); SourceList.AddItem(samples); // Display side list SourceList.ReloadData(); SourceList.ExpandItem(null, true); }
public void SetUp() { Asserts.EnsureYosemite(); item = new NSSplitViewItem(); }