示例#1
0
        public Application GetConfigureApplication(Application.Type aEnviromentType, int width, int height)
        {
            mWidth  = width;
            mHeight = height;


            #region Http daemon
            mHtttd = new HttpRestServer(null);
            mHtttd.Start();
            #endregion

            #region Hardware init
            HwCore.Init(aEnviromentType);
            Display.DefaultBrightness = 85;
            Display.SetDefaultBrightness();

            HwCore.DeepStandby    = false;
            HwCore.StandbyTimeout = new TimeSpan(0, 0, 0, 30);
            #endregion

            #region Windows registration
            {
                mApplication = Application.GetInstance();

                mApplication.AddWindow(HomeWindow());

                mApplication.SetFocusedWindow("home");
            }
            #endregion

            #region WiFi status
            var wifi = new PeriodicTask(3000);
            wifi.OnPeriod += () =>
            {
                if (mApplication == null)
                {
                    return;
                }

                if (!TestWiFi())
                {
                    mUnsuccessPingCount++;
                }
                else
                {
                    mUnsuccessPingCount = 0;
                }

                ((Window)(mApplication.GetFocusedWindow())).LeftText = (mUnsuccessPingCount < 10) ? "WiFi" : "";
                mApplication.GetFocusedWindow().Invalidate();
            };
            wifi.Start();
            #endregion

            #region User clock
            var clock = new PeriodicTask(1000);
            clock.OnPeriod += () =>
            {
                if (mApplication == null)
                {
                    return;
                }

                if (((Window)(mApplication.GetFocusedWindow())).RightText == DateTime.Now.ToString("HH:mm"))
                {
                    return;
                }

                ((Window)(mApplication.GetFocusedWindow())).RightText = DateTime.Now.ToString("HH:mm");
                mApplication.GetFocusedWindow().Invalidate();
            };
            clock.Start();
            #endregion

            return(mApplication);
        }
示例#2
0
        internal static void NancyTest(ILog logger)
        {
            var http = new HttpRestServer(logger);

            http.Start();
        }