コード例 #1
0
ファイル: P2PVPNForm.cs プロジェクト: nagyist/P2PVpn
        private void tabs_Selected(object sender, TabControlEventArgs e)
        {
            if (e.TabPage == tabVPNGate)
            {
                Settings settings = Settings.Get();
                if (!settings.VPNServer.VPNGate)
                {
                    tabVPNGate.EnableTab(false);
                    return;
                }
                else
                {
                    tabVPNGate.EnableTab(true);
                }

                this.EnableForm(false);

                var servers        = VPNGate.GetFastestServers();
                var selectedServer = servers.FirstOrDefault(x => x.HostName == settings.VPNGateServerHost);
                if (selectedServer == null)
                {
                    selectedServer = servers[0];
                }

                cbVPNGateServer.SelectedIndexChanged -= cbVPNGateServer_SelectedIndexChanged;
                cbVPNGateServer.DisplayMember         = "CountryAndHost";
                cbVPNGateServer.DataSource            = servers;
                cbVPNGateServer.SelectedItem          = selectedServer;
                var server = (VPNGateServer)cbVPNGateServer.SelectedItem;

                lblVPNGateServerInfo.Text = server.ToString();

                cbVPNGateServer.SelectedIndexChanged += cbVPNGateServer_SelectedIndexChanged;

                cbVPNGateConnectRetry.CheckedChanged -= cbVPNGateConnectRetry_CheckedChanged;
                cbVPNGateConnectRetry.Checked         = settings.RetryVPNGateConnect;
                cbVPNGateConnectRetry.CheckedChanged += cbVPNGateConnectRetry_CheckedChanged;

                this.EnableForm();
            }
            if (e.TabPage == tabVPNBook)
            {
                Settings settings = Settings.Get();
                if (!settings.VPNServer.VPNBook)
                {
                    tabVPNBook.EnableTab(false);
                    return;
                }
                else
                {
                    tabVPNBook.EnableTab(true);
                }
            }
        }
コード例 #2
0
ファイル: P2PVPNForm.cs プロジェクト: nagyist/P2PVpn
        private void cbVPNGateServer_SelectedIndexChanged(object sender, EventArgs e)
        {
            var server = (VPNGateServer)cbVPNGateServer.SelectedItem;

            lblVPNGateServerInfo.Text = server.ToString();
            Settings settings = Settings.Get();

            settings.VPNGateServerHost = server.HostName;
            Settings.Save(settings);
            VPNGate.SelectServer(server);
            SetRadioButtons();
        }
コード例 #3
0
        public void GetServersTest()
        {
            VPNGate.ServersCSV = Path.GetFullPath(Directory.GetCurrentDirectory() + @"\Assets\VPNGateServers.csv");

            var fastestServers = VPNGate.GetFastestServers();

            Assert.IsTrue(fastestServers.Count > 0);

            VPNGate.SelectServer(fastestServers[0]);

            //Assert.IsTrue(servers.Count > 0);
        }