Ejemplo n.º 1
0
 private void registerBottomObserver()
 {
     if (ShowTransfers)
     {
         llObserver = new LongListBottomObserver(ContentListView);
         llObserver.ScrollToBottom += ContentListView_ScrollToBottom;
     }
 }
Ejemplo n.º 2
0
 private void unregisterBottomObserver()
 {
     if (llObserver != null)
     {
         llObserver.ScrollToBottom -= ContentListView_ScrollToBottom;
         llObserver.Dispose();
         llObserver = null;
     }
 }
Ejemplo n.º 3
0
 protected override void OnNavigatedFrom(NavigationEventArgs e)
 {
     if (contentSetterTask != null)
     {
         contentSetterTask.Cancel();
     }
     if (flashTask != null)
     {
         flashTask.Cancel();
     }
     if (llObserver != null)
     {
         llObserver.Dispose();
         llObserver = null;
     }
 }
Ejemplo n.º 4
0
        protected override void OnNavigatedTo(NavigationEventArgs e)
        {
            base.OnNavigatedTo(e);
            base.OnNavigatedTo(e);
            if (e.NavigationMode == NavigationMode.New)
            {
                string param = "";

                if (!NavigationContext.QueryString.TryGetValue("id", out param))
                {
                    throw new Exception("RoutePage opened without parameter");
                }
                StopGroup stop       = App.Model.GetStopGroupByID(int.Parse(param));
                DateTime? dateTime   = null;
                bool      near       = false;
                Stop      sourceStop = null;
                bool      noLocation = true;

                if (NavigationContext.QueryString.TryGetValue("dateTime", out param))
                {
                    dateTime        = Convert.ToDateTime(param);
                    this.postQuery += "&dateTime=" + param;
                }

                if (NavigationContext.QueryString.TryGetValue("location", out param))
                {
                    if (param == "near")
                    {
                        near = true;
                    }
                    else
                    {
                        sourceStop = App.Model.GetStopByID(int.Parse(param));
                    }

                    noLocation      = false;
                    this.postQuery += "&location=" + param;
                }

                this.ViewModel = new StopViewModel(addFooter: false);
                //ViewModel.Initialize(parameter, stateManager);
                ViewModel.Initialize(new StopParameter
                {
                    StopGroup = stop,
                    DateTime  = dateTime,
                    Location  = noLocation ? null : new ParameterLocation
                    {
                        IsNear = near,
                        Stop   = sourceStop
                    }
                });

                if (dateTime == null)
                {
                    contentSetterTask = new PeriodicTask(ViewModel.TasksToSchedule.Single());
                    contentSetterTask.RunEveryMinute();

                    flashTask = new PeriodicTask(500, flashTimes);
                    flashTask.Run();
                }
            }
            else
            {
                if (contentSetterTask != null)
                {
                    contentSetterTask.Resume();
                }
                if (flashTask != null)
                {
                    flashTask.Resume();
                }
            }
            if (ShowTransfers)
            {
                llObserver = new LongListBottomObserver(ContentListView);
                llObserver.ScrollToBottom += ContentListView_ScrollToBottom;
            }
        }