void Initialize() { _timingItemManager = null;// new TimingItemManager () { Race = new Race() { Name = _details.Race, Code = _details.Race}, Location = _details.Location, Token = _details.OurLittleSecret}; _popover = new SettingsDialogViewController (_details.Location, _details.OurLittleSecret); UIPopoverController myPopOver = new UIPopoverController(_popover); _popover.Changed += () => { _details.Location = _popover.Location; _details.OurLittleSecret = _popover.Secret; // _timingItemManager = new TimingItemManager () { Race = new Race() { Name = _details.Race, Code = _details.Race}, Location = _details.Location, Token = _details.OurLittleSecret}; PopulateTable(true); }; _popover.Clear += () => { // _timingItemManager.Reset(); _details.Reset(); PopulateTable(false); }; _popover.Save += () => { // _timingItemManager.SaveItem (null); _popover.UpdateStatus(_timingItemManager.Status); }; NavigationItem.RightBarButtonItem = new UIBarButtonItem("Settings", UIBarButtonItemStyle.Plain, null); NavigationItem.RightBarButtonItem.Clicked += (sender, e) => { myPopOver.PopoverContentSize = new SizeF(450f, 800f); myPopOver.PresentFromBarButtonItem (NavigationItem.RightBarButtonItem, UIPopoverArrowDirection.Left, true); }; PopulateTable (true); }
public override void WillShowViewController(UISplitViewController svc, UIViewController aViewController, UIBarButtonItem button) { _pc = null; _lefty = null; ReplaceDetailNavigationViewController(); }
public MainSplitView () : base() { // create our master and detail views masterView = new Screens.iPad.NavTable.MasterNavTableViewController (); detailView = new Screens.iPad.BasicUIViewAnimation.BasicUIViewAnimationScreen (); // create an array of controllers from them and then assign it to the // controllers property this.ViewControllers = new UIViewController[] { masterView, detailView }; // in this example, i expose an event on the master view called RowClicked, and i listen // for it in here, and then call a method on the detail view to update. this class thereby // becomes the defacto controller for the screen (both views). masterView.RowClicked += (object sender, RowClickedEventArgs e) => { this.HandleRowClicked (e); }; // when the master view controller is hid (portrait mode), we add a button to // the detail view that when clicked will show the master view in a popover controller this.WillHideViewController += (object sender, UISplitViewHideEventArgs e) => { popoverController = e.Pc; rootPopoverButtonItem = e.BarButtonItem; (detailView as IDetailView).AddContentsButton (rootPopoverButtonItem); }; // when the master view controller is shown (landscape mode), remove the button // since the controller is shown. this.WillShowViewController += (object sender, UISplitViewShowEventArgs e) => { (detailView as IDetailView).RemoveContentsButton (); popoverController = null; rootPopoverButtonItem = null; }; }
protected override void OnElementChanged (Xamarin.Forms.Platform.iOS.ElementChangedEventArgs<Xamarin.Forms.Button> e) { base.OnElementChanged (e); if (e.NewElement != null) { Control.TouchUpInside += delegate(object sender, EventArgs e2) { var formsView = new CommonFormsView (); var rect = new CGRect (0, 0, 400, 400); var iOSView = FormsViewToNativeiOS.ConvertFormsToNative (formsView, rect); var viewController = new UIViewController(); viewController.Add(iOSView); viewController.View.Frame = rect; var popoverController = new UIPopoverController(viewController); popoverController.ContentViewController.View.BackgroundColor = viewController.View.BackgroundColor; popoverController.PopoverContentSize = rect.Size; var frame = UIApplication.SharedApplication.KeyWindow.RootViewController.View.Frame; popoverController.PresentFromRect (Control.Frame, UIApplication.SharedApplication.KeyWindow.RootViewController.View, 0, true); }; } }
partial void showInfo (NSObject sender) { if (UserInterfaceIdiomIsPhone) { var controller = new FlipsideViewController () { ModalTransitionStyle = UIModalTransitionStyle.FlipHorizontal, }; controller.Done += delegate { this.DismissModalViewControllerAnimated (true); }; this.PresentModalViewController (controller, true); } else { if (flipsidePopoverController == null) { var controller = new FlipsideViewController (); flipsidePopoverController = new UIPopoverController (controller); controller.Done += delegate { flipsidePopoverController.Dismiss (true); }; } if (flipsidePopoverController.PopoverVisible) { flipsidePopoverController.Dismiss (true); } else { flipsidePopoverController.PresentFromBarButtonItem ((UIBarButtonItem)sender, UIPopoverArrowDirection.Any, true); } } }
public NumberEntryView() { BackgroundColor = UIColor.White; BorderStyle = UITextBorderStyle.RoundedRect; this.KeyboardType = UIKeyboardType.DecimalPad; this.ShouldBeginEditing = (t) =>{ if(UIDevice.CurrentDevice.UserInterfaceIdiom == UIUserInterfaceIdiom.Phone || popover != null && popover.PopoverVisible) return true; var num = new NumberInputViewController(this); popover = new UIPopoverController(num){ }; popover.PresentFromRect(this.Frame,this.Superview, UIPopoverArrowDirection.Any,true); popover.DidDismiss += (object sender, EventArgs e) => { this.ResignFirstResponder(); popover.Dispose(); num.Dispose(); popover = null; }; this.SelectAll(this); return true; }; this.EditingDidEnd += (s,e) => { if(NewValue != null) NewValue(Text); if(popover != null && popover.PopoverVisible) popover.Dismiss(true); }; this.InputView = new UIView (new RectangleF (0, 0, 0, 0)); }
public Task SaveAndLaunchFile(Stream stream, string fileType) { if (OriginView == null) return Task.FromResult(true); var data = NSData.FromStream(stream); var width = 824; var height = 668; var popoverView = new UIView(new RectangleF(0, 0, width, height)); popoverView.BackgroundColor = UIColor.White; var webView = new UIWebView(); webView.Frame = new RectangleF(0, 45, width, height - 45); var b = new UIButton(UIButtonType.RoundedRect); b.SetTitle("Done", UIControlState.Normal); b.Frame = new RectangleF(10,10, 60, 25); b.TouchUpInside += (o, e) => _popoverController.Dismiss(true); popoverView.AddSubview(b); popoverView.AddSubview(webView); var bundlePath = NSBundle.MainBundle.BundlePath; System.Diagnostics.Debug.WriteLine(bundlePath); webView.LoadData(data, "application/pdf", "utf-8", NSUrl.FromString("http://google.com")); var popoverContent = new UIViewController(); popoverContent.View = popoverView; _popoverController = new UIPopoverController(popoverContent); _popoverController.PopoverContentSize = new SizeF(width, height); _popoverController.PresentFromRect(new RectangleF(OriginView.Frame.Width/2, 50, 1, 1), OriginView, UIPopoverArrowDirection.Any, true); _popoverController.DidDismiss += (o, e) => _popoverController = null; return Task.FromResult(true); }
public void ShareUrl(object sender, Uri uri) { var item = new NSUrl(uri.AbsoluteUri); var activityItems = new NSObject[] { item }; UIActivity[] applicationActivities = null; var activityController = new UIActivityViewController (activityItems, applicationActivities); if (UIDevice.CurrentDevice.UserInterfaceIdiom == UIUserInterfaceIdiom.Pad) { var window = UIApplication.SharedApplication.KeyWindow; var pop = new UIPopoverController (activityController); var barButtonItem = sender as UIBarButtonItem; if (barButtonItem != null) { pop.PresentFromBarButtonItem(barButtonItem, UIPopoverArrowDirection.Any, true); } else { var rect = new CGRect(window.RootViewController.View.Frame.Width / 2, window.RootViewController.View.Frame.Height / 2, 0, 0); pop.PresentFromRect (rect, window.RootViewController.View, UIPopoverArrowDirection.Any, true); } } else { var viewController = UIApplication.SharedApplication.KeyWindow.RootViewController; viewController.PresentViewController(activityController, true, null); } }
public override void WillHideViewController (UISplitViewController svc, UIViewController aViewController, UIBarButtonItem barButtonItem, UIPopoverController pc) { barButtonItem.Title = "MasterList"; var items = new List<UIBarButtonItem> (Parent.Toolbar.Items); items.Insert (0, barButtonItem); Parent.Toolbar.SetItems (items.ToArray (), true); Parent.MainPopoverController = pc; }
public override void WillHideViewController(UISplitViewController svc, UIViewController aViewController, UIBarButtonItem barButtonItem, UIPopoverController pc) { _svc = svc as SplitViewController; _lefty = barButtonItem; _lefty.Title = "Home"; _pc = pc; ReplaceDetailNavigationViewController(); }
public override void WillHideViewController (UISplitViewController svc, UIViewController aViewController, UIBarButtonItem barButtonItem, UIPopoverController pc) { SessionSpeakersMasterDetail dvc = svc.ViewControllers[1] as SessionSpeakersMasterDetail; if (dvc != null) { dvc.AddNavBarButton (barButtonItem); dvc.Popover = pc; } else Console.WriteLine ("SessionSplitViewController dvc == null (hide)"); }
public void PresentFromPopover(UIView sender,float x,float y) { popover = new UIPopoverController(this) { PopoverContentSize = new SizeF(400, 590) }; popover.PresentFromRect (new CoreGraphics.CGRect (x, y, 1, 1), sender, UIPopoverArrowDirection.Any, true); this.View.Layer.Frame = new CoreGraphics.CGRect (0, 0, 400, 590); }
public override void WillHideViewController (UISplitViewController svc, UIViewController aViewController, UIBarButtonItem barButtonItem, UIPopoverController pc) { PatientDetailViewController dvc = svc.ViewControllers[1] as PatientDetailViewController; if (dvc != null) { dvc.AddNavBarButton (barButtonItem); dvc.Popover = pc; } }
public override void WillHideViewController (UISplitViewController svc, UIViewController aViewController, UIBarButtonItem barButtonItem, UIPopoverController pc) { SpeakerSessionMasterDetail dvc = svc.ViewControllers[1] as SpeakerSessionMasterDetail; if (dvc != null) { dvc.AddNavBarButton (barButtonItem); dvc.Popover = pc; } }
public void PresentFromPopover(UIView sender,float x,float y,float vwidth) { popover = new UIPopoverController(this) { PopoverContentSize = new SizeF(vwidth, 600) }; popover.PresentFromRect (new CoreGraphics.CGRect (x, y, 1, 1), sender, UIPopoverArrowDirection.Any, true); }
// Flipside View Controller public void FlipsideViewControllerDidFinish(FlipsideViewController flipsideViewController) { if (UserInterfaceIdiomIsPhone) { this.DismissViewController (true, null); } else { this.FlipsidePopoverController.Dismiss (true); this.FlipsidePopoverController = null; } }
public override void WillHideViewController (UISplitViewController svc, UIViewController aViewController, UIBarButtonItem barButtonItem, UIPopoverController pc) { barButtonItem.Title = "Workouts"; var tabBarViewController = (UITabBarController)svc.ViewControllers[1]; var detailsNavController = (UINavigationController)tabBarViewController.SelectedViewController; detailsNavController.ViewControllers[0].NavigationItem.SetLeftBarButtonItem (barButtonItem, true); controller.Popover = pc; }
public void PresentFromPopover(UIView sender) { popover = new UIPopoverController(this) { PopoverContentSize = new SizeF(320, 350) }; var frame = new RectangleF(0, 0,(float)sender.Frame.Width, (float)sender.Frame.Height); popover.PresentFromRect(frame, sender, UIPopoverArrowDirection.Down, true); }
public static void TakePicture(UIViewController parent, Action<NSDictionary> callback) { Init (); picker.SourceType = UIImagePickerControllerSourceType.Camera; _callback = callback; if (AppDelegate.UserInterfaceIdiomIsPhone == false) { popover = new UIPopoverController (picker); popover.PresentFromRect (new RectangleF (150, 150, 500, 500), parent.View, UIPopoverArrowDirection.Any, true); } else { parent.PresentViewController (picker, true, null); } }
// moveToVerifyViewSegue public override void ViewDidLoad() { base.ViewDidLoad (); // Perform any additional setup after loading the view, typically from a nib. btnAdd.Enabled = false; PopMenuView = new PopMenuViewController (); PopMenuView.FeatureSelected += (sender, e) => { Debug.WriteLine (e.SelectedFeatureName); if ("Edit" == e.SelectedFeatureName) { btnAdd.Enabled = true; } else if ("Edit" == e.SelectedFeatureName) { btnAdd.Enabled = true; } else { btnAdd.Enabled = false; } }; btnMenu.Clicked += (sender, e) => { UIPopoverController pop = new UIPopoverController (PopMenuView); pop.SetPopoverContentSize (new CGSize (200, 150), true); pop.PresentFromBarButtonItem ( btnMenu, UIPopoverArrowDirection.Any, true); }; btnAdd.Clicked += (sender, e) => { PerformSegue ("moveToFlow01ViewSegue", this); }; var editingVotes = new VoteManager ().ReadEditVotesFromRemote (); AppDelegate.EditingVotes.AddRange (editingVotes); var source = new TableSource (AppDelegate.EditingVotes); editingVoteTable.Source = source; source.EditingVoteSelected += ( sender, e) => { AppDelegate.SelectedEditingVote = e.SelectedEditingVote; if (AppDelegate.SelectedEditingVote.Status == EditStatus.Request) { PerformSegue ("moveToVerifyViewSegue", this); } }; }
void SharePlaceInfo (object sender, EventArgs e) { var message = new NSString (string.Format("{0}\n{1}\n{2}", viewModel.Place.Name, viewModel.Place.Website, viewModel.ShortAddress)); var activityController = new UIActivityViewController (new NSObject [] { message }, null); if (UIDevice.CurrentDevice.UserInterfaceIdiom == UIUserInterfaceIdiom.Pad) { shareController = new UIPopoverController (activityController); shareController.PresentFromBarButtonItem(shareButton, UIPopoverArrowDirection.Any, true); } else { PresentViewController(activityController, true, null); } }
public async void ShowPopoverAsync(NSObject sender) { // Set the sender to a UIButton. UIButton tappedButton = (UIButton)sender; var content = new PopoverContentViewController(); DetailPopover = new UIPopoverController(content); DetailPopover.PopoverContentSize = new SizeF(375, 375); DetailPopover.PresentFromRect(tappedButton.Frame, View, UIPopoverArrowDirection.Any, true); // await! control returns to the caller var result = await WaitAsync(); content.WebViewContent = result; }
public override void WillHideViewController(UISplitViewController svc, UIViewController aViewController, UIBarButtonItem barButtonItem, UIPopoverController pc) { barButtonItem.Title = "Root View Controller"; var detailViewController = svc.ViewControllers[1] as ISubstitutableDetailViewController; detailViewController.PopOverController = pc; detailViewController.RootPopoverButtonItem = barButtonItem; detailViewController.ShowRootPopoverButtonItem(detailViewController.RootPopoverButtonItem); }
/// <summary> /// PickerView Must have non-empty frame /// </summary> public NativePickerContainer(UIView targetView, UIView pickerView, PickerBase owner) : base() { this.owner = owner; this.targetView = targetView; this.pickerView = pickerView; var scroll = new UIScrollView(this.View.Frame); if (UIDevice.CurrentDevice.UserInterfaceIdiom == UIUserInterfaceIdiom.Phone) { scroll.AddSubview(new UIToolbar(this.View.Frame) { AutoresizingMask = UIViewAutoresizing.FlexibleDimensions }); } scroll.AutoresizingMask = UIViewAutoresizing.FlexibleDimensions; scroll.AddSubview(this.pickerView); this.View.AddSubview(scroll); this.navigation = new UINavigationController(this); int navBarVisibilityFactor = this.owner.HideSystemButtons ? 0 : 1; this.navigation.NavigationBarHidden = this.owner.HideSystemButtons; this.navigation.View.Frame = new CGRect(0, 0, this.pickerView.Frame.Width, this.pickerView.Frame.Height + navBarVisibilityFactor * this.navigation.NavigationBar.Frame.Height); this.navigationSize = this.navigation.View.Frame.Size; if (UIDevice.CurrentDevice.UserInterfaceIdiom == UIUserInterfaceIdiom.Pad) { this.popover = new UIPopoverController(this.navigation); this.popover.PopoverContentSize = this.navigation.View.Frame.Size; } else { this.fadeView.AddSubview(this.navigation.View); } this.NavigationItem.RightBarButtonItem = new UIBarButtonItem(owner.OkButtonTitle, UIBarButtonItemStyle.Done, (s, e) => { this.Hide(true); if (this.DoneButtonAction != null) { this.DoneButtonAction(); } }); this.NavigationItem.LeftBarButtonItem = new UIBarButtonItem(owner.CancelButtonTitle, UIBarButtonItemStyle.Bordered, (s, e) => { this.Hide(true); }); }
public override void WillHideViewController (UISplitViewController svc, UIViewController aViewController, UIBarButtonItem barButtonItem, UIPopoverController pc) { //Console.WriteLine("SplitDelegate.WillHideViewController"); barButtonItem.Title = "Sessions"; var detailViewController = svc.ViewControllers [1] as ISubstitutableDetailViewController; detailViewController.PopOverController = pc; //Console.WriteLine("SplitDelegate.WillHideViewController - detailViewController.PopOverController is null " + (detailViewController.PopOverController == null).ToString()); detailViewController.RootPopoverButtonItem = barButtonItem; //Console.WriteLine("SplitDelegate.WillHideViewController - detailViewController.RootPopoverButtonItem is null " + (detailViewController.RootPopoverButtonItem == null).ToString()); //Console.WriteLine("SplitDelegate.WillHideViewController - showRootPopoverButtonItem"); detailViewController.ShowRootPopoverButtonItem (detailViewController.RootPopoverButtonItem); }
public InvoiceLineCell() : base(Key) { AutoAddSubview (Description = new UILabel { Text = "Description", }, 4 ); AutoAddSubview (Price = new UILabel{ Text = "Price",TextAlignment = UITextAlignment.Center },2); AutoAddSubview (Discount = new UIBorderedButton () { Title = "0", Tapped = (b) =>{ if(popup != null) popup.Dispose(); var d = new DiscountViewController(line.Price){ DollarChanged = (dollar) =>{ popup.Dismiss(true); Line.Discount = dollar; } }; popup = new UIPopoverController(d); popup.DidDismiss += (object sender, EventArgs e) => { line.Discount = 0; d.Dispose(); popup.Dispose(); popup = null; }; popup.PresentFromRect(Discount.Bounds,Discount, UIPopoverArrowDirection.Any,true); }},2); AutoAddSubview (TransTypeButton = new UIBorderedButton{ Title = "S" ,TintColor = Color.LightBlue}); TransTypeButton.TouchUpInside += (sender, e) => { var sheet = new SimpleActionSheet(); var types = Database.Main.Table<TransactionType>().ToList(); types.ForEach(x=> sheet.Add(x.Description,Color.LightBlue,()=> Line.TransType = x)); sheet.ShowFrom(TransTypeButton.Bounds,TransTypeButton,true); }; AddSubview (Total = new UILabel{ Text = "Total",TextAlignment = UITextAlignment.Center },9,columnspan:2); }
public void ShareUrl(string url) { var item = new NSUrl(new Uri(url).AbsoluteUri); var activityItems = new NSObject[] { item }; UIActivity[] applicationActivities = null; var activityController = new UIActivityViewController (activityItems, applicationActivities); if (UIDevice.CurrentDevice.UserInterfaceIdiom == UIUserInterfaceIdiom.Pad) { var window = ((UIApplicationDelegate)UIApplication.SharedApplication.Delegate).Window; var pop = new UIPopoverController (activityController); pop.PresentFromRect (new CoreGraphics.CGRect (window.RootViewController.View.Frame.Width / 2, window.RootViewController.View.Frame.Height / 2, 0, 0), window.RootViewController.View, UIPopoverArrowDirection.Any, true); } else { _modalHost.PresentModalViewController(activityController, true); } }
public DatePickerPopover(UIView owner) { this.Owner = owner; this.datePicker = new UIDatePicker(); this.datePicker.Frame = new RectangleF(0, 44, 320, 216); var popoverContent = new UIViewController(); //ViewController var popoverView = new UIView { BackgroundColor = UIColor.Black }; //view popoverView.AddSubview(this.DatePicker); popoverContent.View = popoverView; popoverController = new UIPopoverController(popoverContent); popoverController.Delegate=this; popoverController.SetPopoverContentSize(new SizeF(320, 264), false); }
public void ShowPicker(UIView viewForPicker, RectangleF location) { var toolbar = new UIToolbar (new RectangleF (0, 0, 320, 44)) { Items = new[] { new UIBarButtonItem (UIBarButtonSystemItem.FlexibleSpace), new UIBarButtonItem (UIBarButtonSystemItem.Done, (s, e) => { if (sheet != null) { sheet.DismissWithClickedButtonIndex (0, true); sheet = null; } if (popover != null) { popover.Dismiss(true); popover = null; } }) }, BarStyle = UIBarStyle.Default, }; if (UIDevice.CurrentDevice.UserInterfaceIdiom == UIUserInterfaceIdiom.Phone) { sheet = new UIActionSheet (); sheet.AddSubview (this); sheet.AddSubviews (toolbar); sheet.BackgroundColor = UIColor.Clear; sheet.ShowInView (viewForPicker); UIView.Animate (.25, () => sheet.Bounds = new RectangleF (0, 0, viewForPicker.Frame.Width, 485)); } else { this.Frame = new RectangleF (0, 44, 320, 216); var view = new UIView (); view.Add (this); view.Add (toolbar); var vc = new UIViewController (); vc.View = view; vc.PreferredContentSize = new SizeF (320, 260); popover = new UIPopoverController (vc); popover.PresentFromRect (location, viewForPicker, UIPopoverArrowDirection.Down, true); } }
public void WillHideViewController(UISplitViewController splitController, UIViewController viewController, UIBarButtonItem barButtonItem, UIPopoverController popoverController) { object [] args = new object [] { __luaInterface_luaTable , splitController, viewController, barButtonItem, popoverController }; object [] inArgs = new object [] { __luaInterface_luaTable, splitController, viewController, barButtonItem, popoverController }; int [] outArgs = new int [] { }; Type [] returnTypes = new Type [1] { typeof(void) }; LuaFunction function = NLua.Method.LuaClassHelper.GetTableFunction (__luaInterface_luaTable, "WillHideViewController"); NLua.Method.LuaClassHelper.CallFunction (function, args, returnTypes, inArgs, outArgs); }
public void WillHideViewController(UISplitViewController splitController, UIViewController viewController, UIBarButtonItem barButtonItem, UIPopoverController popoverController) { barButtonItem.Title = NSBundle.MainBundle.LocalizedString("Master", "Master"); NavigationItem.SetLeftBarButtonItem(barButtonItem, true); masterPopoverController = popoverController; }
public void SetPopoverController(UIPopoverController popoverC) { DismissPopoverView(); AppDelegateInstance.CurPopoverController = popoverC; }
public override void WillHideViewController(UISplitViewController svc, UIViewController aViewController, UIBarButtonItem barButtonItem, UIPopoverController pc) { PresentButton = barButtonItem; }
public override void WillHideViewController(UISplitViewController svc, UIViewController aViewController, UIBarButtonItem barButtonItem, UIPopoverController pc) { this.TwitterDetailsViewController.PopOver = pc; this.TwitterDetailsViewController.AddToolBarButton(barButtonItem); }
/// <summary> /// Shoulds the dismiss. /// </summary> /// <param name="popoverController">The popover controller.</param> /// <returns><c>true</c> if XXXX, <c>false</c> otherwise.</returns> public override bool ShouldDismiss(UIPopoverController popoverController) { return(true); }
private async Task <Auth0User> SendLoginAsync( RectangleF rect, object view, string connection, bool withRefreshToken, string scope, string title) { // Launch server side OAuth flow using the GET endpoint scope = IncreaseScopeWithOfflineAccess(withRefreshToken, scope); var tcs = new TaskCompletionSource <Auth0User> (); var auth = await this.GetAuthenticator(connection, scope, title); UIViewController c = auth.GetUI(); UIViewController controller = null; UIPopoverController popover = null; auth.Error += (o, e) => { if (controller != null) { controller.DismissViewController(true, null); } if (popover != null) { popover.Dismiss(true); } var ex = e.Exception ?? new AuthException(e.Message); tcs.TrySetException(ex); }; auth.Completed += (o, e) => { if (controller != null) { controller.DismissViewController(true, null); } if (popover != null) { popover.Dismiss(true); } if (!e.IsAuthenticated) { tcs.TrySetCanceled(); } else { this.SetupCurrentUser(e.Account.Properties); tcs.TrySetResult(this.CurrentUser); } }; controller = view as UIViewController; if (controller != null) { controller.PresentViewController(c, true, null); } else { UIView v = view as UIView; UIBarButtonItem barButton = view as UIBarButtonItem; popover = new UIPopoverController(c); if (barButton != null) { popover.PresentFromBarButtonItem(barButton, UIPopoverArrowDirection.Any, true); } else { popover.PresentFromRect(rect, v, UIPopoverArrowDirection.Any, true); } } return(await tcs.Task); }
protected abstract void SetPopover(UIPopoverController popover);
public override void WillHideViewController(UISplitViewController svc, UIViewController aViewController, UIBarButtonItem barButtonItem, UIPopoverController pc) { var dvc = svc as SplitViewController; if (dvc != null) { dvc.AddNavigationButton(barButtonItem); dvc.SetPopover(pc); } }
private Task <MediaFile> GetMediaAsync(UIImagePickerControllerSourceType sourceType, string mediaType, StoreCameraMediaOptions options = null) { UIViewController viewController = null; UIWindow window = UIApplication.SharedApplication.KeyWindow; if (window == null) { throw new InvalidOperationException("There's no current active window"); } if (window.WindowLevel == UIWindowLevel.Normal) { viewController = window.RootViewController; } if (viewController == null) { window = UIApplication.SharedApplication.Windows.OrderByDescending(w => w.WindowLevel).FirstOrDefault(w => w.RootViewController != null && w.WindowLevel == UIWindowLevel.Normal); if (window == null) { throw new InvalidOperationException("Could not find current view controller"); } else { viewController = window.RootViewController; } } while (viewController.PresentedViewController != null) { viewController = viewController.PresentedViewController; } MediaPickerDelegate ndelegate = new MediaPickerDelegate(viewController, sourceType, options); var od = Interlocked.CompareExchange(ref pickerDelegate, ndelegate, null); if (od != null) { throw new InvalidOperationException("Only one operation can be active at at time"); } var picker = SetupController(ndelegate, sourceType, mediaType, options); if (UIDevice.CurrentDevice.UserInterfaceIdiom == UIUserInterfaceIdiom.Pad && sourceType == UIImagePickerControllerSourceType.PhotoLibrary) { ndelegate.Popover = new UIPopoverController(picker); ndelegate.Popover.Delegate = new MediaPickerPopoverDelegate(ndelegate, picker); ndelegate.DisplayPopover(); } else { if (UIDevice.CurrentDevice.CheckSystemVersion(9, 0)) { picker.ModalPresentationStyle = UIModalPresentationStyle.OverCurrentContext; } viewController.PresentViewController(picker, true, null); } return(ndelegate.Task.ContinueWith(t => { if (popover != null) { popover.Dispose(); popover = null; } Interlocked.Exchange(ref pickerDelegate, null); return t; }).Unwrap()); }
public override void DidDismiss(UIPopoverController aPopoverController) { Dismiss(); }
protected override Task <string> LoginAsyncOverride() { var tcs = new TaskCompletionSource <string>(); var auth = new WebRedirectAuthenticator(StartUri, EndUri); auth.ClearCookiesBeforeLogin = false; UIViewController c = auth.GetUI(); UIViewController controller = null; UIPopoverController popover = null; auth.Error += (o, e) => { NSAction completed = () => { Exception ex = e.Exception ?? new Exception(e.Message); tcs.TrySetException(ex); }; if (controller != null) { controller.DismissViewController(true, completed); } if (popover != null) { popover.Dismiss(true); completed(); } }; auth.Completed += (o, e) => { NSAction completed = () => { if (!e.IsAuthenticated) { tcs.TrySetException(new InvalidOperationException(Resources.IAuthenticationBroker_AuthenticationCanceled)); } else { tcs.TrySetResult(e.Account.Properties["token"]); } }; if (controller != null) { controller.DismissViewController(true, completed); } if (popover != null) { popover.Dismiss(true); completed(); } }; controller = view as UIViewController; if (controller != null) { controller.PresentViewController(c, true, null); } else { UIView v = view as UIView; UIBarButtonItem barButton = view as UIBarButtonItem; popover = new UIPopoverController(c); if (barButton != null) { popover.PresentFromBarButtonItem(barButton, UIPopoverArrowDirection.Any, true); } else { popover.PresentFromRect(rect, v, UIPopoverArrowDirection.Any, true); } } return(tcs.Task); }
public override void WillPresentViewController(UISplitViewController svc, UIPopoverController pc, UIViewController aViewController) { }
public void WillShowMasterViewController(UISplitViewController splitViewController, UIViewController masterViewController, UIBarButtonItem barButtonItem) { NavigationItem.SetLeftBarButtonItem(null, true); masterPopoverController = null; }
Task <MediaFile> GetMediaAsync(UIImagePickerControllerSourceType sourceType, string mediaType, StoreCameraMediaOptions options = null, CancellationToken token = default(CancellationToken)) { var viewController = GetHostViewController(); if (token.IsCancellationRequested) { return(Task.FromResult((MediaFile)null)); } var ndelegate = new MediaPickerDelegate(viewController, sourceType, options, token); var od = Interlocked.CompareExchange(ref pickerDelegate, ndelegate, null); if (od != null) { throw new InvalidOperationException("Only one operation can be active at a time"); } var picker = SetupController(ndelegate, sourceType, mediaType, options); if (UIDevice.CurrentDevice.UserInterfaceIdiom == UIUserInterfaceIdiom.Pad && sourceType == UIImagePickerControllerSourceType.PhotoLibrary) { ndelegate.Popover = popover = new UIPopoverController(picker); ndelegate.Popover.Delegate = new MediaPickerPopoverDelegate(ndelegate, picker); ndelegate.DisplayPopover(); token.Register(() => { if (popover == null) { return; } NSRunLoop.Main.BeginInvokeOnMainThread(() => { ndelegate.Popover.Dismiss(true); ndelegate.CancelTask(); }); }); } else { if (UIDevice.CurrentDevice.CheckSystemVersion(9, 0)) { picker.ModalPresentationStyle = options?.ModalPresentationStyle == MediaPickerModalPresentationStyle.OverFullScreen ? UIModalPresentationStyle.OverFullScreen : UIModalPresentationStyle.FullScreen; } viewController.PresentViewController(picker, true, null); token.Register(() => { if (picker == null) { return; } NSRunLoop.Main.BeginInvokeOnMainThread(() => { picker.DismissModalViewController(true); ndelegate.CancelTask(); }); }); } return(ndelegate.Task.ContinueWith(t => { Dismiss(popover, picker); return t.Result == null ? null : t.Result.FirstOrDefault(); })); }
public void WillHideMasterViewController(UISplitViewController splitViewController, UIViewController masterViewController, UIBarButtonItem barButtonItem, UIPopoverController popoverController) { barButtonItem.Title = masterViewController.Title; NavigationItem.SetLeftBarButtonItem(barButtonItem, true); masterPopoverController = popoverController; }
public InvoiceViewController() { SetTitle(); Settings.Shared.SubscribeToProperty("TestMode", SetTitle); var searchBar = new ItemSearchView { Frame = new System.Drawing.RectangleF(0, 0, 200, 30) }; searchBar.ItemSelected += (Item obj) => { Invoice.AddItem(obj); }; NavigationItem.RightBarButtonItem = new UIBarButtonItem(searchBar); NavigationItem.LeftBarButtonItem = new UIBarButtonItem(UIImage.FromBundle("menu").ImageWithRenderingMode(UIImageRenderingMode.AlwaysTemplate), UIBarButtonItemStyle.Plain, (s, e) => { //Show simple actionsheet if (sheet != null) { sheet.DismissWithClickedButtonIndex(-1, true); return; } sheet = new SimpleActionSheet { { "New Invoice", async() => { if (await AskSave()) { NewInvoice(); } } }, { "Load Invoice", () => { if (popover != null) { popover.Dismiss(true); } popover = new UIPopoverController(new UINavigationController(new LoadInvoiceViewController() { InvoiceSelected = async(i) => { popover.Dismiss(true); try{ BigTed.BTProgressHUD.ShowContinuousProgress(); if (Invoice != null && Invoice.Id != i.Id) { if (!await AskSave()) { return; } } Invoice.DeleteLocal(); Invoice = await WebService.Main.GetInvoice(i.Id); Invoice.Save(true); } catch (Exception ex) { Console.WriteLine(ex); } finally{ BigTed.BTProgressHUD.Dismiss(); } }, })); popover.DidDismiss += (sender, evt) => { popover.Dispose(); }; popover.PresentFromBarButtonItem(NavigationItem.LeftBarButtonItem, UIPopoverArrowDirection.Any, true); } }, { "Payout Buy", () => { if (popover != null) { popover.Dismiss(true); } popover = new UIPopoverController(new UINavigationController(new LoadBuyPayoutViewController() { InvoiceSelected = async(i) => { popover.Dismiss(true); try{ BigTed.BTProgressHUD.ShowContinuousProgress(); if (Invoice != null && Invoice.Id != i.Id) { if (!await AskSave()) { return; } } Invoice.DeleteLocal(); Invoice = await WebService.Main.GetInvoice(i.Id); //Setup payments Database.Main.Table <PaymentType> ().Where(x => x.IsActive) .OrderBy(X => X.SortOrder).ToList().ForEach(x => Invoice.Payments.Add(new Payment { PaymentType = x })); Invoice.Save(true); if ((i as BuyInvoice).IsOnAccount) { Invoice.OnAccountPayment.Amount = Invoice.Total; } else { Invoice.CashPayment.Amount = Invoice.Total; } } catch (Exception ex) { Console.WriteLine(ex); } finally{ BigTed.BTProgressHUD.Dismiss(); } }, })); popover.DidDismiss += (sender, evt) => { popover.Dispose(); }; popover.PresentFromBarButtonItem(NavigationItem.LeftBarButtonItem, UIPopoverArrowDirection.Any, true); } }, { "Settings", () => this.PresentViewControllerAsync(new UINavigationController(new SettingsViewController()), true) }, }; sheet.Dismissed += (object sender, UIButtonEventArgs e2) => { sheet.Dispose(); sheet = null; }; sheet.ShowFrom(s as UIBarButtonItem, true); }); //this.AutomaticallyAdjustsScrollViewInsets = false; }
/// <summary> /// Dids the dismiss. /// </summary> /// <param name="popoverController">The popover controller.</param> public override void DidDismiss(UIPopoverController popoverController) { _pickerDelegate.Canceled(_picker); }
public MapViewDelegate() { popoverController = new UIPopoverController(new UIViewController()); popoverController.PopoverContentSize = new CoreGraphics.CGSize(100, 100); }
public override void ViewDidLoad() { base.ViewDidLoad(); bannerView.Hidden = true; UIApplication.SharedApplication.SetStatusBarHidden(true, false); Util.SetColorsOnStartup(); this.KeysCollectionView.BackgroundColor = Util.BackgroundColor; ClearButton(ExportConfigBtn); ExportConfigBtn.SetImage(Images.ExportConfigImg, UIControlState.Normal); ClearButton(ImportConfigBtn); ImportConfigBtn.SetImage(Images.ImportConfigImg, UIControlState.Normal); ClearButton(NewConfigBtn); NewConfigBtn.SetImage(Images.NewConfigImg, UIControlState.Normal); ClearButton(SearchConfigBtn); SearchConfigBtn.SetImage(Images.SearchConfigImg, UIControlState.Normal); ClearButton(SelectConfigBtn); SelectConfigBtn.SetImage(Images.ListConfigsImg, UIControlState.Normal); ClearButton(SettingsBtn); SettingsBtn.SetImage(Images.SettingsImg, UIControlState.Normal); ClearButton(EditBtn); EditBtn.SetImage(Images.EditConfigImg, UIControlState.Normal); //EditBtn.SetImage(Images.EditConfigImgSelected,UIControlState.Selected); //load last used configuration or default if (Util.GetLastConfigurationUsed() == null) //this is the first run ever { DBManager.Instance.CreateTables(); _keySourceData = new KeySource(new List <FPKey> ()); } else { _loadedConfiguration = ConfigsEngine.LoadConfiguration(Util.GetLastConfigurationUsed()); _keySourceData = new KeySource(_loadedConfiguration.Keys); ConfigNameLbl.Text = _loadedConfiguration.Name.ToUpper(); } //TODO add iphone KeysCollectionView.RegisterNibForCell(UINib.FromName("KeyCell_iPad", NSBundle.MainBundle), KeyCell.Key); _keySourceData.KeyPressed += HandleKeyPressed; _keySourceData.OnKeyMoved += HandleKeyMoved; KeysCollectionView.Source = _keySourceData; KeysCollectionView.DelaysContentTouches = false; var longPressGesture = new UILongPressGestureRecognizer(HandleLongGesture); KeysCollectionView.AddGestureRecognizer(longPressGesture); #region Config popOver UIViewController configListViewController = new UIViewController(); configListViewController.View = ConfigListTableView; configListViewController.View.BackgroundColor = UIColor.White; _configListPopOver = new UIPopoverController(configListViewController); _configListPopOver.BackgroundColor = UIColor.White; _configsSource = new ConfigurationsListSource(); _configsSource.OnConfigurationSelected += OnConfigurationSelected; _configsSource.OnConfigurationDeleted += OnConfigurationDeleted; ConfigListTableView.Source = _configsSource; ConfigListTableView.ReloadData(); ConfigListTableView.TableFooterView = new UIView(); #endregion Util.OnEnableNightMode += OnNightModeChanged; #if !DISCONNECTED CommsEngine.Instance.OnServerDisconnected += HandleOnServerDisconnected; if (Util.GetServerIP() == null) //first Time { PresentServerSelection(); } else { CommsEngine.Instance.OnClientConnected += HandleOnClientConnected; ConnectToLastKnownServer(); } #else if (Util.GetLastConfigurationUsed() == null) { LoadDefaultConfiguration(); } #endif }
private void loadpop(NSObject sender) { int items = 0; try { items = dataPos.shareoptions.Count; } catch { items = 0; } if (items == 0) { return; } shareList = new string[items]; items = 0; foreach (shareOptions s in dataPos.shareoptions) { shareList [items] = s.key; items++; } /* * shareList[0]= "FaceBook"; * shareList[1]= "Twitter"; * shareList[2]= "Email"; */ if (showComboTaks) { return; } cmbShare _pickerDataModel; _pickerDataModel = new cmbShare(this, shareList); BarraShare = BarraShareGet(); pkrShare = new UIPickerView(new RectangleF(0, 200, 320, 216)); pkrShare.Source = _pickerDataModel; pkrShare.ShowSelectionIndicator = true; UIViewController vistaMain = new UIViewController(); vistaMain.View.Frame = new RectangleF(0, 0, 320, 240); BarraShare.Frame = new RectangleF(0, 0, 320, 40); pkrShare.Frame = new RectangleF(0, 40, 320, 216); vistaMain.View.AddSubview(BarraShare); vistaMain.View.AddSubview(pkrShare); popviewNavigate = new UINavigationController(vistaMain); detailparameters = new UIPopoverController(popviewNavigate); detailparameters.SetPopoverContentSize(new SizeF(320, 240), true); detailparameters.DidDismiss += delegate { LastTappedButton = null; detailparameters = null; }; UIButton tappedButton = (UIButton)sender; // this is for present the pop View detailparameters.PresentFromRect(tappedButton.Frame, View, UIPopoverArrowDirection.Any, true); LastTappedButton = tappedButton; }
{ // this defines split controller behavior in case of device orientation changes public override void WillHideViewController(UISplitViewController svc, UIViewController aViewController, UIBarButtonItem barButtonItem, UIPopoverController pc) { DetailedTabs dvc = svc.ViewControllers[1] as DetailedTabs; if (dvc != null) { // defines the new frame for right side view controller which should now take up the entire screen space dvc.View.Frame = new CoreGraphics.CGRect(0, 0, 768, 1004); // adds a button which will show the left side table with customers data when tapped dvc.AddLeftNavBarButton(barButtonItem); // defines a navigation frame for the navigation bar dvc.MyNavigationBar.Frame = new CoreGraphics.CGRect(0, 0, dvc.View.Bounds.Width, 44); // set up the popover view controller ( JobRunTable ) dvc.Popover = pc; } }
public override void DidDismiss(UIPopoverController popoverController) { _parent.shareController = null; }
public void WillShowViewController(UISplitViewController svc, UIViewController vc, UIBarButtonItem button) { // Called when the view is shown again in the split view, invalidating the button and popover controller. NavigationItem.SetLeftBarButtonItem(null, true); masterPopoverController = null; }
public override void WillHideViewController(UISplitViewController svc, UIViewController aViewController, UIBarButtonItem barButtonItem, UIPopoverController pc) { barButtonItem.Title = "MasterList"; var items = new List <UIBarButtonItem> (Parent.Toolbar.Items); items.Insert(0, barButtonItem); Parent.Toolbar.SetItems(items.ToArray(), true); Parent.MainPopoverController = pc; }
/// <summary> /// Gets the media asynchronous. /// </summary> /// <param name="sourceType">Type of the source.</param> /// <param name="mediaType">Type of the media.</param> /// <param name="options">The options.</param> /// <returns>Task<MediaFile>.</returns> /// <exception cref="InvalidOperationException"> /// There's no current active window /// or /// Could not find current view controller /// or /// Only one operation can be active at at time /// </exception> private Task <MediaFile> GetMediaAsync( UIImagePickerControllerSourceType sourceType, string mediaType, MediaStorageOptions options = null) { var window = UIApplication.SharedApplication.KeyWindow; if (window == null) { throw new InvalidOperationException("There's no current active window"); } var viewController = window.RootViewController; #if __IOS_10__ if (viewController == null || (viewController.PresentedViewController != null && viewController.PresentedViewController.GetType() == typeof(UIAlertController))) { window = UIApplication.SharedApplication.Windows.OrderByDescending(w => w.WindowLevel) .FirstOrDefault(w => w.RootViewController != null); if (window == null) { throw new InvalidOperationException("Could not find current view controller"); } viewController = window.RootViewController; } #endif while (viewController.PresentedViewController != null) { viewController = viewController.PresentedViewController; } var ndelegate = new MediaPickerDelegate(viewController, sourceType, options); var od = Interlocked.CompareExchange(ref _pickerDelegate, ndelegate, null); if (od != null) { throw new InvalidOperationException("Only one operation can be active at at time"); } var picker = SetupController(ndelegate, sourceType, mediaType, options); if (UIDevice.CurrentDevice.UserInterfaceIdiom == UIUserInterfaceIdiom.Pad && sourceType == UIImagePickerControllerSourceType.PhotoLibrary) { ndelegate.Popover = new UIPopoverController(picker) { Delegate = new MediaPickerPopoverDelegate(ndelegate, picker) }; ndelegate.DisplayPopover(); } else { viewController.PresentViewController(picker, true, null); } return(ndelegate.Task.ContinueWith( t => { if (_popover != null) { _popover.Dispose(); _popover = null; } Interlocked.Exchange(ref _pickerDelegate, null); return t; }).Unwrap()); }
public override void WillPresentViewController(UISplitViewController svc, UIPopoverController pc, UIViewController aViewController) { if (Parent.BarButtonItemPopover.PopoverVisible) { Parent.BarButtonItemPopover.Dismiss(true); } }
public override bool ShouldDismiss(UIPopoverController popoverController) => true;