Example #1
0
        private void SaveAll()
        {
            foreach (var entry in _listProvider.Data.ToArray())
            {
                _listProvider.RemoveEntry(entry);
            }

            foreach (var item in Items)
            {
                _listProvider.AddEntry(item.SavedServerEntry);
            }
        }
Example #2
0
        private void AddEditServerCallbackAction(MultiplayerAddEditServerState.AddOrEditCallback obj)
        {
            if (obj == null)
            {
                return;                      //Cancelled.
            }
            if (!obj.IsNew)
            {
                for (var index = 0; index < Items.Length; index++)
                {
                    var entry = Items[index];

                    if (entry.SavedServerEntry.InternalIdentifier.Equals(obj.Entry.InternalIdentifier))
                    {
                        var newEntry = new GuiServerListEntryElement(entry.ServerTypeImplementation, obj.Entry);

                        Items[index] = newEntry;

                        newEntry.PingAsync(false);

                        _listProvider.RemoveEntry(entry.SavedServerEntry);
                        _listProvider.AddEntry(obj.Entry);
                        _listProvider.MoveEntry(entry.SavedServerEntry.ListIndex, obj.Entry);

                        break;
                    }
                }
            }
            else
            {
                _listProvider.AddEntry(obj.Entry);
            }

            SaveAll();

            Reload();
        }
        private void SaveAll()
        {
            foreach (var entry in _listProvider.Data.ToArray())
            {
                _listProvider.RemoveEntry(entry);
            }

            foreach (var item in Items)
            {
                _listProvider.AddEntry(item.SavedServerEntry);
            }

            /*Alex.UIThreadQueue.Enqueue(() =>
             * {
             *
             * });*/
        }
        private void SaveServer(string name, string hostname, ushort port)
        {
            var entry = new SavedServerEntry()
            {
                Name       = name,
                Host       = hostname,
                Port       = port,
                ServerType = (_serverTypeGroup.CheckedControl == _bedrockEditionButton ? ServerType.Bedrock : ServerType.Java),
                CachedIcon = _entry?.CachedIcon ?? null,
                ListIndex  = _entry?.ListIndex ?? -1
            };

            if (_entry != null)
            {
                _savedServersStorage.RemoveEntry(_entry);
            }

            _savedServersStorage.AddEntry(entry);

            InvokeCallback(entry);
        }