Exemplo n.º 1
0
        public MSProApp()
        {
            Version = "1.1";

            MainTabs = new Tabs();

            ProxyTips = new TabbedPage();
            ProxyTipsWifiPage wfPage = new ProxyTipsWifiPage();

            wfPage.Title = AppStrings.Wifi;

            ProxyTipsAPNPage apnPage = new ProxyTipsAPNPage();

            apnPage.Title = AppStrings.APN;
            ProxyTips.Children.Add(wfPage);
            ProxyTips.Children.Add(apnPage);

            MainPage = new NavigationPage(MainTabs);

            MessagingCenter.Subscribe <MSProApp, string>(this, "TorOutput", (sender, arg) =>
            {
                if (arg.CompareTo(System.String.Empty) != 0)
                {
                    MSProApp.Locator.TorLogVM.TorLog.Add(arg);
                    MessagingCenter.Send <StatusViewModel, string>(MSProApp.Locator.StatusVM, "NewLoadMessage", arg);
                }
                if (arg.IndexOf("[err]") != -1)
                {
                    //error!
                }
                if (arg.IndexOf("100%") != -1)
                {
                    Task tc = Task.Run(() =>
                    {
                        Tor.Connect();
                    });
                    tc.Wait();
                    MessagingCenter.Send <StatusPage>(MSProApp.Locator.StatusVM.CurrentPage, "BootstrappFinished");
                }
            });
            MessagingCenter.Subscribe <MSProApp>(this, "Start", (sender) =>
            {
                OnStart();
            });
        }
Exemplo n.º 2
0
        public MSProApp()
        {
            Version = "1.1";

            StatusPage       = (StatusPage)FreshPageModelResolver.ResolvePageModel <StatusViewModel>();
            StatusPage.Title = Translation.GetString("Status");
            StatusVM         = (StatusViewModel)StatusPage.BindingContext;

            CountriesPage       = (CountriesPage)FreshPageModelResolver.ResolvePageModel <CountriesViewModel>();
            CountriesPage.Title = Translation.GetString("Countries");
            CountriesVM         = (CountriesViewModel)CountriesPage.BindingContext;

            CitiesPage       = (CitiesPage)FreshPageModelResolver.ResolvePageModel <CitiesViewModel>();
            CitiesPage.Title = Translation.GetString("Cities");
            CitiesVM         = (CitiesViewModel)CitiesPage.BindingContext;

            TorLogPage       = (TorLogPage)FreshPageModelResolver.ResolvePageModel <TorLogViewModel>();
            TorLogPage.Title = Translation.GetString("Tor log");
            TorLogVM         = (TorLogViewModel)TorLogPage.BindingContext;

            SettingsPage       = (SettingsPage)FreshPageModelResolver.ResolvePageModel <SettingsViewModel>();
            SettingsPage.Title = Translation.GetString("Settings");
            SettingsVM         = (SettingsViewModel)SettingsPage.BindingContext;

            AboutPage       = (AboutPage)FreshPageModelResolver.ResolvePageModel <AboutViewModel>();
            AboutPage.Title = Translation.GetString("About");
            AboutVM         = (AboutViewModel)AboutPage.BindingContext;

            ProxyTips = new TabbedPage();
            ProxyTipsWifiPage wfPage = (ProxyTipsWifiPage)FreshPageModelResolver.ResolvePageModel <ProxyTipsWifiViewModel>();

            wfPage.Title = Translation.GetString("Wi-Fi");
            PTWFVM       = (ProxyTipsWifiViewModel)wfPage.BindingContext;

            ProxyTipsAPNPage apnPage = (ProxyTipsAPNPage)FreshPageModelResolver.ResolvePageModel <ProxyTipsAPNViewModel>();

            apnPage.Title = Translation.GetString("APN");
            PTAPNVM       = (ProxyTipsAPNViewModel)apnPage.BindingContext;
            ProxyTips.Children.Add(wfPage);
            ProxyTips.Children.Add(apnPage);

            MainPage = new NavigationPage(StatusPage);

            MessagingCenter.Subscribe <MSProApp, string>(this, "TorOutput", (sender, arg) =>
            {
                if (arg.CompareTo(System.String.Empty) != 0)
                {
                    TorLogVM.TorLog.Add(arg);
                    MessagingCenter.Send <StatusViewModel, string>(StatusVM, "NewLoadMessage", arg);
                }
                if (arg.IndexOf("[err]") != -1)
                {
                    //error!
                }
                if (arg.IndexOf("100%") != -1)
                {
                    Task tc = Task.Run(() =>
                    {
                        Tor.Connect();
                    });
                    tc.Wait();
                    MessagingCenter.Send <StatusPage>((StatusPage)StatusVM.CurrentPage, "BootstrappFinished");
                }
            });
            MessagingCenter.Subscribe <MSProApp>(this, "Start", (sender) =>
            {
                OnStart();
            });
        }