Exemple #1
0
        public virtual void LoadPlaylistByVideos(string[] videoIds, int index, float startSeconds, YTPlaybackQuality suggestedQuality)
        {
            if (videoIds == null)
            {
                throw new ArgumentNullException("videoIds");
            }
            var nsa_videoIds = NSArray.FromStrings(videoIds);

            if (IsDirectBinding)
            {
                global::ApiDefinition.Messaging.void_objc_msgSend_IntPtr_int_float_int(this.Handle, Selector.GetHandle("loadPlaylistByVideos:index:startSeconds:suggestedQuality:"), nsa_videoIds.Handle, index, startSeconds, (int)suggestedQuality);
            }
            else
            {
                global::ApiDefinition.Messaging.void_objc_msgSendSuper_IntPtr_int_float_int(this.SuperHandle, Selector.GetHandle("loadPlaylistByVideos:index:startSeconds:suggestedQuality:"), nsa_videoIds.Handle, index, startSeconds, (int)suggestedQuality);
            }
            nsa_videoIds.Dispose();
        }
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();
            groups = new NSMutableArray();
            groups.Add(NSArray.FromStrings(new string[] { "John", "Abby" }));
            groups.Add(NSArray.FromStrings(new string[] { "Smith", "Peter", "Paula" }));

            TKListView listView = new TKListView(new CGRect(20, 20, this.View.Bounds.Size.Width - 40, this.View.Bounds.Size.Height - 40));

            listView.RegisterClassForCell(new Class(typeof(TKListViewCell)), "cell");

            listView.RegisterClassForSupplementaryView(new Class(typeof(TKListViewHeaderCell)), TKListViewElementKindSectionKey.Header, new NSString("header"));
            listView.DataSource = new ListViewDataSource(this);
            TKListViewLinearLayout layout = (TKListViewLinearLayout)listView.Layout;

            layout.HeaderReferenceSize = new CGSize(200, 22);

            this.View.AddSubview(listView);
        }
Exemple #3
0
        private NSDictionary RegistrationDictionaryForGrowl()
        {
            //FIXME : No automatic conversion from string to NSString ???
            var keys = new NSObject[] {
                new NSString("TicketVersion"),
                new NSString("DefaultNotifications"),
                new NSString("AllNotifications"),
                new NSString("ApplicationId")
            };

            var objects = new NSObject[] { NSNumber.FromInt32(1),
                                           NSArray.FromStrings(_notifications),
                                           NSArray.FromStrings(_notifications),
                                           _applicationID };


            var configurationDictionnary = NSMutableDictionary.FromObjectsAndKeys(objects, keys);

            return(configurationDictionnary);
        }
        public static string[] GetArrayOfStringVariableWithName(this CleverTap This, string name, string[] defaultValue)
        {
            if (name == null)
            {
                throw new ArgumentNullException("name");
            }
            if (defaultValue == null)
            {
                throw new ArgumentNullException("defaultValue");
            }
            var nsname           = NSString.CreateNative(name);
            var nsa_defaultValue = NSArray.FromStrings(defaultValue);

            string[] ret;
            ret = NSArray.StringArrayFromHandle(global::ApiDefinition.Messaging.IntPtr_objc_msgSend_IntPtr_IntPtr(This.Handle, Selector.GetHandle("getArrayOfStringVariableWithName:defaultValue:"), nsname, nsa_defaultValue.Handle));
            NSString.ReleaseNative(nsname);
            nsa_defaultValue.Dispose();

            return(ret);
        }
        public void SetLanguage(string lang, bool manual = false)
        {
            var settingsService = Locator.Current.GetService <ISettingsService>();

            settingsService.AddOrUpdateValue(STORE_LANG, lang);
            settingsService.AddOrUpdateValue(MANUAL_LANG, manual);

            NSUserDefaults.StandardUserDefaults.SetValueForKey(NSArray.FromStrings(lang), new NSString("AppleLanguages"));
            NSUserDefaults.StandardUserDefaults.Synchronize();
            if (lang.Equals("en"))
            {
                var path = NSBundle.MainBundle.PathForResource("Base", "lproj");
                AppDelegate.LanguageBundle = NSBundle.FromPath(path);
            }
            else
            {
                var path = NSBundle.MainBundle.PathForResource(lang, "lproj");
                AppDelegate.LanguageBundle = NSBundle.FromPath(path);
            }
        }
        void AddRecent(string link_id)
        {
            List <string> recent_documents = new List <string>();
            var           list             = NSUserDefaults.StandardUserDefaults.StringArrayForKey(RECENT_DOCUMENTS_KEY);

            if (list != null)
            {
                recent_documents.AddRange(list);
            }

            if (!recent_documents.Contains(link_id))
            {
                recent_documents.Add(link_id);

                NSUserDefaults.StandardUserDefaults.SetValueForKey(NSArray.FromStrings(recent_documents.ToArray()), new NSString(RECENT_DOCUMENTS_KEY));
            }

            PopulateLinkComboBox();
            NSUserDefaults.StandardUserDefaults.Synchronize();
        }
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();

            this.registrationInfo   = new RegistrationInfo();
            this.validationDelegate = new ValidationDataFormDelegate(this);
            this.dataSource         = new TKDataFormEntityDataSourceHelper(this.registrationInfo);

            TKEntityProperty emailProperty = this.dataSource["Email"];

            emailProperty.HintText    = "E-mail (Required)";
            emailProperty.EditorClass = new Class(typeof(TKDataFormEmailEditor));
            emailProperty.Validators  = new NSObject[] { new EmailValidator() };

            TKEntityProperty password = this.dataSource.PropertyWithName("Password");

            password.HintText    = "Password (Minimum 6 characters)";
            password.EditorClass = new Class(typeof(TKDataFormPasswordEditor));
            password.Validators  = new NSObject[] { new PasswordValidator() };

            TKEntityProperty repeatPassword = this.dataSource.PropertyWithName("RepeatPassword");

            repeatPassword.HintText     = "Confirm password";
            repeatPassword.EditorClass  = new Class(typeof(TKDataFormPasswordEditor));
            repeatPassword.ErrorMessage = "The password does not match!";

            this.dataSource["Name"].HintText           = "Name (Optional)";
            this.dataSource["Gender"].ValuesProvider   = NSArray.FromStrings(new string[] { "Male", "Female" });
            this.dataSource ["Country"].ValuesProvider = NSArray.FromStrings(new string[] { "Bulgaria", "France", "Germany", "Italy", "United Kingdom" });
            this.dataSource["Country"].EditorClass     = new ObjCRuntime.Class(typeof(TKDataFormPickerViewEditor));

            dataSource.AddGroup("Account", new string[] { "Email", "Password", "RepeatPassword", "RememberMe" });
            dataSource.AddGroup("Details", new string[] { "Name", "DateOfBirth", "Gender", "Country" });

            this.DataForm.BackgroundColor = new UIColor(0.937f, 0.937f, 0.960f, 1.0f);
            this.DataForm.Delegate        = this.validationDelegate;
            this.DataForm.WeakDataSource  = dataSource.NativeObject;
            this.DataForm.ValidationMode  = TKDataFormValidationMode.Immediate;
        }
        public static Dictionary <string, object> ToDictionary(IOSNativeBranch.BranchUniversalObject universalObject)
        {
            if (universalObject == null)
            {
                return(new Dictionary <string, object> ());
            }

            NSString[] keys = new NSString[] {
                (NSString)"$canonical_identifier",
                (NSString)"$canonical_url",
                (NSString)"$og_title",
                (NSString)"$og_description",
                (NSString)"$og_image_url",
                (NSString)"$publicly_indexable",
                (NSString)"$locally_indexable",
                (NSString)"$keywords",
                (NSString)"$exp_date",
                (NSString)"metadata"
            };

            NSObject[] values = new NSObject[] {
                NSObject.FromObject(universalObject.CanonicalIdentifier != null ? universalObject.CanonicalIdentifier : "" as object),
                NSObject.FromObject(universalObject.CanonicalUrl != null ? universalObject.CanonicalUrl : "" as object),
                NSObject.FromObject(universalObject.Title != null ? universalObject.Title : "" as object),
                NSObject.FromObject(universalObject.ContentDescription != null ? universalObject.ContentDescription : "" as object),
                NSObject.FromObject(universalObject.ImageUrl != null ? universalObject.ImageUrl : "" as object),
                NSObject.FromObject((universalObject.PubliclyIndex ? "0" : "1") as object),
                NSObject.FromObject((universalObject.LocallyIndex ? "0" : "1") as object),
                NSObject.FromObject(universalObject.Keywords != null ? NSArray.FromStrings(universalObject.Keywords) : "" as object),
                NSObject.FromObject(universalObject.ExpirationDate != null ? (universalObject.ExpirationDate.SecondsSinceReferenceDate * 1000).ToString() : "" as object),
                NSObject.FromObject(universalObject.ContentMetadata != null ? universalObject.ContentMetadata.Dictionary() : "" as object)
            };

            NSDictionary dict = NSDictionary.FromObjectsAndKeys(values, keys);

            return(ToDictionary(dict));
        }
        public unsafe static void BuildSetMultiValues(string[] values, string key, CTLocalDataStore dataStore, [BlockProxy(typeof(ObjCRuntime.Trampolines.NIDActionArity3V1))] global::System.Action <NSDictionary, NSArray, NSArray <CTValidationResult> > completion)
        {
            if (values == null)
            {
                throw new ArgumentNullException("values");
            }
            if (completion == null)
            {
                throw new ArgumentNullException("completion");
            }
            var           nsa_values = NSArray.FromStrings(values);
            var           nskey      = NSString.CreateNative(key);
            BlockLiteral *block_ptr_completion;
            BlockLiteral  block_completion;

            block_completion     = new BlockLiteral();
            block_ptr_completion = &block_completion;
            block_completion.SetupBlockUnsafe(Trampolines.SDActionArity3V1.Handler, completion);

            global::ApiDefinition.Messaging.void_objc_msgSend_IntPtr_IntPtr_IntPtr_IntPtr(class_ptr, Selector.GetHandle("buildSetMultiValues:forKey:localDataStore:completionHandler:"), nsa_values.Handle, nskey, dataStore == null ? IntPtr.Zero : dataStore.Handle, (IntPtr)block_ptr_completion);
            nsa_values.Dispose();
            NSString.ReleaseNative(nskey);
            block_ptr_completion->CleanupBlock();
        }
Exemple #10
0
        public override void ViewDidLoad()
        {
            AddOption("Top Alignment", PrepareTopAlignment);
            AddOption("Left Alignment", PrepareLeftAlignment);
            AddOption("Top Inline Alignment", PrepareTopInlineAlignment);
            AddOption("Table View Layout", PrepareTableLayout);

            base.ViewDidLoad();

            this.info             = new EmployeeInfo();
            this.dataSource       = new TKDataFormEntityDataSourceHelper(this.info);
            this.dataFormDelegate = new DataFormAlignmentDelegate(this);

            this.dataForm = new TKDataForm(this.View.Bounds);
            this.dataForm.AutoresizingMask = UIViewAutoresizing.FlexibleWidth | UIViewAutoresizing.FlexibleHeight;
            this.dataForm.BackgroundColor  = new UIColor(0.937f, 0.937f, 0.960f, 1.0f);
            this.dataForm.Delegate         = this.dataFormDelegate;
            this.View.AddSubview(this.dataForm);

            this.dataSource.AddGroup("Personal Info", new string[] {
                "GivenNames",
                "Surname",
                "Gender",
                "IdNumber",
                "DateOfBirth"
            });

            this.dataSource.AddGroup("Contact Info", new string[] { "EmployeeId", "PhoneNumber" });

            this.dataSource ["Gender"].EditorClass    = new Class("TKDataFormSegmentedEditor");
            this.dataSource ["Gender"].ValuesProvider = NSArray.FromStrings(new string[] { "Male", "Female" });

            this.dataSource ["IdNumber"].EditorClass   = new Class("TKDataFormNumberEditor");
            this.dataSource ["EmployeeId"].EditorClass = new Class("TKDataFormNumberEditor");
            this.dataForm.WeakDataSource = this.dataSource.NativeObject;
        }
Exemple #11
0
        public async Task RegisterAsync(string[] tags)
        {
            System.Diagnostics.Debug.WriteLine($"AzurePushNotification - Register - Start");
            if (Hub == null)
            {
                return;
            }

            if (tags != null && tags.Length > 0)
            {
                _tags = NSArray.FromStrings(tags).MutableCopy() as NSMutableArray;
            }
            else
            {
                _tags = null;
            }

            if (DeviceToken == null || DeviceToken.Length == 0)
            {
                return;
            }

            await Task.Run(() =>
            {
                NSError errorFirst;
                if ((InternalToken != null && InternalToken.Length > 0) && IsRegistered)
                {
                    Hub.UnregisterAll(InternalToken, out errorFirst);

                    if (errorFirst != null)
                    {
                        _onNotificationError?.Invoke(CrossAzurePushNotification.Current, new AzurePushNotificationErrorEventArgs(AzurePushNotificationErrorType.NotificationHubUnregistrationFailed, errorFirst.Description));
                        System.Diagnostics.Debug.WriteLine($"AzurePushNotification - Unregister- Error - {errorFirst.Description}");

                        return;
                    }
                }

                NSSet tagSet = null;
                if (tags != null && tags.Length > 0)
                {
                    tagSet = new NSSet(tags);
                }

                NSError error;

                Hub.RegisterNative(DeviceToken, tagSet, out error);

                if (error != null)
                {
                    System.Diagnostics.Debug.WriteLine($"AzurePushNotification - Register- Error - {error.Description}");
                    _onNotificationError?.Invoke(CrossAzurePushNotification.Current, new AzurePushNotificationErrorEventArgs(AzurePushNotificationErrorType.NotificationHubRegistrationFailed, error.Description));
                }
                else
                {
                    System.Diagnostics.Debug.WriteLine($"AzurePushNotification - Registered - ${_tags}");
                    if (!string.IsNullOrEmpty(PushRegisteredKey))
                    {
                        NSUserDefaults.StandardUserDefaults.SetBool(true, PushRegisteredKey);
                    }
                    NSUserDefaults.StandardUserDefaults.SetValueForKey(_tags ?? new NSArray().MutableCopy(), TagsKey);
                    NSUserDefaults.StandardUserDefaults.Synchronize();
                }
            });
        }
Exemple #12
0
        public void ArrayTest()
        {
            var obj = new ArrayTrampolines();

            string[] arr = new string [] { "abc" };
            int      c;

            c = Messaging.int_objc_msgSend_IntPtr(obj.Handle, new Selector("Test_StringArray:").Handle, NSArray.FromStrings(arr).Handle);

            Assert.That(c == 1, "#a1");
            Assert.That(arr [0] == "abc");              // array elements aren't copied back out (maybe they should be?)

            arr = NSArray.StringArrayFromHandle(Messaging.IntPtr_objc_msgSend(obj.Handle, new Selector("Test_StringArrayReturn").Handle));

            Assert.That(arr.Length == 1, "#b1");
            Assert.That(arr [0] == "def", "#b2");

            arr = NSArray.StringArrayFromHandle(Messaging.IntPtr_objc_msgSend(obj.Handle, new Selector("Test_StringArrayNullReturn").Handle));
            Assert.IsNull(arr, "#c1");

            c = Messaging.int_objc_msgSend_IntPtr(obj.Handle, new Selector("Test_StringArray:").Handle, IntPtr.Zero);
            Assert.AreEqual(-1, c, "#d1");
        }
Exemple #13
0
 public NSMutableOrderedSet(params string [] strings) : this(NSArray.FromStrings(strings))
 {
 }
Exemple #14
0
 // provider must implement NSPasteboardItemDataProvider
 public static void SetDataProviderForTypes(this NSPasteboardItem item, NSObject provider, string[] types)
 {
     var sel   = new ObjCRuntime.Selector("setDataProvider:forTypes:");
     var array = NSArray.FromStrings(types);
     var ok    = LibObjc.bool_objc_msgSend_IntPtr_IntPtr(item.Handle, sel.Handle, provider.Handle, array.Handle);
 }
 public static GLKTextureInfo?CubeMapFromFiles(string [] files, GLKTextureOperations?textureOperations, out NSError error)
 {
     using (var array = NSArray.FromStrings(files))
         return(CubeMapFromFiles(files, textureOperations?.Dictionary, out error));
 }
Exemple #16
0
        public TabController() : base("TabController", null)
        {
            tab1                      = new UIViewController();
            tab1.Title                = "Red";
            tab1.TabBarItem           = new UITabBarItem("Red", UIImage.FromFile("Images/first.png"), 0);    // Tag == initial order
            tab1.View.BackgroundColor = UIColor.Red;

            tab2                      = new UIViewController();
            tab2.Title                = "Orange";
            tab2.TabBarItem           = new UITabBarItem("Orange", UIImage.FromFile("Images/second.png"), 1);
            tab2.View.BackgroundColor = UIColor.Orange;

            tab3                      = new UIViewController();
            tab3.Title                = "Yellow";
            tab3.TabBarItem           = new UITabBarItem("Yellow", UIImage.FromFile("Images/first.png"), 2);
            tab3.View.BackgroundColor = UIColor.Yellow;

            tab4                      = new UIViewController();
            tab3.Title                = "Yellow";
            tab4.TabBarItem           = new UITabBarItem("Green", UIImage.FromFile("Images/first.png"), 3);
            tab4.View.BackgroundColor = UIColor.Green;

            tab5                      = new UIViewController();
            tab3.Title                = "Blue";
            tab5.TabBarItem           = new UITabBarItem("Blue", UIImage.FromFile("Images/second.png"), 4);
            tab5.View.BackgroundColor = UIColor.Blue;

            tab6                      = new UIViewController();
            tab3.Title                = "Indigo";
            tab6.TabBarItem           = new UITabBarItem("Indigo", UIImage.FromFile("Images/second.png"), 5);
            tab6.View.BackgroundColor = UIColor.FromRGB(75, 0, 130);

            tab7                      = new UIViewController();
            tab3.Title                = "Violet";
            tab7.TabBarItem           = new UITabBarItem("Violet", UIImage.FromFile("Images/first.png"), 6);
            tab7.View.BackgroundColor = UIColor.FromRGB(143, 0, 255);

            tab8                      = new UIViewController();
            tab3.Title                = "White";
            tab8.TabBarItem           = new UITabBarItem("White", UIImage.FromFile("Images/second.png"), 7);
            tab8.View.BackgroundColor = UIColor.White;

            tab9                      = new UIViewController();
            tab3.Title                = "Black";
            tab9.TabBarItem           = new UITabBarItem("Black", UIImage.FromFile("Images/first.png"), 8);
            tab9.View.BackgroundColor = UIColor.Black;

            // The order in this array controls the order of tabs in the Tab Bar
            var tabs = new UIViewController[] {
                tab1, tab2, tab3, tab4, tab5, tab6, tab7, tab8, tab9
            };

            ViewControllers = tabs;

            SelectedViewController = tab1;

            var customizableControllers = new UIViewController[] {
                tab1, tab2, tab3, tab4, tab5, tab6, tab7, tab8, tab9
            };

            // Change the order IF required
            SetCustomTabBarOrder();

            // Tell the tab bar which controllers are allowed to customize.
            // If we don't set this, it assumes all controllers are customizable.
            CustomizableViewControllers = customizableControllers;

            // If tab bar order has been edited, save to UserPrefs as a comma-seperated list of Tag ids
            // NOTE: assumes Tag id == order in the initial ViewControllers array
            FinishedCustomizingViewControllers += delegate(object sender, UITabBarCustomizeChangeEventArgs e) {
                Console.WriteLine("FinishedCustomizingViewControllers - Changed=" + e.Changed);
                if (e.Changed)
                {
                    var count         = e.ViewControllers.Length;
                    var tabOrderArray = new List <string>();
                    foreach (var viewController in e.ViewControllers)
                    {
                        var tag = viewController.TabBarItem.Tag;
                        tabOrderArray.Add(tag.ToString());
                        Console.WriteLine("Tag = " + tag);
                    }
                    NSArray arr = NSArray.FromStrings(tabOrderArray.ToArray());
                    NSUserDefaults.StandardUserDefaults["tabBarOrder"] = arr;
                }
            };
        }
 static public bool SetSupportedSSIDs(string [] ssids)
 {
     using (var arr = NSArray.FromStrings(ssids)) {
         return(CNSetSupportedSSIDs(arr.Handle));
     }
 }
Exemple #18
0
 public void SwitchLocale(string locale)
 {
     NSUserDefaults.StandardUserDefaults.SetValueForKey(NSArray.FromStrings(locale.Substring(0, 2)), new NSString("AppleLanguages"));
     NSUserDefaults.StandardUserDefaults.Synchronize();
 }
Exemple #19
0
 static bool PlatformRemoveTags(string[] tags) => MSNotificationHub.RemoveTags((NSArray <NSString>)NSArray.FromStrings(tags));
Exemple #20
0
 public void Set(string key, string [] value)
 => Set(key, () => {
     using (var strings = NSArray.FromStrings(value))
         UserDefaults [MakeKey(key)] = strings;
 });
Exemple #21
0
        internal override NSMutableDictionary ToDictionary()
        {
            var ret = base.ToDictionary();

            if (Title != null)
            {
                ret.LowlevelSetObject((NSString)Title, kCGPDFContextTitle);
            }
            if (Author != null)
            {
                ret.LowlevelSetObject((NSString)Author, kCGPDFContextAuthor);
            }
            if (Subject != null)
            {
                ret.LowlevelSetObject((NSString)Subject, kCGPDFContextSubject);
            }
            if (Keywords != null && Keywords.Length > 0)
            {
                if (Keywords.Length == 1)
                {
                    ret.LowlevelSetObject((NSString)Keywords [0], kCGPDFContextKeywords);
                }
                else
                {
                    ret.LowlevelSetObject(NSArray.FromStrings(Keywords), kCGPDFContextKeywords);
                }
            }
            if (Creator != null)
            {
                ret.LowlevelSetObject((NSString)Creator, kCGPDFContextCreator);
            }
            if (OwnerPassword != null)
            {
                ret.LowlevelSetObject((NSString)OwnerPassword, kCGPDFContextOwnerPassword);
            }
            if (UserPassword != null)
            {
                ret.LowlevelSetObject((NSString)UserPassword, kCGPDFContextUserPassword);
            }
            if (EncryptionKeyLength.HasValue)
            {
                ret.LowlevelSetObject(NSNumber.FromInt32(EncryptionKeyLength.Value), kCGPDFContextEncryptionKeyLength);
            }
            if (AllowsPrinting.HasValue && AllowsPrinting.Value == false)
            {
                ret.LowlevelSetObject(CFBoolean.FalseHandle, kCGPDFContextAllowsPrinting);
            }
            if (AllowsCopying.HasValue && AllowsCopying.Value == false)
            {
                ret.LowlevelSetObject(CFBoolean.FalseHandle, kCGPDFContextAllowsCopying);
            }
            if (AccessPermissions.HasValue)
            {
                ret.LowlevelSetObject(NSNumber.FromInt32((int)AccessPermissions.Value), kCGPDFContextAccessPermissions);
            }
            // only set the keys if they exists in the current OS version
            if ((kCGPDFContextCreateLinearizedPDF != IntPtr.Zero) && CreateLinearizedPdf.HasValue)
            {
                ret.LowlevelSetObject(CFBoolean.ToHandle(CreateLinearizedPdf.Value), kCGPDFContextCreateLinearizedPDF);
            }
            // default to kCFBooleanFalse
            if ((kCGPDFContextCreatePDFA != IntPtr.Zero) && CreatePdfA2u.HasValue && CreatePdfA2u == true)
            {
                ret.LowlevelSetObject(CFBoolean.TrueHandle, kCGPDFContextCreatePDFA);
            }
            return(ret);
        }
 public void BeginLoadCubeMap(string [] files, NSDictionary?textureOperations, DispatchQueue queue, GLKTextureLoaderCallback onComplete)
 {
     using (var array = NSArray.FromStrings(files))
         BeginLoadCubeMap(array, textureOperations, queue, onComplete);
 }
 public void SetHiddenKeys(string[] hiddenKeys, bool animated)
 {
     SetHiddenKeys(hiddenKeys == null ? null : new NSSet(NSArray.FromStrings(hiddenKeys)), animated);
 }
Exemple #24
0
 public FSEventStream(string [] pathsToWatch, TimeSpan latency, FSEventStreamCreateFlags flags)
     : this(null, NSArray.FromStrings(pathsToWatch), FSEvent.SinceNowId, latency, flags)
 {
 }
Exemple #25
0
        private void SetRomListSearchDirectories(string key, object value)
        {
            var directories = NSArray.FromStrings(((SearchDirectories)value).ToArray());

            UserDefaults[key] = directories;
        }
Exemple #26
0
        public override void RowSelected(UITableView tableView, NSIndexPath indexPath)
        {
            switch (indexPath.Row)
            {
            case 0:     //hide everythings
                for (var i = 0; i < ServiceLayer.NumberPokemon; i++)
                {
                    var i2 = ConvertRowToID(i);
                    TrashRemoved.Clear();
                    if (!settings.PokemonTrash.Contains(i2) && !TrashAdded.Contains(i2))
                    {
                        TrashAdded.Add(i2);
                        settings.PokemonTrash.Add(i2);
                    }
                }

                TableView.ReloadData();
                break;

            case 1:     //reset trash
                var trashCopy = new List <int>(settings.PokemonTrash);
                settings.ResetTrash();
                for (var i = 0; i < ServiceLayer.NumberPokemon; i++)
                {
                    var i2 = ConvertRowToID(i);
                    if (settings.PokemonTrash.Contains(i2) && !trashCopy.Contains(i2))
                    {
                        TrashAdded.Add(i2);
                        TrashRemoved.Remove(i2);
                    }
                    else if (!settings.PokemonTrash.Contains(i2) && trashCopy.Contains(i2))
                    {
                        TrashRemoved.Add(i2);
                        TrashAdded.Remove(i2);
                    }
                }
                settings.ResetTrash();
                TableView.ReloadData();
                break;

            case 2:     //save current trash
                var trashStrings = settings.PokemonTrash.Select(t => t.ToString()).ToArray();
                var tosave       = NSArray.FromStrings(trashStrings);
                NSUserDefaults.StandardUserDefaults.SetValueForKey(tosave, new NSString("trashSaved"));
                break;

            case 3:     //recall saved trash
                var trash = NSUserDefaults.StandardUserDefaults.StringArrayForKey("trashSaved");
                if (trash != null)
                {
                    var trashInt = trash.Select(l => int.Parse(l));
                    for (var i = 0; i < ServiceLayer.NumberPokemon; i++)
                    {
                        if (!settings.PokemonTrash.Contains(i) && trashInt.Contains(i))
                        {
                            TrashAdded.Add(i);
                            TrashRemoved.Remove(i);
                        }
                        else if (settings.PokemonTrash.Contains(i) && !trashInt.Contains(i))
                        {
                            TrashRemoved.Add(i);
                            TrashAdded.Remove(i);
                        }
                    }
                    settings.PokemonTrash.Clear();
                    settings.PokemonTrash.AddRange(trashInt);
                    TableView.ReloadData();
                }
                break;
            }
            tableView.DeselectRow(indexPath, true);
        }
Exemple #27
0
 public void ChangeLanguage(string lang)
 {
     NSUserDefaults.StandardUserDefaults.SetValueForKey(NSArray.FromStrings(lang, NSLocale.CurrentLocale.LanguageCode), new NSString("AppleLanguages"));
     NSUserDefaults.StandardUserDefaults.Synchronize();
 }