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 RootViewController() { var downloadButton = View = stackPanel = new StackPanel() { new SimpleButton { Title = "Simple ActionSheet", BackgroundColor = UIColor.Gray, Tapped = (btn) => { var popup = new SimpleActionSheet() { { "Red", UIColor.Red, () => Console.WriteLine("red") }, { "Blue", UIColor.Blue, () => Console.WriteLine("Blue") }, { "Black", UIColor.Black, () => Console.WriteLine("Black") }, { "Green", UIColor.Green, () => Console.WriteLine("Green") }, { "Cancel", () => Console.WriteLine("Cancel") } }; popup.ShowInView(View); } }, new SimpleButton { Title = "I move on tilt", BackgroundColor = UIColor.Gray, }.AddMotion(-100, 100), new SimpleButton { Title = "Click to download", BackgroundColor = UIColor.Gray, Tapped = async(btn) => { btn.Enabled = false; var endPath = Path.Combine(DocumentsFolder, "test.zip"); if (File.Exists(endPath)) { File.Delete(endPath); } var downloader = new BackgroundDownload(); downloader.ProgressChanged += (float obj) => Device.EnsureInvokedOnMainThread(() => btn.Title = obj.ToString()); await downloader.DownloadFileAsync(new Uri("http://ipv4.download.thinkbroadband.com/5MB.zip"), endPath); btn.Title = "Click to download"; btn.Enabled = true; } }, new UIImageView(UIImage.FromBundle("monkey").Blur(30)) { ContentMode = UIViewContentMode.ScaleAspectFill }, }; }
public SettingsViewController() : base(UITableViewStyle.Grouped, null) { var testButton = new SimpleButton { Title = "Test Connection", TitleColor = UIColor.Black, Tapped = async(t) => { View.DismissKeyboard(); var f = t.Frame; t.Title = "Testing..."; t.Title = string.Format("Test Connection: {0}", await WebService.Main.Test()); t.Frame = f; } }; this.NavigationItem.LeftBarButtonItem = new UIBarButtonItem(UIBarButtonSystemItem.Done, (s, e) => save()); Root = new RootElement("Settings") { new Section("Server Settings") { new EntryElement("Server", "http://10.0.1.2/api/", Settings.Shared.ServerUrl) { ShouldAutoCorrect = false, ValueUpdated = (v) => { Settings.Shared.ServerUrl = v; }, }, new EntryElement("Test Server", "http://10.0.1.2/api/", Settings.Shared.TestServerUrl) { ShouldAutoCorrect = false, ValueUpdated = (v) => { Settings.Shared.TestServerUrl = v; }, }, new UIViewElement("", testButton, false), }, new Section("iPad Settings") { new BooleanElement("Test Mode", Settings.Shared.TestMode) { ValueUpdated = (v) => { Settings.Shared.TestMode = v; } }, new EntryElement("Register Id", "1", Settings.Shared.RegisterId.ToString()) { ShouldAutoCorrect = false, ValueUpdated = (v) => { try { Settings.Shared.RegisterId = int.Parse(v); } catch (Exception ex) { Console.WriteLine(ex); new SimpleAlertView("Invalid Register ID", "The Register ID must be a number").Show(); } }, }, }, new Section("Payment Settings") { (processorType = new StringElement("Credit Card Processor", Settings.Shared.CreditCardProcessor.ToString(), () => { // var sheet = new SimpleActionSheet(); Enum.GetValues(typeof(CreditCardProcessorType)).Cast <CreditCardProcessorType>().ToList().ForEach(x => sheet.Add(x.ToString(), Color.LightBlue, () => { if (x == CreditCardProcessorType.Paypal) { //check if paypal is installed } processorType.Value = x.ToString(); Settings.Shared.CreditCardProcessor = x; processorType.Reload(); UpdatePaymentDetails(); })); sheet.ShowFrom(processorType.GetActiveCell().Bounds, processorType.GetActiveCell(), true); })), }, new Section() { new StringElement("Version", NSBundle.MainBundle.InfoDictionary["CFBundleVersion"].ToString()), new StringElement("Check for updates", () => Updater.Shared.Update()), } }; UpdatePaymentDetails(); }
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; }