示例#1
0
        public override void OnRefreshUi(RefreshUiMode mode)
        {
			base.OnRefreshUi(mode);

			if(Engine.Storage.GetBool("cli") == false)
				if (FormMain != null)
					FormMain.RefreshUi(mode);            
        }
示例#2
0
        public override void OnRefreshUi(RefreshUiMode mode)
        {
            base.OnRefreshUi(mode);

            if (UiClient.Instance.MainWindow != null)
            {
                UiClient.Instance.MainWindow.OnRefreshUi(mode);
            }
        }
示例#3
0
		public override void OnRefreshUi (RefreshUiMode mode)
		{
			base.OnRefreshUi (mode);

			if (MainWindow != null) {
				new NSObject ().InvokeOnMainThread (() => {
					MainWindow.RefreshUi (mode);
				});
			}
		}
示例#4
0
        public override void OnRefreshUi(RefreshUiMode mode)
        {
            base.OnRefreshUi(mode);

            if (MainWindow != null)
            {
                new NSObject().InvokeOnMainThread(() => {
                    MainWindow.RefreshUi(mode);
                });
            }
        }
示例#5
0
        public override void OnRefreshUi(RefreshUiMode mode)
        {
            base.OnRefreshUi(mode);

            if (UiClient.Instance.MainWindow != null)
            {
                new NSObject().BeginInvokeOnMainThread(() =>                 // BeginInvokeOnMainThread
                {
                    UiClient.Instance.MainWindow.RefreshUi(mode);
                });
            }
        }
示例#6
0
        public virtual void OnRefreshUi(RefreshUiMode mode)
        {
            if ((mode == Core.Engine.RefreshUiMode.Stats) || (mode == Core.Engine.RefreshUiMode.Full))
            {
                if (Engine.IsConnected())
                {
                    {
                        DateTime DT1 = Engine.Instance.ConnectedSince;
                        DateTime DT2 = DateTime.UtcNow;
                        TimeSpan TS = DT2 - DT1;
                        string TSText = string.Format("{0:00}:{1:00}:{2:00} - {3}", (int)TS.TotalHours, TS.Minutes, TS.Seconds, DT1.ToLocalTime().ToShortDateString() + " " + DT1.ToLocalTime().ToShortTimeString());
                        Stats.UpdateValue("VpnConnectionStart", TSText);

                    }

                    Stats.UpdateValue("SessionTotalDownload", Core.Utils.FormatBytes(Engine.ConnectedSessionStatsRead, false, true));
                    Stats.UpdateValue("SessionTotalUpload", Core.Utils.FormatBytes(Engine.ConnectedSessionStatsWrite, false, true));

                    Stats.UpdateValue("VpnTotalDownload", Core.Utils.FormatBytes(Engine.ConnectedVpnStatsRead, false, true));
                    Stats.UpdateValue("VpnTotalUpload", Core.Utils.FormatBytes(Engine.ConnectedVpnStatsWrite, false, true));

                    Stats.UpdateValue("VpnSpeedDownload", Core.Utils.FormatBytes(Engine.ConnectedLastDownloadStep, true, true));
                    Stats.UpdateValue("VpnSpeedUpload", Core.Utils.FormatBytes(Engine.ConnectedLastUploadStep, true, true));
                }
                else
                {
                    Stats.UpdateValue("VpnConnectionStart", Messages.StatsNotConnected);

                    Stats.UpdateValue("SessionTotalDownload", Messages.StatsNotConnected);
                    Stats.UpdateValue("SessionTotalUpload", Messages.StatsNotConnected);

                    Stats.UpdateValue("VpnTotalDownload", Messages.StatsNotConnected);
                    Stats.UpdateValue("VpnTotalUpload", Messages.StatsNotConnected);

                    Stats.UpdateValue("VpnSpeedDownload", Messages.StatsNotConnected);
                    Stats.UpdateValue("VpnSpeedUpload", Messages.StatsNotConnected);
                }
            }

            if (mode == Core.Engine.RefreshUiMode.Full)
            {
                string manifestLastUpdate = Utils.FormatTime(ProvidersManager.LastRefreshDone);
                if (Core.Threads.Manifest.Instance != null)
                    if (Core.Threads.Manifest.Instance.ForceUpdate)
                        manifestLastUpdate += " (" + Messages.ManifestUpdateForce + ")";
                Stats.UpdateValue("ManifestLastUpdate", manifestLastUpdate);

                if (m_threadPinger != null)
                {
                    Stats.UpdateValue("Pinger", PingerStats().ToString());
                }

                if (Engine.IsConnected())
                {
                    Stats.UpdateValue("ServerName", Engine.CurrentServer.DisplayName);
                    Stats.UpdateValue("ServerLatency", Engine.CurrentServer.GetLatencyForList());
                    Stats.UpdateValue("ServerLocation", Engine.CurrentServer.GetLocationForList());
                    Stats.UpdateValue("ServerLoad", Engine.CurrentServer.GetLoadForList());
                    Stats.UpdateValue("ServerUsers", Engine.CurrentServer.GetUsersForList());

                    Stats.UpdateValue("AccountLogin", Engine.Storage.Get("login"));
                    Stats.UpdateValue("AccountKey", Engine.Storage.Get("key"));

                    Stats.UpdateValue("VpnIpEntry", Engine.ConnectedEntryIP);
                    Stats.UpdateValue("VpnIpExit", Engine.CurrentServer.IpExit);
                    Stats.UpdateValue("VpnProtocol", Engine.ConnectedProtocol);
                    Stats.UpdateValue("VpnPort", Engine.ConnectedPort.ToString());
                    if (Engine.ConnectedRealIp != "")
                        Stats.UpdateValue("VpnRealIp", Engine.ConnectedRealIp);
                    else
                        Stats.UpdateValue("VpnRealIp", Messages.CheckingRequired);
                    Stats.UpdateValue("VpnIp", Engine.ConnectedVpnIp);
                    Stats.UpdateValue("VpnDns", Engine.ConnectedVpnDns);
                    Stats.UpdateValue("VpnInterface", Engine.ConnectedVpnInterfaceName);
                    Stats.UpdateValue("VpnGateway", Engine.ConnectedVpnGateway);
                    Stats.UpdateValue("VpnGeneratedOVPN", "");

                    if (Engine.ConnectedServerTime != 0)
                        Stats.UpdateValue("SystemTimeServerDifference", (Engine.ConnectedServerTime - Engine.ConnectedClientTime).ToString() + " seconds");
                    else
                        Stats.UpdateValue("SystemTimeServerDifference", Messages.CheckingRequired);
                }
                else
                {
                    Stats.UpdateValue("ServerName", Messages.StatsNotConnected);
                    Stats.UpdateValue("ServerLatency", Messages.StatsNotConnected);
                    Stats.UpdateValue("ServerLocation", Messages.StatsNotConnected);
                    Stats.UpdateValue("ServerLoad", Messages.StatsNotConnected);
                    Stats.UpdateValue("ServerUsers", Messages.StatsNotConnected);

                    Stats.UpdateValue("AccountLogin", Messages.StatsNotConnected);
                    Stats.UpdateValue("AccountKey", Messages.StatsNotConnected);

                    Stats.UpdateValue("VpnIpEntry", Messages.StatsNotConnected);
                    Stats.UpdateValue("VpnIpExit", Messages.StatsNotConnected);
                    Stats.UpdateValue("VpnProtocol", Messages.StatsNotConnected);
                    Stats.UpdateValue("VpnPort", Messages.StatsNotConnected);
                    Stats.UpdateValue("VpnRealIp", Messages.StatsNotConnected);
                    Stats.UpdateValue("VpnIp", Messages.StatsNotConnected);
                    Stats.UpdateValue("VpnDns", Messages.StatsNotConnected);
                    Stats.UpdateValue("VpnInterface", Messages.StatsNotConnected);
                    Stats.UpdateValue("VpnGateway", Messages.StatsNotConnected);
                    Stats.UpdateValue("VpnGeneratedOVPN", Messages.StatsNotConnected);
                    Stats.UpdateValue("SystemTimeServerDifference", Messages.StatsNotConnected);
                }
            }

            if(mode == RefreshUiMode.Stats)
            {
                UiSendQuickInfo();
            }

            if(mode == RefreshUiMode.Full)
            {
                UiSendStatusInfo();
            }

            if(mode == RefreshUiMode.MainMessage)
            {
                UiSendStatusInfo();
            }
        }
示例#7
0
        public virtual void OnRefreshUi(RefreshUiMode mode)
        {
			if ((mode == Core.Engine.RefreshUiMode.Quick) || (mode == Core.Engine.RefreshUiMode.Full))
			{
				string manifestLastUpdate = Utils.FormatTime(Utils.XmlGetAttributeInt64(Engine.Storage.Manifest, "time", 0));
				if(Core.Threads.Manifest.Instance != null)
					if(Core.Threads.Manifest.Instance.ForceUpdate)
						manifestLastUpdate += " (" + Messages.ManifestUpdateForce + ")";
				Stats.UpdateValue("ManifestLastUpdate", manifestLastUpdate);
			}

			if ((mode == Core.Engine.RefreshUiMode.Stats) || (mode == Core.Engine.RefreshUiMode.Full))
			{
				if (Engine.IsConnected())
				{
					{
						DateTime DT1 = Engine.Instance.ConnectedSince;
						DateTime DT2 = DateTime.UtcNow;
						TimeSpan TS = DT2 - DT1;
						string TSText = string.Format("{0:00}:{1:00}:{2:00} - {3}", (int)TS.TotalHours, TS.Minutes, TS.Seconds, DT1.ToLocalTime().ToLongDateString() + " " + DT1.ToLocalTime().ToLongTimeString());
						Stats.UpdateValue("VpnConnectionStart", TSText);

					}
					Stats.UpdateValue("VpnTotalDownload", Core.Utils.FormatBytes(Engine.ConnectedLastRead, false, true));
					Stats.UpdateValue("VpnTotalUpload", Core.Utils.FormatBytes(Engine.ConnectedLastWrite, false, true));

					Stats.UpdateValue("VpnSpeedDownload", Core.Utils.FormatBytes(Engine.ConnectedLastDownloadStep, true, true));
					Stats.UpdateValue("VpnSpeedUpload", Core.Utils.FormatBytes(Engine.ConnectedLastUploadStep, true, true));
				}
				else
				{
					Stats.UpdateValue("VpnConnectionStart", Messages.StatsNotConnected);
					Stats.UpdateValue("VpnTotalDownload", Messages.StatsNotConnected);
					Stats.UpdateValue("VpnTotalUpload", Messages.StatsNotConnected);

					Stats.UpdateValue("VpnSpeedDownload", Messages.StatsNotConnected);
					Stats.UpdateValue("VpnSpeedUpload", Messages.StatsNotConnected);
				}
			}

			if (mode == Core.Engine.RefreshUiMode.Full)
			{
				Stats.UpdateValue("SystemReport", Messages.DoubleClickToView);
				if (m_threadPinger != null)
				{
					Stats.UpdateValue("Pinger", PingerStats().ToString());					
				}

				if (Engine.IsConnected())
				{
					Stats.UpdateValue("ServerName", Engine.CurrentServer.Name);
					Stats.UpdateValue("ServerLatency", Engine.CurrentServer.Ping.ToString() + " ms");
					Stats.UpdateValue("ServerLocation", Engine.CurrentServer.CountryName + " - " + Engine.CurrentServer.Location);
					Stats.UpdateValue("ServerLoad", Engine.CurrentServer.Load().ToString());
					Stats.UpdateValue("ServerUsers", Engine.CurrentServer.Users.ToString());

					Stats.UpdateValue("VpnIpEntry", Engine.ConnectedEntryIP);
					Stats.UpdateValue("VpnIpExit", Engine.CurrentServer.IpExit);
					Stats.UpdateValue("VpnProtocol", Engine.ConnectedProtocol);
					Stats.UpdateValue("VpnPort", Engine.ConnectedPort.ToString());
					if (Engine.ConnectedRealIp != "")
						Stats.UpdateValue("VpnRealIp", Engine.ConnectedRealIp);
					else
						Stats.UpdateValue("VpnRealIp", Messages.CheckingRequired);
					Stats.UpdateValue("VpnIp", Engine.ConnectedVpnIp);
					Stats.UpdateValue("VpnDns", Engine.ConnectedVpnDns);
					Stats.UpdateValue("VpnInterface", Engine.ConnectedVpnInterfaceName);
					Stats.UpdateValue("VpnGateway", Engine.ConnectedVpnGateway);
					Stats.UpdateValue("VpnGeneratedOVPN", Messages.DoubleClickToView);

					if (Engine.ConnectedServerTime != 0)
						Stats.UpdateValue("SystemTimeServerDifference", (Engine.ConnectedServerTime - Engine.ConnectedClientTime).ToString() + " seconds");
					else
						Stats.UpdateValue("SystemTimeServerDifference", Messages.CheckingRequired);
				}
				else
				{
					Stats.UpdateValue("ServerName", Messages.StatsNotConnected);
					Stats.UpdateValue("ServerLatency", Messages.StatsNotConnected);
					Stats.UpdateValue("ServerLocation", Messages.StatsNotConnected);
					Stats.UpdateValue("ServerLoad", Messages.StatsNotConnected);
					Stats.UpdateValue("ServerUsers", Messages.StatsNotConnected);

					Stats.UpdateValue("VpnIpEntry", Messages.StatsNotConnected);
					Stats.UpdateValue("VpnIpExit", Messages.StatsNotConnected);
					Stats.UpdateValue("VpnProtocol", Messages.StatsNotConnected);
					Stats.UpdateValue("VpnPort", Messages.StatsNotConnected);
					Stats.UpdateValue("VpnRealIp", Messages.StatsNotConnected);
					Stats.UpdateValue("VpnIp", Messages.StatsNotConnected);
					Stats.UpdateValue("VpnDns", Messages.StatsNotConnected);
					Stats.UpdateValue("VpnInterface", Messages.StatsNotConnected);
					Stats.UpdateValue("VpnGateway", Messages.StatsNotConnected);
					Stats.UpdateValue("VpnGeneratedOVPN", Messages.StatsNotConnected);
					Stats.UpdateValue("SystemTimeServerDifference", Messages.StatsNotConnected);
				}
			}
        }
示例#8
0
        public override void OnRefreshUi(RefreshUiMode mode)
        {
            base.OnRefreshUi(mode);

            if(Engine.Storage.GetBool("cli") == false)
                if (FormMain != null)
                    FormMain.RefreshUi(mode);
        }