LinkerPleaseInclude.cs.pp 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. using System;
  2. using System.Collections.Specialized;
  3. using System.Windows.Input;
  4. using Cirrious.MvvmCross.Touch.Views;
  5. using Foundation;
  6. using UIKit;
  7. namespace $rootnamespace$
  8. {
  9. // This class is never actually executed, but when Xamarin linking is enabled it does ensure types and properties
  10. // are preserved in the deployed app
  11. [Preserve(AllMembers = true)]
  12. public class LinkerPleaseInclude
  13. {
  14. public void Include(UIButton uiButton)
  15. {
  16. uiButton.TouchUpInside += (s, e) =>
  17. uiButton.SetTitle(uiButton.Title(UIControlState.Normal), UIControlState.Normal);
  18. }
  19. public void Include(UIBarButtonItem barButton)
  20. {
  21. barButton.Clicked += (s, e) =>
  22. barButton.Title = barButton.Title + "";
  23. }
  24. public void Include(UITextField textField)
  25. {
  26. textField.Text = textField.Text + "";
  27. textField.EditingChanged += (sender, args) => { textField.Text = ""; };
  28. }
  29. public void Include(UITextView textView)
  30. {
  31. textView.Text = textView.Text + "";
  32. textView.Changed += (sender, args) => { textView.Text = ""; };
  33. }
  34. public void Include(UILabel label)
  35. {
  36. label.Text = label.Text + "";
  37. label.AttributedText = new NSAttributedString(label.AttributedText.ToString() + "");
  38. }
  39. public void Include(UIImageView imageView)
  40. {
  41. imageView.Image = new UIImage(imageView.Image.CGImage);
  42. }
  43. public void Include(UIDatePicker date)
  44. {
  45. date.Date = date.Date.AddSeconds(1);
  46. date.ValueChanged += (sender, args) => { date.Date = NSDate.DistantFuture; };
  47. }
  48. public void Include(UISlider slider)
  49. {
  50. slider.Value = slider.Value + 1;
  51. slider.ValueChanged += (sender, args) => { slider.Value = 1; };
  52. }
  53. public void Include(UIProgressView progress)
  54. {
  55. progress.Progress = progress.Progress + 1;
  56. }
  57. public void Include(UISwitch sw)
  58. {
  59. sw.On = !sw.On;
  60. sw.ValueChanged += (sender, args) => { sw.On = false; };
  61. }
  62. public void Include(MvxViewController vc)
  63. {
  64. vc.Title = vc.Title + "";
  65. }
  66. public void Include(UIStepper s)
  67. {
  68. s.Value = s.Value + 1;
  69. s.ValueChanged += (sender, args) => { s.Value = 0; };
  70. }
  71. public void Include(UIPageControl s)
  72. {
  73. s.Pages = s.Pages + 1;
  74. s.ValueChanged += (sender, args) => { s.Pages = 0; };
  75. }
  76. public void Include(INotifyCollectionChanged changed)
  77. {
  78. changed.CollectionChanged += (s, e) => { var test = string.Format("{0}{1}{2}{3}{4}", e.Action,e.NewItems, e.NewStartingIndex, e.OldItems, e.OldStartingIndex); } ;
  79. }
  80. public void Include(ICommand command)
  81. {
  82. command.CanExecuteChanged += (s, e) => { if (command.CanExecute(null)) command.Execute(null); };
  83. }
  84. public void Include(Cirrious.CrossCore.IoC.MvxPropertyInjector injector)
  85. {
  86. injector = new Cirrious.CrossCore.IoC.MvxPropertyInjector();
  87. }
  88. public void Include(System.ComponentModel.INotifyPropertyChanged changed)
  89. {
  90. changed.PropertyChanged += (sender, e) => { var test = e.PropertyName; };
  91. }
  92. }
  93. }