Example #1
0
        public KeyModule(VtmDev dev, GlobalGUIManager global) : base(dev, global)
        {
            Background = Brushes.Gray;
            //key to UI
            for (int i = 0; i < keys.Length; i++)
            {
                keys[i].Background = KeyColors[i];
                EndTimes[i]        = DateTime.Now;
                Children.Add(keys[i]);
            }
            //key click event
            for (int i = 0; i < VtmDev.TrigKeyCount; i++)
            {
                int x = i;//闭包
                keys[i].OnHalfClickEvent += () => {
                    VtmDev.TrigKeyPress(x);
                    keys[x].Background = PressedColor;
                    EndTimes[x]        = DateTime.Now.AddMilliseconds(ShowDelayMs);
                    //Active Timer
                    UITimer.Start();
                };
            }
            VtmDev.TrigKeyActive = true;

            UITimer.Interval = TimeSpan.FromMilliseconds(ShowDelayMs / 3);
            UITimer.Tick    += UpdateUI;
        }
Example #2
0
        public BlackModule(VtmDev dev, Position position, VtmDevCanvas canvas, GlobalGUIManager global) : base(dev, global)
        {
            this.global  = global;
            VtmDevCanvas = canvas;
            Children.Add(new Label()
            {
                Content = position.ToString()
            });

            this.position = position;

            //为所有此位置的模块创建menuItems
            foreach (var moduleInfo in
                     from info in ModuleList
                     where ModulePositionAttribute.GetPositionsByType(info.Item1).Contains(position)
                     select info)
            {
                //moduleInfo中所有Type都是符合position的
                MenuItem menuItem = new MenuItem()
                {
                    Header = moduleInfo.Item2
                };
                menuItem.Click += AddItem;
                menuItem.Tag    = moduleInfo.Item1;
                menuItems.Add(menuItem);
            }
        }
Example #3
0
        public VtmModuleBase(VtmDev dev, GlobalGUIManager global)
        {
            //IsHitTestVisible = false;
            Cursor      = Cursors.Cross;
            Background  = Brushes.Green;
            ContextMenu = new ContextMenu();

            VtmDev = dev;
        }
Example #4
0
 public TemSensorModule(VtmDev dev, GlobalGUIManager global) : base(dev, global)
 {
     Children.Add(new Canvas()
     {
         Margin     = new System.Windows.Thickness(SensorPosition.X, SensorPosition.Y, 0, 0),
         Width      = 5,
         Height     = 5,
         Background = Brushes.Yellow
     });
 }
Example #5
0
 public LedModule(VtmDev dev, GlobalGUIManager global) : base(dev, global)
 {
     //LED CANVAS
     for (int i = 0; i < leds.Length; i++)
     {
         LedCanvasControls[i] = new LedCanvasControl()
         {
             Width            = 40,
             Height           = 80,
             Margin           = new Thickness(40 * i, 0, 0, 0),
             IsHitTestVisible = false
         };
         Children.Add(LedCanvasControls[i]);
     }
     Background = Brushes.White;
 }
Example #6
0
 public static IDictionary <Position, BlackModule> NewBlackModules(VtmDevCanvas canvas, GlobalGUIManager global)
 {
     return(new Dictionary <Position, BlackModule> {
         { Position.A, new BlackModule(null, Position.A, canvas, global) },
         { Position.B, new BlackModule(null, Position.B, canvas, global) },
         { Position.C, new BlackModule(null, Position.C, canvas, global) },
         { Position.D, new BlackModule(null, Position.D, canvas, global) }
     });
 }
Example #7
0
 public EnvModuleBase(VtmDev dev, GlobalGUIManager global) : base(dev, global)
 {
     EnviromentCanvas.EnvSetableList.Add(this);
     rootcvs = global.rootcvs;
 }
Example #8
0
 public BpwsnModule(VtmDev dev, GlobalGUIManager global) : base(dev, global)
 {
     Background = Brushes.Gray;
     signal     = new WirelessSignal(global.rootcvs, dev.WirelessPackageDevice, 20, 20);
     Children.Add(signal);
 }