public override void OnActivate()
        {
            BackgroundImage = getBackgroundTexture();
            base.OnActivate();
            Util.LayoutControl(Window, (1280 - 540) / 2, (720 - 420) / 2, Window.Image.Size, ScreenRectangle);

            foreach (var b in Sector.Beacons)
            {
                var btn = new BeaconIcon();
                btn.Image       = Root.Singleton.Material(b.Icon);
                btn.ShadowImage = Root.Singleton.Material(b.IconShadow);
                Util.LayoutControl(btn, b.X - 16, b.Y - 16, 32, 32, ScreenRectangle);
                btn.Parent = Window;
                btn.Init();
            }

            var btnClose = new ImageButton();

            btnClose.Image         = Root.Singleton.Material("img/generalUI/general_close.png");
            btnClose.HoveredImage  = Root.Singleton.Material("img/generalUI/general_close3.png");
            btnClose.DisabledImage = Root.Singleton.Material("img/generalUI/general_close4.png");
            btnClose.HoverSound    = Root.Singleton.Sound("audio/waves/ui/select_light1.wav");
            btnClose.OnClick      += (sender) =>
            {
                Finish = true;
            };
            Util.LayoutControl(btnClose, 504, 0, 64, 64, ScreenRectangle);
            btnClose.Parent = Window;
            btnClose.Init();
        }
Exemple #2
0
        private async void Button_start_Click(object sender, EventArgs e)
        {
            //var stopTasks = _modules.Keys
            //    .Select(module => module)
            //    .ToDictionary(m => m.Stop(), m => m);
            //var startTasks =_modules.Keys
            //    .Select(module => module)
            //    .ToDictionary(m => m.Start(), m => m);


            //while (stopTasks.Count > 0)
            //{
            //    Task first = await Task.WhenAny(stopTasks.Keys);
            //    stopTasks.Remove(first);
            //    await first;
            //}

            //while (startTasks.Count > 0)
            //{
            //    Task first = await Task.WhenAny(startTasks.Keys);
            //    BeaconModule module = startTasks[first];
            //    startTasks.Remove(first);
            //    await first;
            //}

            _beacons.Clear();
            foreach (BeaconModule module in _modules.Keys)
            {
                await module.Stop();

                await module.Start();
            }

            while (true)
            {
                foreach (BeaconModule module in _modules.Keys)
                {
                    List <Beacon> beacons = await module.GetData();

                    foreach (Beacon beacon in beacons)
                    {
                        if (!_beacons.ContainsKey(beacon))
                        {
                            BeaconIcon icon = new BeaconIcon(beacon);
                            _beacons.Add(beacon, new BeaconIcon(beacon));
                        }

                        //_beacons[beacon].AddScanData(_modules[module].Location, beacon.GetData());
                    }
                }

                await Task.Delay(_scanTime);
            }
        }
Exemple #3
0
        public override void OnActivate(params object[] args)
        {
            if (args.Length >= 1 && args[0] is Sector)
            {
                Sector = (Sector)args[0];
            }
            else
            {
                Sector = new Sector();
            }

            BackgroundImage = getBackgroundTexture();
            base.OnActivate();
            Util.LayoutControl(Window, (1280 - 540) / 2, (720 - 420) / 2, Window.Image.Size, ScreenRectangle);

            foreach (var b in Sector.Beacons)
            {
                var btn = new BeaconIcon();
                btn.Image = Root.Singleton.Material(b.Icon);
                btn.ShadowImage = Root.Singleton.Material(b.IconShadow);
                Util.LayoutControl(btn, b.X - 16, b.Y - 16, 32, 32, ScreenRectangle);
                btn.Parent = Window;
                btn.Init();
            }

            var btnClose = new ImageButton();
            btnClose.Image = Root.Singleton.Material("img/generalUI/general_close.png");
            btnClose.HoveredImage = Root.Singleton.Material("img/generalUI/general_close3.png");
            btnClose.DisabledImage = Root.Singleton.Material("img/generalUI/general_close4.png");
            btnClose.HoverSound = Root.Singleton.Sound("audio/waves/ui/select_light1.wav");
            btnClose.OnClick += (sender) =>
            {
                Finish = true;
            };
            Util.LayoutControl(btnClose, 504, 0, 64, 64, ScreenRectangle);
            btnClose.Parent = Window;
            btnClose.Init();
        }